Khufu is a 64-bit block cipher created by Ralph Merkle in 1990. Khufu was designed to meet what Merkle felt were design challenges experienced by DES.

The 64-bit plaintext is split into two 32-bit halves (we will call it "half one" (H1) and "half two" (H2) ).

H1 and H2 are XOR'd with a portion of the key. Then, the text goes through multiple rounds of encryption.
In each round, The least significant byte of H1 is used as an input to an S-Box. Each S-Box has 8 input bits and 32 output bits. The selected 32 bit S-box entry is then XOR'd with H2.
Next, H1 is rotated some multiple of 8 bits and H1 and H2 swap positions, ending the round.
After all the rounds are completed, H1 and H2 get XOR'd with another portion of the key.

When encrypting using 8 rounds, Khufu is susceptible to a chosen-plaintext attack. There is also a differential analysis attack on 16 round khufu which recovers the key after 2^31 chosen-plaintexts.


Khufu was also the second King/Pharaoh of the fourth dynasty of Egypt in 26 B.C.. Khufu was responsible for building the Great Pyramid at Giza. At its time, It was the largest structure in the world.