ABOUT & REFERENCE

About HIGHT

HIGHT is an acronym for HIGh security and light weigHT encryption algorithm. It's designed for low-resource devices and offers strong security with its 64-bit block size and 128-bit keys.

The algorithm's core components include round functions, key schedule, encryption, and decryption processes.

Round Functions

HIGHT utilizes two round functions: F0 and F1. Both involve circular shifts and XOR operations on 8-bit values.

Key Schedule

HIGHT generates 128 subkeys and a whitening key, all derived from the 128-bit master key using a dedicated key scheduling algorithm.

Encryption

Whitening enhances the cipher's diffusion and confusion properties, increasing its resistance to attacks. The plaintext undergoes 32 rounds, utilizing four subkeys and round functions in each.

Decryption

Decryption reverses the encryption process to recover the original plaintext. All key generation and round functions remain the same.

Modes of Operation

HIGHT supports two modes of operation:

Electronic Codebook (ECB)

The plaintext is divided into 64-bit blocks, each encrypted independently with the same key. The resulting ciphertext blocks are then concatenated.

OneAndZeroes Padding is used to ensure block size consistency.

Cipher Block Chaining (CBC)

Similar to ECB, plaintext is divided into 64-bit blocks. However, each block is XORed with the previous ciphertext block before encryption, creating a chain of dependencies.

An Initialization Vector (IV) is used to start the chain. This website uses 00 00 00 00 00 00 00 00 as the default IV.

OneAndZeroes Padding is also used with CBC.

Reference