extension NSString {
? ? func md532BitLower() -> String? {
? ? ? ? let cStr = utf8CString
? ? ? ? let result = [UInt8](repeating: 0, count: 16)
? ? ? ? let num = Int(truncating: strlen(cStr))
? ? ? ? CC_MD5(cStr, num, result)
? ? ? ? return String(format: "%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", result[0], result[1], result[2], result[3], result[4], result[5], result[6], result[7], result[8], result[9], result[10], result[11], result[12], result[13], result[14], result[15]).lowercased()
? ? }
? ? func md532BitUpper() -> String? {
? ? ? ? let cStr = utf8CString
? ? ? ? let result = [UInt8](repeating: 0, count: 16)
? ? ? ? let num = Int(truncating: strlen(cStr))
? ? ? ? CC_MD5(cStr, num, result)
? ? ? ? return String(format: "%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", result[0], result[1], result[2], result[3], result[4], result[5], result[6], result[7], result[8], result[9], result[10], result[11], result[12], result[13], result[14], result[15]).uppercased()
}