A new very fast stream cipher: TPy
Eli Biham, Jennifer Seberry · Artificial Intelligence and Symbolic Computation · 2008
Py (pronounced Roo, a shorthand for Kangaroo), Pypy, and Py6 are new secure stream ciphers, which were designed especially for the eSTREAM project. They are based on a new kind of primitive, which we call Rolling Arrays. They also use various other ideas from many types of ciphers, including variable rotations and permutations. In some sense, this design is a kind of a new type of rotor machine, which is specially designed with operations that are very efficient in software. The stream size permitted is 264 bytes in each stream (or 240 in the smaller version Py6). The security claims of the cipher are that no key recovery attacks can be performed with complexity smaller than that of exhaustive search, and distinguishing attacks are also impractical with a similar complexity. The speed of the cipher is impressively fast, as it is more than 2.5 times faster than RC4 on a Pentium III (with less than 2.9 cycles/byte when implemented with the API of NESSIE and tested with the NESSIE software). Recently, equivalent IV's were found for all members of this family, where, once found, attackers could recover some key dependent data. In this paper we tweak the mistake in the design of the IV setup of Py, Pypy, and Py6, so that equivalent IVs do not exist. The names of the Tweaked variants are pretended with T to denote that they are the tweaked variants - TPy6 is the tweaked Py, TPypy is the tweaked Pypy, and TPy6 is tweaked Py6 (pronounced TRoo, TRoopy, and TRoo6). These ciphers are no longer eSTREAM candidates due to being eliminated by a technicality. Key setup and encryption speeds of the tweaked variants are unchanged compared to the originals, as no change is made in the key setup and stream generation. The tweaked IV setup may be very slightly slower than the original, but the modification is very small. As a result, the tweaked versions, TPy and TPy6 are faster than the fastest eSTREAM candidates, and the TPypy supplies an even higher level of security with speed similar to the fastest unbroken eSTREAM candidate, but with a much faster key and IV setups.