HKDF is an HMAC based key derivation function that transforms any weak key material into cryptographically strong key material. It can be used, for example, to convert a session key derived in a secure remote password authentication into key material suitable for use in encryption, integrity checking or authentication.
// Input Key Material (ikm): weak input key material.
let ikm = Data(bytes: try! Random.generate(byteCount: 16))
// Output Key Material (okm): strong key material.
let okm = deriveKey(algorithm: .sha256, seed: ikm, count: 32)
More information can be found in the documentation.
Swift 4 is required with version 3 of this package. Use version 2 if you need Swift 3 compatibility.
This library was written by Bouke Haarsma.