e-CryptIt Engine Xojo Plugin

TwofishCBC Class (console safe)

Twofish is a block cipher, it was one of the five Advanced Encryption Standard (AES) finalists. The Twofish algorithm has been extensively crypto-analyzed.

When Twofish is in CBC mode then the blocks are chained together with a IV vector.

The key size in Twofish can be 128,192 or 256 bits.
The block size in Twofish is 128 bits (16 bytes).

Object
   TwofishCBC

class TwofishCBC implements

IEncryptionAlgorithm

Constructors

TwofishCBCOne of two constructors for the TwofishCBC class.
TwofishCBCOne of two constructors for the TwofishCBC class.

Methods

DecryptUse this function to decrypt a block of data. Because Twofish works on blocks of 16 bytes then you get the best performance if the block size that you pass to it is dividable by 16. The class has built in cache technology so it will work if the the block size is not dividable by 16, but it will be slower.
EncryptUse this function to encrypt a block of data. Because Twofish works on blocks of 16 bytes then you get the best performance if the block size that you pass to it is dividable by 16. The class has built in cache technology so it will work if the the block size is not dividable by 8, but it will be slower.
FinishDecryptUse this function to finish decrypting after you have decrypted all of the blocks.
FinishEncryptUse this function to finish encrypting after you have encrypted all of the blocks.
PaddingBlockSizeUse this property to get the padding value that is needed for this algorithm. (Twofish will always return 16 here).

Constants

KeyTypeEncrypt = 0A constant that specifies that a Key is for encryption
KeyTypeDecrypt = 1A constant that specifies that a Key is for decryption
KeyTypeBoth = 2A constant that specifies that a Key is for either encryption or decryption

Supported Platforms:

  • macOS Intel 64 bit
  • macOS Apple Silicon
  • Windows 32 bit
  • Windows 64 bit
  • Windows ARM 64 bit
  • Linux 32 bit
  • Linux 64 bit
  • Linux ARM 32 bit
  • Linux ARM 64 bit
  • iOS