HC-128
eSTREAM Profile 1 finalist with table-based design. Uses two 512-word tables with complex update functions for high-speed software encryption. Designed by Hongjun Wu.
Properties
| Property |
Value |
| Category |
Stream Ciphers |
| Sub-category |
Stream Cipher |
| Variant |
128 |
| Security status |
Not classified |
| Complexity |
Advanced |
| Inventor |
Hongjun Wu |
| Year |
2004 |
| Origin |
🇨🇳 China |
| Source |
algorithms/stream/hc.js |
Parameters
| Parameter |
Supported values |
| Key sizes |
16 bytes (128 bits) |
| Block sizes |
1 byte (8 bits) to 65536 bytes (524288 bits) |
Capabilities
| Flag |
Value |
HAS_XY_ARRAYS |
Yes |
Security
Status: not classified — treat as unverified.
Known vulnerabilities
| Issue |
Description |
Mitigation |
| Weak Key Classes |
Theoretical weak key classes identified, though not practical |
— |
Documentation
References
Test vectors
1 vector ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 — HC-128 eSTREAM Test Vector
| Field |
Value |
key |
80000000000000000000000000000000 |
iv |
00000000000000000000000000000000 |
input |
0000000000000000000000000000000000000000000000000000000000000000 |
expected |
378602b98f32a74847515654ae0de7ed8f72bc34776a065103e51595521ffe47 |
← All algorithms