Lightweight block cipher designed by NEC for resource-constrained environments. 64-bit block size with 80-bit or 128-bit keys using 36-round Type-2 Generalized Feistel structure. Optimized for both hardware and software implementations.
| Property | Value |
|---|---|
| Category | Block Ciphers |
| Sub-category | Lightweight Block Cipher |
| Security status | ๐งช Experimental |
| Complexity | Intermediate |
| Inventor | Tomoyasu Suzaki, Kazuhiko Minematsu, Sumio Morioka, Eita Kobayashi (NEC) |
| Year | 2012 |
| Origin | ๐ฏ๐ต Japan |
| Source | algorithms/block/twine.js |
| Parameter | Supported values |
|---|---|
| Key sizes | 10 bytes (80 bits) to 16 bytes (128 bits) in steps of 6 bytes |
| Block sizes | 8 bytes (64 bits) |
Status: ๐งช Experimental
No vulnerabilities are recorded for this implementation.
2 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 โ TWINE-80 Test Vector (Table 1, SAC 2012 Paper)
| Field | Value |
|---|---|
key |
00112233445566778899 |
input |
0123456789abcdef |
expected |
7c1f0f80b1df9c28 |
Vector 2 โ TWINE-128 Test Vector (Table 1, SAC 2012 Paper)
| Field | Value |
|---|---|
key |
00112233445566778899aabbccddeeff |
input |
0123456789abcdef |
expected |
979ff9b379b5a9b8 |