AutoIt
AutoIt
PBES1 Password-Based Encryption (PBE)
See more Encryption Examples
Demonstrates how to implement password-based encryption according to the PKCS #5 v2.0: Password-Based Cryptography Standard (published by RSA Laboratories). This example uses PBES1, which ise based on the PBKDF1 function and an underlying block cipher such as RC2, DES, etc.Chilkat AutoIt Downloads
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oCrypt = ObjCreate("Chilkat.Crypt2")
; Set properties for PBES1 encryption:
$oCrypt.CryptAlgorithm = "pbes1"
$oCrypt.PbesPassword = "mySecretPassword"
; Set the underlying PBE algorithm (and key length):
; For PBES1, the underlying algorithm must be either
; 56-bit DES or 64-bit RC2
; (this is according to the PKCS#5 specifications at
; http://www.rsa.com/rsalabs/node.asp?id=2127 )
$oCrypt.PbesAlgorithm = "rc2"
$oCrypt.KeyLength = 64
; The salt for PBKDF1 is always 8 bytes:
$oCrypt.SetEncodedSalt "0102030405060708","hex"
; A higher iteration count makes the algorithm more
; computationally expensive and therefore exhaustive
; searches (for breaking the encryption) is more difficult:
$oCrypt.IterationCount = 1024
; A hash algorithm needs to be set for PBES1:
$oCrypt.HashAlgorithm = "sha1"
; Indicate that the encrypted bytes should be returned
; as a hex string:
$oCrypt.EncodingMode = "hex"
Local $sPlainText = "To be encrypted."
Local $sEncryptedText = $oCrypt.EncryptStringENC($sPlainText)
ConsoleWrite($sEncryptedText & @CRLF)
; Now decrypt:
Local $sDecryptedText = $oCrypt.DecryptStringENC($sEncryptedText)
ConsoleWrite($sDecryptedText & @CRLF)