kim*_*pro 4 sha256 commoncrypto swift
我发现我们可以用 CommonCrypto 哈希一些字符串。我看到了一些例子,但他们不使用盐。如何将 SHA256 与盐一起使用?
Swift 4 的完整解决方案:
extension Data {
var hexString: String {
return map { String(format: "%02hhx", $0) }.joined()
}
var sha256: Data {
var digest = [UInt8](repeating: 0, count: Int(CC_SHA256_DIGEST_LENGTH))
self.withUnsafeBytes({
_ = CC_SHA256($0, CC_LONG(self.count), &digest)
})
return Data(bytes: digest)
}
}
extension String {
func sha256(salt: String) -> Data {
return (self + salt).data(using: .utf8)!.sha256
}
}
Run Code Online (Sandbox Code Playgroud)
例子:
let hash = "test".sha256(salt: "salt").hexString
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5500 次 |
| 最近记录: |