【发布时间】:2021-02-08 12:05:21
【问题描述】:
我正在尝试使用 Bas64 编码将字符串转换为 SHA512 MD5 哈希。我尝试了下面的代码,但它返回了错误的字符串。
func sha512Base64(string: String) -> String {
let digest = NSMutableData(length: Int(CC_SHA512_DIGEST_LENGTH))!
if let data = string.data(using: String.Encoding.utf8) {
let value = data as NSData
let uint8Pointer = UnsafeMutablePointer<UInt8>.allocate(capacity: digest.length)
CC_SHA512(value.bytes, CC_LONG(data.count), uint8Pointer)
}
return digest.base64EncodedString(options: NSData.Base64EncodingOptions([]))
}
请给我建议确切的解决方案或上述方法中的缺陷。
提前致谢。
【问题讨论】:
-
您能否提供更多详细信息,如何验证输出字符串或在哪里使用它?
-
没必要使用
NSMutableData。