Visual Basic 6.0
Visual Basic 6.0
RC2 Encryption and Decryption
See more Encryption Examples
RC2 encryption. The Chilkat encryption component supports RC2 encryption in both ECB (Electronic Cookbook) and CBC (Cipher-Block Chaining) modes. The key size may range from 8 bits to 1024 bits.Chilkat Visual Basic 6.0 Downloads
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim crypt As New ChilkatCrypt2
' Set the encryption algorithm = "rc2"
crypt.CryptAlgorithm = "rc2"
' CipherMode may be "ecb" or "cbc"
crypt.CipherMode = "cbc"
' KeyLength may range from 8 bits to 1024 bits
crypt.KeyLength = 128
' RC2 also has an effective key length property
' which can also range from 8 bits to 1024 bits:
crypt.Rc2EffectiveKeyLength = 128
' The padding scheme determines the contents of the bytes
' that are added to pad the result to a multiple of the
' encryption algorithm's block size. RC2 has a block
' size of 8 bytes, so encrypted output is always
' a multiple of 8.
crypt.PaddingScheme = 0
' EncodingMode specifies the encoding of the output for
' encryption, and the input for decryption.
' It may be "hex", "url", "base64", or "quoted-printable".
crypt.EncodingMode = "hex"
' An initialization vector is required if using CBC mode.
' ECB mode does not use an IV.
' The length of the IV is equal to the algorithm's block size.
' It is NOT equal to the length of the key.
Dim ivHex As String
ivHex = "0001020304050607"
crypt.SetEncodedIV ivHex,"hex"
' The secret key must equal the size of the key.
' For 128-bit encryption, the binary secret key is 16 bytes.
Dim keyHex As String
keyHex = "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F"
crypt.SetEncodedKey keyHex,"hex"
' Encrypt a string...
' The input string is 44 ANSI characters (i.e. 44 bytes), so
' the output should be 48 bytes (a multiple of 8).
' Because the output is a hex string, it should
' be 96 characters long (2 chars per byte).
Dim encStr As String
encStr = crypt.EncryptStringENC("The quick brown fox jumps over the lazy dog.")
Debug.Print encStr
' Now decrypt:
Dim decStr As String
decStr = crypt.DecryptStringENC(encStr)
Debug.Print decStr