Swift
Swift
PBKDF2 - Derive Key from Password
See more Encryption Examples
Demonstrates how to derive a symmetric encryption key from a password using PBKDF2.Chilkat Swift Downloads
func chilkatTest() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let crypt = CkoCrypt2()!
var pw: String? = "password"
var pwCharset: String? = "utf-8"
// Such as sha256, sha512
var hashAlg: String? = "sha256"
// 16 bytes
var saltHex: String? = "78578E5A5D63CB0668AB39B21C8637FA"
var iterationCount: Int = 100000
// Derive a 256-bit key from the password.
var outputBitLen: Int = 256
// The derived key is returned as a hex or base64 encoded string.
// (Note: The salt argument must be a string that also uses
// the same encoding.)
var enc: String? = "hex"
var hexKey: String? = crypt.pbkdf2(password: pw, charset: pwCharset, hashAlg: hashAlg, salt: saltHex, iterationCount: iterationCount, outputKeyBitLen: outputBitLen, encoding: enc)
print("\(hexKey!)")
// Sample output:
// AE96E261E32792D0FD6F0E72F8E872D046F7DB4C1FA7C83892EC73C49F461B70
}