Skipjack (cipher)
In cryptography, Skipjack is a block cipher—an algorithm for encryption—developed by the U.S. National Security Agency (NSA). Initially classified, it was originally intended for use in the controversial Clipper chip. Subsequently, the algorithm was declassified.[5]
General | |
---|---|
Designers | NSA |
First published | 1998 (declassified) |
Cipher detail | |
Key sizes | 80 bits |
Block sizes | 64 bits |
Structure | unbalanced Feistel network[1] |
Rounds | 32 |
Best public cryptanalysis | |
ECRYPT II recommendations note that, as of 2012, ciphers with a key size of 80 bits provide only "Very short-term protection against agencies".[2] NIST recommends not to use Skipjack after 2010.[3] Impossible differential cryptanalysis breaks 31 rounds (but only slightly faster than exhaustive search).[4] |
History of Skipjack
Skipjack was proposed as the encryption algorithm in a US government-sponsored scheme of key escrow, and the cipher was provided for use in the Clipper chip, implemented in tamperproof hardware. Skipjack is used only for encryption; the key escrow is achieved through the use of a separate mechanism known as the Law Enforcement Access Field (LEAF).[5]
The algorithm was initially secret, and was regarded with considerable suspicion by many for that reason. It was declassified on 24 June 1998, shortly after its basic design principle had been discovered independently by the public cryptography community.[5][6]
To ensure public confidence in the algorithm, several academic researchers from outside the government were called in to evaluate the algorithm.[7][5] The researchers found no problems with either the algorithm itself or the evaluation process. Moreover, their report gave some insight into the (classified) history and development of Skipjack:
[Skipjack] is representative of a family of encryption algorithms developed in 1980 as part of the NSA suite of "Type I" algorithms... Skipjack was designed using building blocks and techniques that date back more than forty years. Many of the techniques are related to work that was evaluated by some of the world's most accomplished and famous experts in combinatorics and abstract algebra. Skipjack's more immediate heritage dates to around 1980, and its initial design to 1987...The specific structures included in Skipjack have a long evaluation history, and the cryptographic properties of those structures had many prior years of intense study before the formal process began in 1987.[7][8]
In March 2016, NIST published a draft of its cryptographic standard which no longer certifies Skipjack for US government applications.[9][10]
Description
Skipjack uses an 80-bit key to encrypt or decrypt 64-bit data blocks. It is an unbalanced Feistel network with 32 rounds.[11] It was designed to be used in secured phones.
Cryptanalysis
Eli Biham and Adi Shamir discovered an attack against 16 of the 32 rounds within one day of declassification,[8] and (with Alex Biryukov) extended this to 31 of the 32 rounds (but with an attack only slightly faster than exhaustive search) within months using impossible differential cryptanalysis.[4]
A truncated differential attack was also published against 28 rounds of Skipjack cipher.[12]
A claimed attack against the full cipher was published in 2002,[13] but a later paper with attack designer as a co-author clarified in 2009 that no attack on the full 32 round cipher was then known.[14]
In pop culture
An algorithm named Skipjack forms part of the back-story to Dan Brown's 1998 novel Digital Fortress. In Brown's novel, Skipjack is proposed as the new public-key encryption standard, along with a back door secretly inserted by the NSA ("a few lines of cunning programming") which would have allowed them to decrypt Skipjack using a secret password and thereby "read the world's email". When details of the cipher are publicly released, programmer Greg Hale discovers and announces details of the backdoor. In real life there is evidence to suggest that the NSA has added back doors to at least one algorithm; the Dual_EC_DRBG random number algorithm may contain a backdoor accessible only to the NSA.
Additionally, in the Half-Life 2 modification Dystopia, the "encryption" program used in cyberspace apparently uses both Skipjack and Blowfish algorithms.[15]
References
- Hoang, Viet Tung; Rogaway, Phillip (2010). "On Generalized Feistel Networks". LNCS 6223. CRYPTO 2010. Lecture Notes in Computer Science. Vol. 6223. USA: Springer. pp. 613–630. doi:10.1007/978-3-642-14623-7_33. ISBN 978-3-642-14622-0.
- Yearly Report on Algorithms and Keysizes (2012), D.SPA.20 Rev. 1.0, ICT-2007-216676 ECRYPT II, 09/2012. Archived July 21, 2013, at the Wayback Machine
- Barker, Elaine; Roginsky, Allen (January 2011). "Transitions: Recommendation for Transitioning the Use of Cryptographic Algorithms and Key Lengths" (PDF). NIST.
- Biham, Eli; Shamir, Adi; Biryukov, Alex (1999). "Cryptanalysis of Skipjack reduced to 31 rounds using impossible differentials" (PDF). Eurocrypt: 12–23. Archived from the original (PDF) on June 27, 2012.
- Schneier, Bruce (July 15, 1998). "Declassifying Skipjack".
- Savard, John J. G. (1999). "Skipjack". quadibloc.
However, I have noted that the inconsistency involved may be more apparent than real. Between the statements cited, and the declassification of SKIPJACK, a paper was published by an academic researcher noting that Feistel ciphers of a particular type, specifically those in which the f-function was itself a series of Feistel rounds, could be proven to be immune to differential cryptanalysis.
- Brickell, Ernest F.; Denning, Dorothy E.; Kent, Stephen T.; Maher, David P.; Tuchman, Walter (July 28, 1993). "SKIPJACK Review Interim Report The SKIPJACK Algorithm". Archived from the original on June 8, 2011.
- Biham, Eli; Biryukov, Alex; Dunkelman, Orr; Richardson, Eran; Shamir, Adi (June 25, 1998). "Initial Observations on the SkipJack Encryption Algorithm".
- Barker, Elaine (March 2016). "NIST Special Publication 800-175B Guideline for Using Cryptographic Standards in the Federal Government: Cryptographic Mechanisms" (PDF). NIST. p. 22.
- Schneier, Bruce (April 15, 2016). "New NIST Encryption Guidelines". Retrieved April 17, 2016.
- "SKIPJACK and KEA Algorithm Specifications" (PDF). May 29, 1998.
- Knudsen, Lars; Robshaw, M.J.B.; Wagner, David (1999). "Truncated differentials and Skipjack". CRYPTO.
- Phan, Raphaël Chung-Wei (2002). "Cryptanalysis of full Skipjack block cipher" (PDF). Electronics Letters. 38 (2): 69–71. Bibcode:2002ElL....38...69P. doi:10.1049/el:20020051. Archived from the original (PDF) on September 21, 2013.
- Kim, Jongsung; Phan, Raphaël Chung-Wei (2009). "Advanced Differential-Style Cryptanalysis of the NSA's Skipjack Block Cipher" (PDF). Figshare.
an attack on the full 32-round Skipjack remains elusive until now. [Paper by the same author as the 2002 attack]
- "Dystopia Wiki".
Further reading
- "SKIPJACK and KEA Algorithm Specifications" (PDF). U.S. National Institute of Standards and Technology. May 29, 1998. Archived from the original (PDF) on June 3, 2001. Retrieved April 27, 2019.
- Granboulan, Louis (June 21, 2002). "Flaws in Differential Cryptanalysis of Skipjack". Fast Software Encryption. Lecture Notes in Computer Science. Vol. 2355 (1st ed.). Berlin: Springer. pp. 328–335. doi:10.1007/3-540-45473-x_27. ISBN 978-3-540-43869-4.
- Phan, Raphaël Chung-Wei (January 7, 2002). "Cryptanalysis of full Skipjack block cipher". Electronics Letters. 38 (2): 69–71. Bibcode:2002ElL....38...69P. doi:10.1049/el:20020051.