Sample code for 30+ languages & platforms
Xojo Plugin

PBKDF2 Key Derivation

Demonstrates AES secret key derivation from a password using PBDKF2.

Chilkat Xojo Plugin Downloads

Xojo Plugin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

Dim crypt As New Chilkat.Crypt2

Dim password As String
password = "correcthorsebatterystaple"

// Derive from the utf-8 byte representation of the password.
Dim charset As String
charset = "utf-8"

Dim hashAlg As String
hashAlg = "sha256"

crypt.EncodingMode = "hex"
Dim saltHex As String
saltHex = crypt.GenRandomBytesENC(16)

Dim iterationCount As Int32
iterationCount = 310000

// Derive a 256-bit key from the password.
Dim outputBitLen As Int32
outputBitLen = 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.)
Dim enc As String
enc = "hex"

Dim hexKey As String
hexKey = crypt.Pbkdf2(password,charset,hashAlg,saltHex,iterationCount,outputBitLen,enc)

System.DebugLog(hexKey)

// Sample output:
// 597734C894FF89CFD3B93D925462C24E97724BCB118F6FC919007F5ABC27E768