Hasty Pudding Cipher

From Wikipedia, the free encyclopedia

The Hasty Pudding Cipher (abbreviated HPC) is a variable-block-size block cipher which was an unsuccessful candidate in the competition for selecting the U.S. Advanced Encryption Standard. It was designed by Richard Schroeppel and has a number of unusual characteristics for a block cipher:

  • Its block size is completely variable, from 1 bit up to arbitrary size. It can even encrypt objects whose size in bits is non-integral. For example, it can encrypt an integer range like 0-100, which is about 6.6 bits.
  • Its key length is also variable (but it must be a whole number of bits)
  • The encryption operation can include an additional input parameter called a "spice" that (along with the key) selects the permutation computed by the cipher. Changing spices is a lower overhead operation than changing keys, so the availability of the spice makes some interesting unconventional modes of operation possible. The notion of the spice was later formalized (with slightly stronger properties) in the definition of "tweakable" block ciphers by Liskov, Rivest, and Wagner (what HPC called a spice is now generally called a "tweak"). See the block cipher article for some more about tweakable ciphers.

[edit] References


Block ciphers
v  d  e
Algorithms: 3-Way | AES | Akelarre | Anubis | BaseKing | Blowfish | C2 | Camellia | CAST-128 | CAST-256 | Cobra | CMEA | Crab | CS-Cipher | DEAL | DES | DES-X | DFC | FEAL | FROG | G-DES | GOST | Grand Cru | Hasty Pudding Cipher | ICE | IDEA | IDEA NXT | Iraqi | KASUMI | KHAZAD | Khufu and Khafre | Libelle | LOKI89/91 | LOKI97 | Lucifer | MacGuffin | Madryga | MAGENTA | MARS | Mercy | MESH | MISTY1 | MMB | MULTI2 | NewDES | NOEKEON | NUSH | Q | RC2 | RC5 | RC6 | REDOC | Red Pike | S-1 | SAFER | SC2000 | SEED | Serpent | SHACAL | SHARK | Skipjack | SMS4 | Square | TEA | Triple DES | Twofish | XTEA
Design: Feistel network | Key schedule | Product cipher | S-box | SPN   Attacks: Brute force | Linear / Differential / Integral cryptanalysis | Mod n | Related-key | Slide | XSL
Standardization: AES process | CRYPTREC | NESSIE   Misc: Avalanche effect | Block size | IV | Key size | Modes of operation | Piling-up lemma | Weak key
Cryptography
v  d  e
History of cryptography | Cryptanalysis | Cryptography portal | Topics in cryptography
Symmetric-key algorithm | Block cipher | Stream cipher | Public-key cryptography | Cryptographic hash function | Message authentication code | Random numbers