Tweaked-IV-setup variant of Py by Biham and Seberry (2007), fixing the equivalent-IV weakness of the original Py while keeping its key setup and round function unchanged. As implemented in the DarkCrypt Total Commander plugin, which hardcodes a 512-bit key and 512-bit IV.
| Property | Value |
|---|---|
| Category | Stream Ciphers |
| Sub-category | Rolling-Array Stream Cipher |
| Security status | Not classified |
| Complexity | Advanced |
| Inventor | Eli Biham, Jennifer Seberry |
| Year | 2007 |
| Origin | 🇮🇱 Israel |
| Source | algorithms/stream/darkcrypt-tpy.js |
| Parameter | Supported values |
|---|---|
| Key sizes | 64 bytes (512 bits) |
| Nonce sizes | 64 bytes (512 bits) |
Status: not classified — treat as unverified.
| Issue | Description | Mitigation |
|---|---|---|
| Distinguishing attacks | Crowley and Paul/Preneel/Sekar published distinguishing attacks on TPy independent of the key schedule fix. | Use a vetted modern cipher. |
1 vector ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 — DarkCrypt TPy keystream
| Field | Value |
|---|---|
iv |
00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 |
key |
000102030405060708090a0b0c0d0e0f 101112131415161718191a1b1c1d1e1f 202122232425262728292a2b2c2d2e2f 303132333435363738393a3b3c3d3e3f |
input |
00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 |
expected |
9757dfc4e1f7caf9c04013c7269f05a5 5886a19930dd0cd81ca74a2f6eea4ec2 dffb3ed25d10deb24387a064e90b6aeb 5e95f9017273d9653fa9cc28a72f08e7 83f2647815bccad5caa41423f79cfdec 6c1f8f7461dc21b01c80d8152a6d09b6 5fd1f0ed2f942987dab01aacee09124f 5593ecebdce0d166eb8d33d19ac9c09c |