NSAβs lightweight ARX (Addition-Rotation-XOR) cipher designed for software efficiency. Speck64/128 variant uses 64-bit blocks with 128-bit keys and 27 rounds. Companion to Simon cipher.
| Property | Value |
|---|---|
| Category | Block Ciphers |
| Sub-category | Block Cipher |
| Security status | π Educational Only |
| Complexity | Not specified |
| Inventor | NSA (National Security Agency) |
| Year | 2013 |
| Origin | πΊπΈ United States |
| Source | algorithms/block/speck.js |
| Parameter | Supported values |
|---|---|
| Key sizes | 16 bytes (128 bits) |
| Block sizes | 8 bytes (64 bits) |
Status: π Educational Only
| Issue | Description | Mitigation |
|---|---|---|
| Reduced-round attacks | Various attacks exist against reduced-round variants (not full 27 rounds) | Use full-round implementation and consider alternatives for high-security applications |
4 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Speck64/128 - Simon and Speck paper Appendix C (byte-serialised)
| Field | Value |
|---|---|
key |
0001020308090a0b1011121318191a1b |
input |
2d4375747465723b |
expected |
8b024e4548a56f8c |
Vector 2 β Speck64/128 - Crypto++ TestVectors #2
| Field | Value |
|---|---|
key |
64b76fa61ce980ab2f71098d75d66e5f |
input |
1589a8bbff4c7a85 |
expected |
2f1d122370946bda |
Vector 3 β Speck64/128 - Crypto++ TestVectors #3
| Field | Value |
|---|---|
key |
5524abb77240eb5c4554fad4ab730ddf |
input |
f85fa0721a3c9ad6 |
expected |
2a740170155b33ee |
Vector 4 β Speck64/128 - Crypto++ TestVectors #4
| Field | Value |
|---|---|
key |
922bf30e46f8cd8cb624d0bcff7ae7a2 |
input |
35b7e6e160815a52 |
expected |
f1761c9cbe6621e9 |