关于这个主题,stackoverflow上有一些线程,但是我无法让它工作。所以我希望你能帮助我:
我创建了一个名为Crypto.h的头文件,它只包含这一行:
#import <CommonCrypto/CommonCrypto.h>
此外,我有一个名为StringExtension.swift的文件,它包含以下代码:
import Foundation
extension String {
func sha256() -> String {
let data = self.dataUsingEncoding(NSUTF8StringEncoding)!
var digest = [UInt8](count:Int(CC_SHA256_DIGEST_LENGTH), repeatedValue: 0)
CC_SHA256(data.bytes, CC_LONG(data.length), &digest)
let hexBytes = digest.map { String(format: "%02hhx", $0) }
return hexBytes.joinWithSeparator("")
}
}
我从这里得到了代码:How to crypt string to sha1 with Swift? 我在另一个网站上发现,如果你想使用sha256,我可以用sha256替换sha1。
但我这样的错误: 使用未解析的标识符&#39; CC_SHA256_DIGEST_LENGTH&#39;
我做错了什么?