- HC-256
HC-256 is a
stream cipher designed to providebulk encryption insoftware at high speeds while permitting strong confidence in its security. Designed byHongjun Wu , it is aneSTREAM cipher candidate and has been selected as a Profile 1, Phase 3 Focus candidate. It is not patented.Function
HC-256 has a 256 bit key and an
initialization vector of 256 bits.Internally, it consists of two secret tables (P and Q). Each table contains 1024 32-bit words. For each state update one 32-bit word in each table is updated using a non-linear update function. After 2048 steps all elements of the tables have been updated.
It generates one 32-bit word for each update step using a 32-bit to 32-bit mapping function similar to the output function of the Blowfish cipher. Finally a linear bit-masking function is applied to generate an output word. It uses the two message schedule functions in the
hash function SHA-256 internally, but with the tables P and Q asS-box es.Performance
The performance of HC-256 is estimated by its author to be about 4 cycles/byte on a
Pentium 4 processor. However the initialization phase of the cipher includes expanding the 256-bit key into the tables P, Q and then running the cipher for 4096 steps. The author of HC-256 estimates this process to take around 74,000 cycles.External links
* [http://www.ecrypt.eu.org/stream/hc256.html eSTREAM page on HC-256]
Wikimedia Foundation. 2010.