Hawkynt

Turing (DarkCrypt)

Turing stream cipher (Rose and Hawkes, Qualcomm), 256-bit key / 128-bit IV variant. LFSR + keyed S-box mixing, algorithm matches the published reference exactly; DarkCrypt build reads key/IV words little-endian but emits round output big-endian.

Properties

Property Value
Category Stream Ciphers
Sub-category Stream Cipher
Security status 🎓 Educational Only
Complexity Advanced
Inventor Gregory G. Rose, Philip Hawkes (Qualcomm); DarkCrypt build by Alexander Myasnikov
Year 2003
Origin 🇦🇺 Australia
Source algorithms/stream/darkcrypt-turing.js

Parameters

Parameter Supported values
Key sizes 32 bytes (256 bits)
Nonce sizes 16 bytes (128 bits)

Security

Status: 🎓 Educational Only

Known vulnerabilities

Issue Description Mitigation
Guess-and-determine attacks Published cryptanalysis identified weaknesses in the key/IV setup; not recommended for new designs. Use a modern vetted stream cipher such as ChaCha20.

Documentation

References

Test vectors

2 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.

Vector 1 — DarkCrypt Turing — incrementing key, zero IV, 128-byte zero keystream

Field Value
key 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
iv 00000000000000000000000000000000
input 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000
expected 4d7493826d9fcab9f64219393d36668a d588f7903198a26d1a0a4f5cad0c372a 5321107cfb703201800ca37ae5124dde f478511972ef7a6580d57f43b4d18b5b 5c728162844f8e8919635f9f8a132516 58d92f3d0712b1d883fff75ee78e10a2 691bc5fd2be82d9f91d8f442fae56deb 9367fa1fa057decc0da0357b7b44d04e

Vector 2 — DarkCrypt Turing — incrementing key/plaintext, zero IV

Field Value
key 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
iv 00000000000000000000000000000000
input 000102030405060708090a0b0c0d0e0f 101112131415161718191a1b1c1d1e1f 202122232425262728292a2b2c2d2e2f 303132333435363738393a3b3c3d3e3f
expected 4d759181699accbefe4b1332313b6885 c599e583258db47a02135547b1112935 7300325fdf551426a8258951c93f63f1 c449632a46da4c52b8ec457888ecb564

← All algorithms