GoldenKey
Swift 封装 CommonCrypto 和 Security 框架
Common Digest
支持算法:MD2、MD4、MD5、SHA1、SHA224、SHA256、SHA384、SHA512。
流哈希器。
let sha = SHA256()
sha.combine(Data("12".utf8))
sha.combine(Data("3".utf8))
let hash = sha.finalize()
一次性。
let hash2 = SHA256.hash(Data("123".utf8))
HMAC
基于哈希的消息认证码
流哈希器。
let key = Data("secret_key".utf8)
let hmac = HMAC(algorithm: .md5, key: key)
hmac.combine(Data("ab".utf8))
hmac.combine(Data("cd".utf8))
let hash = hmac.finalize()
一次性。
let key = Data("secret_key".utf8)
let data = Data("abcd".utf8)
let hash = HMAC.hash(algorithm: .sha224, data: data, key: key)
开发环境搭建
$ mkdir gyb
$ cd gyb
$ wget https://github.com/apple/swift/raw/master/utils/gyb
$ wget https://github.com/apple/swift/raw/master/utils/gyb.py
$ chmod +x gyb