(PureBasic) WPA Key Calculation from PassPhrase to Hex
Demonstrates how to calculate a WPA key from a passprhase and network SSID.
IncludeFile "CkCrypt2.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
crypt.i = CkCrypt2::ckCreate()
If crypt.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
wpaHexKey.s
; The "ps" is the WPA passphrase
pw.s = "password"
pwCharset.s = "ansi"
; Hash algorithms may be: sha1, md2, md5, etc.
hashAlg.s = "sha1"
; Specify the SSID in hex:
; For example, if the SSID is "ABC", then the
; hex values for these us-ascii chars is "414243"
ssidHex.s = "414243"
; The WPA key calculation will always use 4096 iterations.
iterationCount.i = 4096
; The WPA hex output should be 256 bits.
outputBitLen.i = 256
; Indicate that "hex" is to be returned.
enc.s = "hex"
wpaHexKey = CkCrypt2::ckPbkdf2(crypt,pw,pwCharset,hashAlg,ssidHex,iterationCount,outputBitLen,enc)
Debug wpaHexKey
CkCrypt2::ckDispose(crypt)
ProcedureReturn
EndProcedure
|