e-CryptIt Engine Xojo Plugin |

# TwofishCFB1 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 CFB1 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
TwofishCFB1

class TwofishCFB1 implements

IEncryptionAlgorithm

#### Constructors

TwofishCFB1 (console safe) | One of two TwofishCFB1 constructors.
TwofishCFB1 (console safe) | One of two TwofishCFB1 constructors.

#### Methods

Decrypt (console safe) | Use 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.
Encrypt (console safe) | Use 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.
FinishDecrypt (console safe) | Use this function to finish decrypting after you have decrypted all of the blocks.
FinishEncrypt (console safe) | Use this function to finish encrypting after you have encrypted all of the blocks.
PaddingBlockSize (console safe) | Use this property to get the padding value that is needed for this algorithm. (Twofish will always return 16 here).

#### Constants

KeyTypeEncrypt = 0 | A constant that specifies that a Key is for encryption
KeyTypeDecrypt = 1 | A constant that specifies that a Key is for decryption
KeyTypeBoth = 2 | A 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