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()
}