MultiSwap
In cryptography, MultiSwap is a block cipher/MAC created by Microsoft in 1999 as part of its Windows Media DRM service (WMDRM). Microsoft's internal name for the algorithm is not publicly known; it was dubbed MultiSwap in a 2001 report on WMDRM under the pseudonym "Beale Screamer".
General | |
---|---|
Designers | Microsoft |
First published | April 1999 |
Cipher detail | |
Key sizes | 374 bits |
Block sizes | 64 bits |
Best public cryptanalysis | |
The differential cryptanalysis of Borisov, et al. requires about 213 chosen plaintexts or about 222 known plaintexts |
The cipher has a block size of 64 bits, but the two halves are processed nearly separately. All arithmetic operations are performed mod 232. In the encryption process, each half block has added to it the output of the previous half block. Next it undergoes 5 multiplications by odd 32-bit subkeys, each followed by a swap of its 16-bit halves. Then a final subkey is added to it. As the half blocks use separate subkeys, and the multipliers are forced to be odd, the total key size is 374 bits. The name MultiSwap comes from the cipher's multiplications and swaps. WMDRM uses this algorithm only as a MAC, never for encryption.
Borisov, et al. applied a multiplicative form of differential cryptanalysis to break MultiSwap.
References
- Beale Screamer (18 October 2001). "Microsoft's Digital Rights Management Scheme – Technical Details". Retrieved 20 September 2007.
- Nikita Borisov, Monica Chew, Rob Johnson, David Wagner. "Cryptanalysis of MultiSwap". Retrieved 9 October 2010.CS1 maint: multiple names: authors list (link)
- Borisov, Chew, Johnson, Wagner (February 2002). Multiplicative Differentials (PDF/PostScript). 9th International Workshop on Fast Software Encryption (FSE '02). Leuven: Springer-Verlag. pp. 17–33. Retrieved 3 January 2007.CS1 maint: multiple names: authors list (link)