Jump to content

Cryptanalysis: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
 
(218 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{Short description|Study of analyzing information systems in order to discover their hidden aspects}}
[[Image:FIALKA-rotors-in-machine.jpg|thumb|Close-up of the rotors in a [[Fialka]] cipher machine]]
[[File:Cyklometr.jpg|thumb|upright=1.5|Reconstruction of the appearance of [[cyclometer]], a device used to break the encryption of the [[Enigma machine]]. Based on sketches in [[Marian Rejewski]]'s memoirs]]

'''Cryptanalysis''' (from the [[Greek language|Greek]] ''kryptós'', "hidden", and ''analýein'', "to loosen" or "to untie") is the study of analyzing [[information system]]s in order to study the hidden aspects of the systems.<ref>{{cite web|url=http://www.nsa.gov/careers/career_fields/cryptsiganalysis.shtml |title=Cryptanalysis/Signals Analysis |publisher=Nsa.gov |date=2009-01-15 |accessdate=2013-04-15}}</ref> Cryptanalysis is used to breach [[cryptographic]] security systems and gain access to the contents of encrypted messages, even if the [[key (cryptography)|cryptographic key]] is unknown.
'''Cryptanalysis''' (from the [[Greek language|Greek]] ''kryptós'', "hidden", and ''analýein'', "to analyze") refers to the process of analyzing [[information system]]s in order to understand hidden aspects of the systems.<ref>{{cite web|url=http://www.nsa.gov/careers/career_fields/cryptsiganalysis.shtml |title=Cryptanalysis/Signals Analysis |publisher=Nsa.gov |date=2009-01-15 |access-date=2013-04-15}}</ref> Cryptanalysis is used to breach [[Cryptography|cryptographic]] security systems and gain access to the contents of [[Encryption|encrypted]] messages, even if the [[key (cryptography)|cryptographic key]] is unknown.


In addition to mathematical analysis of cryptographic algorithms, cryptanalysis includes the study of [[side-channel attacks]] that do not target weaknesses in the cryptographic algorithms themselves, but instead exploit weaknesses in their implementation.
In addition to mathematical analysis of cryptographic algorithms, cryptanalysis includes the study of [[side-channel attacks]] that do not target weaknesses in the cryptographic algorithms themselves, but instead exploit weaknesses in their implementation.


Even though the goal has been the same, the methods and techniques of cryptanalysis have changed drastically through the history of cryptography, adapting to increasing cryptographic complexity, ranging from the pen-and-paper methods of the past, through machines like the British [[Bombe]]s and [[Colossus computer]]s at [[Bletchley Park]] in [[World War II]], to the mathematically advanced computerized schemes of the present. Methods for breaking modern [[cryptosystem]]s often involve solving carefully constructed problems in [[pure mathematics]], the best-known being [[integer factorization]].
Even though the goal has been the same, the methods and techniques of cryptanalysis have changed drastically through the history of cryptography, adapting to increasing cryptographic complexity, ranging from the pen-and-paper methods of the past, through machines like the British [[Bombe]]s and [[Colossus computer]]s at [[Bletchley Park]] in [[World War II]], to the [[Mathematics|mathematically]] advanced computerized schemes of the present. Methods for breaking modern [[cryptosystem]]s often involve solving carefully constructed problems in [[pure mathematics]], the best-known being [[integer factorization]].


==Overview==
==Overview==
In [[encryption]], confidential information (called the ''"[[plaintext]]"'') is sent securely to a recipient by the sender first converting it into an unreadable form (''"[[ciphertext]]"'') using an [[encryption algorithm]]. The ciphertext is sent through an insecure channel to the recipient. The recipient [[decryption|decrypts]] the ciphertext by applying an inverse [[decryption|decryption algorithm]], recovering the plaintext. To decrypt the ciphertext, the recipient requires a secret knowledge from the sender, usually a string of letters, numbers, or [[binary digit|bits]], called a ''[[cryptographic key]]''. The concept is that even if an unauthorized person gets access to the ciphertext during transmission, without the secret key they cannot convert it back to plaintext.
Given some encrypted data (''[[Ciphertext|"ciphertext"]]''), the goal of the ''cryptanalyst'' is to gain as much information as possible about the original, unencrypted data (''[[Plaintext|"plaintext"]]'').

Encryption has been used throughout history to send important military, diplomatic and commercial messages, and today is very widely used in [[computer networking]] to protect email and internet communication.

The goal of cryptanalysis is for a third party, a [[cryptanalyst]], to gain as much information as possible about the original (''"[[plaintext]]"''), attempting to "break" the encryption to read the ciphertext and learning the secret key so future messages can be decrypted and read.<ref>{{Cite book|last=Dooley|first=John F.|title=History of Cryptography and Cryptanalysis: Codes, Ciphers, and Their Algorithms|date=2018|publisher=Springer International Publishing|isbn=978-3-319-90442-9|series=History of Computing|location=Cham|doi=10.1007/978-3-319-90443-6|s2cid=18050046}}</ref> A mathematical technique to do this is called a ''cryptographic attack''. Cryptographic attacks can be characterized in a number of ways:


===Amount of information available to the attacker===
===Amount of information available to the attacker===
{{main|Attack model}}
Attacks can be classified based on what type of information the attacker has available. As a basic starting point it is normally assumed that, for the purposes of analysis, the general [[algorithm]] is known; this is [[Claude Shannon|Shannon's Maxim]] "the enemy knows the system"—in its turn, equivalent to [[Kerckhoffs' principle]]. This is a reasonable assumption in practice — throughout history, there are countless examples of secret algorithms falling into wider knowledge, variously through [[espionage]], [[betrayal]] and [[reverse engineering]]. (And on occasion, ciphers have been reconstructed through pure deduction; for example, the German [[Lorenz cipher]] and the Japanese [[Purple code]], and a variety of classical schemes).:<ref>{{cite book|author=Schmeh, Klaus|title=Cryptography and public key infrastructure on the Internet|publisher=John Wiley & Sons|year=2003|isbn=978-0-470-84745-9|page=45|url=http://books.google.com/books?id=9NqidkUqHdgC&pg=PA45}}</ref>
[[Attack model|Cryptanalytical attacks]] can be classified based on what type of information the attacker has available. As a basic starting point it is normally assumed that, for the purposes of analysis, the general [[algorithm]] is known; this is [[Claude Shannon|Shannon's Maxim]] "the enemy knows the system"<ref>{{cite journal|last1=Shannon|first1=Claude|title=Communication Theory of Secrecy Systems|journal=Bell System Technical Journal|date=4 October 1949|volume=28|issue=4|page=662|doi=10.1002/j.1538-7305.1949.tb00928.x|url=https://archive.org/stream/bstj28-4-656#page/n5/mode/2up|access-date=20 June 2014|ref=Shannon}}</ref> – in its turn, equivalent to [[Kerckhoffs's principle]].<ref>{{citation |first = David |last = Kahn |title = The Codebreakers: the story of secret writing |year = 1996 |edition=second |publisher = Scribners |page=235}}</ref> This is a reasonable assumption in practice – throughout history, there are countless examples of secret algorithms falling into wider knowledge, variously through [[espionage]], [[betrayal]] and [[reverse engineering]]. (And on occasion, ciphers have been broken through pure deduction; for example, the German [[Lorenz cipher]] and the Japanese [[Purple code]], and a variety of classical schemes):<ref>{{cite book|author=Schmeh, Klaus|title=Cryptography and public key infrastructure on the Internet|publisher=John Wiley & Sons|year=2003|isbn=978-0-470-84745-9|page=45|url=https://books.google.com/books?id=9NqidkUqHdgC&pg=PA45}}</ref>
*''[[Ciphertext-only attack|Ciphertext-only]]'': the cryptanalyst has access only to a collection of [[ciphertext]]s or [[codetext]]s.
*''[[Known-plaintext attack|Known-plaintext]]'': the attacker has a set of ciphertexts to which he knows the corresponding [[plaintext]].
* ''[[Ciphertext-only attack|Ciphertext-only]]'': the cryptanalyst has access only to a collection of [[ciphertext]]s or [[codetext]]s.
*''[[Chosen plaintext attack|Chosen-plaintext]]'' (''[[chosen-ciphertext attack|chosen-ciphertext]]''): the attacker can obtain the ciphertexts (plaintexts) corresponding to an arbitrary set of plaintexts (ciphertexts) of his own choosing.
* ''[[Known-plaintext attack|Known-plaintext]]'': the attacker has a set of ciphertexts to which they know the corresponding [[plaintext]].
* ''[[Chosen plaintext attack|Chosen-plaintext]]'' (''[[chosen-ciphertext attack|chosen-ciphertext]]''): the attacker can obtain the ciphertexts (plaintexts) corresponding to an arbitrary set of plaintexts (ciphertexts) of their own choosing.
*''[[Adaptive chosen plaintext attack|Adaptive chosen-plaintext]]'': like a chosen-plaintext attack, except the attacker can choose subsequent plaintexts based on information learned from previous encryptions. Similarly ''[[Adaptive chosen ciphertext attack]]''.
* ''[[Adaptive chosen plaintext attack|Adaptive chosen-plaintext]]'': like a chosen-plaintext attack, except the attacker can choose subsequent plaintexts based on information learned from previous encryptions, similarly to the ''[[Adaptive chosen ciphertext attack]]''.
*''[[Related-key attack]]'': Like a chosen-plaintext attack, except the attacker can obtain ciphertexts encrypted under two different keys. The keys are unknown, but the relationship between them is known; for example, two keys that differ in the one bit.
* ''[[Related-key attack]]'': Like a chosen-plaintext attack, except the attacker can obtain ciphertexts encrypted under two different keys. The keys are unknown, but the relationship between them is known; for example, two keys that differ in the one bit.


===Computational resources required===
===Computational resources required===
{{See also|Time/memory/data tradeoff attack}}
Attacks can also be characterised by the resources they require. Those resources include:{{Citation needed|date=April 2012}}
Attacks can also be characterised by the resources they require. Those resources include:<ref>{{Cite journal|last=Hellman|first=M.|date=July 1980|title=A cryptanalytic time-memory trade-off|journal=IEEE Transactions on Information Theory|language=en-US|volume=26|issue=4|pages=401–406|doi=10.1109/tit.1980.1056220|s2cid=552536 |issn=0018-9448|url=http://www-ee.stanford.edu/~hellman/publications/36.pdf |archive-url=https://ghostarchive.org/archive/20221010/http://www-ee.stanford.edu/~hellman/publications/36.pdf |archive-date=2022-10-10 |url-status=live}}</ref>
*Time — the number of ''computation steps'' (e.g., test encryptions) which must be performed.
*Memory the amount of ''storage'' required to perform the attack.
* Time – the number of ''computation steps'' (e.g., test encryptions) which must be performed.
*Data the quantity and type of ''plaintexts and ciphertexts'' required for a particular approach.
* Memory – the amount of ''storage'' required to perform the attack.
* Data – the quantity and type of ''plaintexts and ciphertexts'' required for a particular approach.


It's sometimes difficult to predict these quantities precisely, especially when the attack isn't practical to actually implement for testing. But academic cryptanalysts tend to provide at least the estimated ''order of magnitude'' of their attacks' difficulty, saying, for example, "SHA-1 collisions now 2<sup>52</sup>."<ref>{{Citation | last = McDonald | first = Cameron | last2 = Hawkes | first2 = Philip | last3 = Pieprzyk | first3 = Josef | author3-link = Josef Pieprzyk | title =SHA-1 collisions now 2<sup>52</sup> | url = http://eurocrypt2009rump.cr.yp.to/837a0a8086fa6ca714249409ddfae43d.pdf | accessdate = 4 April 2012}}</ref>
It is sometimes difficult to predict these quantities precisely, especially when the attack is not practical to actually implement for testing. But academic cryptanalysts tend to provide at least the estimated ''order of magnitude'' of their attacks' difficulty, saying, for example, "SHA-1 collisions now 2<sup>52</sup>."<ref>{{Citation | last1 = McDonald | first1 = Cameron | last2 = Hawkes | first2 = Philip | last3 = Pieprzyk | first3 = Josef | author3-link = Josef Pieprzyk | title =SHA-1 collisions now 2<sup>52</sup> | url = http://eurocrypt2009rump.cr.yp.to/837a0a8086fa6ca714249409ddfae43d.pdf | access-date = 4 April 2012}}</ref>


[[Bruce Schneier]] notes that even computationally impractical attacks can be considered breaks: "Breaking a cipher simply means finding a weakness in the cipher that can be exploited with a complexity less than brute force. Never mind that brute-force might require 2<sup>128</sup> encryptions; an attack requiring 2<sup>110</sup> encryptions would be considered a break...simply put, a break can just be a certificational weakness: evidence that the cipher does not perform as advertised."<ref name="schneier"/><!-- Birthday attacks; man in the middle / time-memory tradeoff -->
[[Bruce Schneier]] notes that even computationally impractical attacks can be considered breaks: "Breaking a cipher simply means finding a weakness in the cipher that can be exploited with a complexity less than brute force. Never mind that brute-force might require 2<sup>128</sup> encryptions; an attack requiring 2<sup>110</sup> encryptions would be considered a break...simply put, a break can just be a certificational weakness: evidence that the cipher does not perform as advertised."<ref name="schneier"/><!-- Birthday attacks; man in the middle / time-memory tradeoff -->


===Partial breaks===
===Partial breaks===
The results of cryptanalysis can also vary in usefulness. For example, cryptographer [[Lars Knudsen]] (1998) classified various types of attack on [[block cipher]]s according to the amount and quality of secret information that was discovered:
The results of cryptanalysis can also vary in usefulness. Cryptographer [[Lars Knudsen]] (1998) classified various types of attack on [[block cipher]]s according to the amount and quality of secret information that was discovered:
*''Total break'' the attacker deduces the secret [[key (cryptography)|key]].
* ''Total break'' the attacker deduces the secret [[key (cryptography)|key]].
*''Global deduction'' the attacker discovers a functionally equivalent [[algorithm]] for encryption and decryption, but without learning the key.
* ''Global deduction'' the attacker discovers a functionally equivalent [[algorithm]] for encryption and decryption, but without learning the key.
*''Instance (local) deduction'' the attacker discovers additional plaintexts (or ciphertexts) not previously known.
* ''Instance (local) deduction'' the attacker discovers additional plaintexts (or ciphertexts) not previously known.
*''Information deduction'' the attacker gains some [[Information entropy|Shannon information]] about plaintexts (or ciphertexts) not previously known.
* ''Information deduction'' the attacker gains some [[Information entropy|Shannon information]] about plaintexts (or ciphertexts) not previously known.
*''Distinguishing algorithm'' the attacker can distinguish the cipher from a random [[permutation]].
* ''Distinguishing algorithm'' the attacker can distinguish the cipher from a random [[permutation]].


Academic attacks are often against weakened versions of a cryptosystem, such as a block cipher or hash function with some rounds removed. Many, but not all, attacks become exponentially more difficult to execute as rounds are added to a cryptosystem,<ref>For an example of an attack that cannot be prevented by additional rounds, see [[slide attack]].</ref> so it's possible for the full cryptosystem to be strong even though reduced-round variants are weak. Nonetheless, partial breaks that come close to breaking the original cryptosystem may mean that a full break will follow; the successful attacks on [[Data Encryption Standard|DES]], [[MD5]], and [[SHA-1]] were all preceded by attacks on weakened versions.
Academic attacks are often against weakened versions of a cryptosystem, such as a block cipher or hash function with some rounds removed. Many, but not all, attacks become exponentially more difficult to execute as rounds are added to a cryptosystem,<ref>For an example of an attack that cannot be prevented by additional rounds, see [[slide attack]].</ref> so it's possible for the full cryptosystem to be strong even though reduced-round variants are weak. Nonetheless, partial breaks that come close to breaking the original cryptosystem may mean that a full break will follow; the successful attacks on [[Data Encryption Standard|DES]], [[MD5]], and [[SHA-1]] were all preceded by attacks on weakened versions.


In academic cryptography, a ''weakness'' or a ''break'' in a scheme is usually defined quite conservatively: it might require impractical amounts of time, memory, or known plaintexts. It also might require the attacker be able to do things many real-world attackers can't: for example, the attacker may need to choose particular plaintexts to be encrypted or even to ask for plaintexts to be encrypted using several keys related to the secret key. Furthermore, it might only reveal a small amount of information, enough to prove the cryptosystem imperfect but too little to be useful to real-world attackers. Finally, an attack might only apply to a weakened version of cryptographic tools, like a reduced-round block cipher, as a step towards breaking of the full system.<ref name=schneier>{{Harvnb|Schneier|2000}}</ref>
In academic cryptography, a ''weakness'' or a ''break'' in a scheme is usually defined quite conservatively: it might require impractical amounts of time, memory, or known plaintexts. It also might require the attacker be able to do things many real-world attackers can't: for example, the attacker may need to choose particular plaintexts to be encrypted or even to ask for plaintexts to be encrypted using several keys related to the [[secret key]]. Furthermore, it might only reveal a small amount of information, enough to prove the cryptosystem imperfect but too little to be useful to real-world attackers. Finally, an attack might only apply to a weakened version of cryptographic tools, like a reduced-round block cipher, as a step towards breaking the full system.<ref name=schneier>{{Harvnb|Schneier|2000}}</ref>


==History==
==History==
{{Main|History of cryptography}}
{{Main|History of cryptography}}
[[Image:Zimmermann-telegramm-offen.jpg|thumb|right|The decrypted [[Zimmermann Telegram]].]]
Cryptanalysis has [[coevolution|coevolved]] together with cryptography, and the contest can be traced through the [[history of cryptography]]—new [[cipher]]s being designed to replace old broken designs, and new cryptanalytic techniques invented to crack the improved schemes. In practice, they are viewed as two sides of the same coin: in order to create secure cryptography, you have to design against possible cryptanalysis.{{Citation needed|date=April 2012}}

Successful cryptanalysis has undoubtedly influenced history; the ability to read the presumed-secret thoughts and plans of others can be a decisive advantage. For example, in England in 1587, [[Mary, Queen of Scots]] was tried and executed for [[treason]] as a result of her involvement in three plots to assassinate [[Elizabeth I of England]]. The plans came to light after her coded correspondence with fellow conspirators was deciphered by [[Thomas Phelippes]].


Cryptanalysis has [[coevolution|coevolved]] together with cryptography, and the contest can be traced through the [[history of cryptography]]—new [[cipher]]s being designed to replace old broken designs, and new cryptanalytic techniques invented to crack the improved schemes. In practice, they are viewed as two sides of the same coin: secure cryptography requires design against possible cryptanalysis.{{cn|date=November 2023}}
In [[World War I]], the breaking of the [[Zimmermann Telegram]] was instrumental in bringing the United States into the war. In [[World War II]], the [[Allies of World War II|Allies]] benefitted enormously from their joint success cryptanalysis of the German ciphers — including the [[Enigma machine]] and the [[Lorenz cipher]] — and Japanese ciphers, particularly [[Purple (cipher machine)|'Purple']] and [[JN-25]]. [[Ultra (cryptography)|'Ultra']] intelligence has been credited with everything between shortening the end of the European war by up to two years, to determining the eventual result. The war in the Pacific was similarly helped by [[Magic (cryptography)|'Magic']] intelligence.<ref>{{Harvnb|Smith|2000|p=4}}</ref>

Governments have long recognized the potential benefits of cryptanalysis for [[Military espionage|intelligence]], both military and diplomatic, and established dedicated organizations devoted to breaking the codes and ciphers of other nations, for example, [[GCHQ]] and the [[National Security Agency|NSA]], organizations which are still very active today. In 2004, it was reported that the United States had broken [[Iran]]ian ciphers. (It is unknown, however, whether this was pure cryptanalysis, or whether other factors were involved:<ref>{{cite news| url=http://news.bbc.co.uk/1/hi/technology/3804895.stm | work=BBC News | title=Breaking codes: An impossible task? | date=June 21, 2004}}</ref>).


===Classical ciphers===
===Classical ciphers===
Line 55: Line 55:
{{See also|Frequency analysis|Index of coincidence|Kasiski examination}}
{{See also|Frequency analysis|Index of coincidence|Kasiski examination}}


Although the actual word "''cryptanalysis''" is relatively recent (it was coined by [[William Friedman]] in 1920), methods for breaking [[code (cryptography)|codes]] and [[cipher]]s are much older. The first known recorded explanation of cryptanalysis was given by 9th-century [[Arab]]ian [[polymath]], [[Al-Kindi]] (also known as "Alkindus" in Europe), in ''A Manuscript on Deciphering Cryptographic Messages''. This treatise includes a description of the method of [[frequency analysis]] ([[Ibrahim Al-Kadi]], 1992- ref-3). [[Italy|Italian]] scholar [[Giambattista della Porta]] was author of a seminal work on cryptanalysis ''"De Furtivis Literarum Notis".''<ref>[http://www.cryptool.org/content/view/28/54/lang,english/ Crypto History ] {{wayback|url=http://www.cryptool.org/content/view/28/54/lang,english/ |date=20080828190150 }}</ref>
Although the actual word "''cryptanalysis''" is relatively recent (it was coined by [[William Friedman]] in 1920), methods for breaking [[code (cryptography)|codes]] and [[cipher]]s are much older. [[David Kahn (writer)|David Kahn]] notes in ''[[The Codebreakers]]'' that [[Arab scholars]] were the first people to systematically document cryptanalytic methods.<ref>{{cite book|last1=Kahn|first1=David|title=The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet|date=1996|publisher=Simon and Schuster|isbn=9781439103555|url=https://books.google.com/books?id=3S8rhOEmDIIC&q=david+kahn+the+codebreakers}}</ref>


The first known recorded explanation of cryptanalysis was given by [[Al-Kindi]] (c. 801–873, also known as "Alkindus" in Europe), a 9th-century Arab [[polymath]],<ref>{{Cite book|url=https://books.google.com/books?id=3xJjNG5CNdwC&dq=Al+Kindi+Arab%2F&pg=PA199|title=History of Islamic Philosophy: With View of Greek Philosophy and Early History of Islam|first=I. M. N.|last=Al-Jubouri|date=February 22, 2004|publisher=Authors On Line Ltd|isbn=9780755210114|via=Google Books}}</ref><ref>{{Cite book|url=https://books.google.com/books?id=2wS2CAAAQBAJ&dq=al+kindi+Arab%2F&pg=PA279|title=The Biographical Encyclopedia of Islamic Philosophy|first=Oliver|last=Leaman|date=July 16, 2015|publisher=Bloomsbury Publishing|isbn=9781472569455|via=Google Books}}</ref> in ''Risalah fi Istikhraj al-Mu'amma'' (''A Manuscript on Deciphering Cryptographic Messages''). This treatise contains the first description of the method of [[frequency analysis]].<ref name=Kadi>Ibrahim A. Al-Kadi (April 1992), "The origins of cryptology: The Arab contributions", ''[[Cryptologia]]'' '''16''' (2): 97–126</ref> Al-Kindi is thus regarded as the first codebreaker in history.<ref name="Sahinaslan">{{cite journal |last1=Sahinaslan |first1=Ender |last2=Sahinaslan |first2=Onder |title=Cryptographic methods and development stages used throughout history |journal=AIP Conference Proceedings |date=2 April 2019 |volume=2086 |issue=1 |pages=030033 |doi=10.1063/1.5095118 |bibcode=2019AIPC.2086c0033S |issn=0094-243X |quote=Al-Kindi is considered the first code breaker|doi-access=free }}</ref> His breakthrough work was influenced by [[Al-Khalil ibn Ahmad al-Farahidi|Al-Khalil]] (717–786), who wrote the ''Book of Cryptographic Messages'', which contains the first use of [[wikt:permutation|permutations and combinations]] to list all possible [[Arabic language|Arabic]] words with and without vowels.<ref name="LB">{{cite journal|last=Broemeling|first=Lyle D.|title=An Account of Early Statistical Inference in Arab Cryptology|journal=The American Statistician|date=1 November 2011|volume=65|issue=4|pages=255–257|doi=10.1198/tas.2011.10191|s2cid=123537702}}</ref>
[[Frequency analysis]] is the basic tool for breaking most [[classical cipher]]s. In natural languages, certain letters of the [[alphabet]] appear more frequently than others; in [[English language|English]], "[[E]]" is likely to be the most common letter in any sample of [[plaintext]]. Similarly, the [[Digraph (orthography)|digraph]] "TH" is the most likely pair of letters in English, and so on. Frequency analysis relies on a cipher failing to hide these [[statistics]]. For example, in a [[simple substitution cipher]] (where each letter is simply replaced with another), the most frequent letter in the [[ciphertext]] would be a likely candidate for "E". Frequency analysis of such a cipher is therefore relatively easy, provided that the ciphertext is long enough to give a reasonably representative count of the letters of the alphabet that it contains.<ref>{{Harvnb|Singh|1999|p=17}}</ref>

Frequency analysis is the basic tool for breaking most [[classical cipher]]s. In natural languages, certain letters of the [[alphabet]] appear more often than others; in [[English language|English]], "[[E]]" is likely to be the most common letter in any sample of [[plaintext]]. Similarly, the [[Digraph (orthography)|digraph]] "TH" is the most likely pair of letters in English, and so on. Frequency analysis relies on a cipher failing to hide these [[statistics]]. For example, in a [[simple substitution cipher]] (where each letter is simply replaced with another), the most frequent letter in the [[ciphertext]] would be a likely candidate for "E". Frequency analysis of such a cipher is therefore relatively easy, provided that the ciphertext is long enough to give a reasonably representative count of the letters of the alphabet that it contains.<ref>{{Harvnb|Singh|1999|p=17}}</ref>

Al-Kindi's invention of the frequency analysis technique for breaking monoalphabetic [[substitution cipher]]s<ref>{{cite book|url=https://books.google.com/books?id=2wS2CAAAQBAJ&q=al+kindi+Arab&pg=PA279|title=The Biographical Encyclopedia of Islamic Philosophy|first=Oliver|last=Leaman|date=16 July 2015|publisher=Bloomsbury Publishing|access-date=19 March 2018|via=Google Books|isbn=9781472569455}}</ref><ref>{{cite book|url=https://books.google.com/books?id=3xJjNG5CNdwC&q=Al+Kindi+Arab&pg=PA199|title=History of Islamic Philosophy: With View of Greek Philosophy and Early History of Islam|first=I. M. N.|last=Al-Jubouri|date=19 March 2018|publisher=Authors On Line Ltd|access-date=19 March 2018|via=Google Books|isbn=9780755210114}}</ref> was the most significant cryptanalytic advance until World War II. Al-Kindi's ''Risalah fi Istikhraj al-Mu'amma'' described the first cryptanalytic techniques, including some for [[polyalphabetic cipher]]s, cipher classification, Arabic phonetics and syntax, and most importantly, gave the first descriptions on frequency analysis.<ref>[[Simon Singh]], ''[[The Code Book]]'', pp. 14–20</ref> He also covered methods of encipherments, cryptanalysis of certain encipherments, and [[statistical analysis]] of letters and letter combinations in Arabic.<ref>{{cite web | url = http://www.muslimheritage.com/topics/default.cfm?ArticleID=372 |title= Al-Kindi, Cryptgraphy, Codebreaking and Ciphers |access-date=12 January 2007 }}</ref><ref name=Kadi/> An important contribution of [[Ibn Adlan]] (1187–1268) was on [[sample size]] for use of frequency analysis.<ref name="LB"/>

In Europe, [[Italy|Italian]] scholar [[Giambattista della Porta]] (1535–1615) was the author of a seminal work on cryptanalysis, ''[[De Furtivis Literarum Notis]]''.<ref>{{Cite web|url=http://www.cryptool.org/content/view/28/54/lang,english/|archiveurl=https://web.archive.org/web/20080828190150/http://www.cryptool.org/content/view/28/54/lang%2Cenglish/|url-status=dead|title=Crypto History|archivedate=August 28, 2008}}</ref>

Successful cryptanalysis has undoubtedly influenced history; the ability to read the presumed-secret thoughts and plans of others can be a decisive advantage. For example, in England in 1587, [[Mary, Queen of Scots]] was tried and executed for [[treason]] as a result of her involvement in three plots to assassinate [[Elizabeth I of England]]. The plans came to light after her coded correspondence with fellow conspirators was deciphered by [[Thomas Phelippes]].


In Europe during the 15th and 16th centuries, the idea of a [[Polyalphabetic cipher|polyalphabetic substitution cipher]] was developed, among others by the French diplomat [[Blaise de Vigenère]] (1523–96).<ref>{{Harvnb|Singh|1999|pp=45–51}}</ref> For some three centuries, the [[Vigenère cipher]], which uses a repeating key to select different encryption alphabets in rotation, was considered to be completely secure (''le chiffre indéchiffrable''—"the indecipherable cipher"). Nevertheless, [[Charles Babbage]] (1791–1871) and later, independently, [[Friedrich Kasiski]] (1805–81) succeeded in breaking this cipher.<ref>{{Harvnb|Singh|1999|pp=63–78}}</ref> During [[World War I]], inventors in several countries developed [[rotor cipher machine]]s such as [[Arthur Scherbius]]' [[Enigma machine|Enigma]], in an attempt to minimise the repetition that had been exploited to break the Vigenère system.<ref>{{Harvnb|Singh|1999|p=116}}</ref>
In Europe during the 15th and 16th centuries, the idea of a [[Polyalphabetic cipher|polyalphabetic substitution cipher]] was developed, among others by the French diplomat [[Blaise de Vigenère]] (1523–96).<ref>{{Harvnb|Singh|1999|pp=45–51}}</ref> For some three centuries, the [[Vigenère cipher]], which uses a repeating key to select different encryption alphabets in rotation, was considered to be completely secure (''le chiffre indéchiffrable''—"the indecipherable cipher"). Nevertheless, [[Charles Babbage]] (1791–1871) and later, independently, [[Friedrich Kasiski]] (1805–81) succeeded in breaking this cipher.<ref>{{Harvnb|Singh|1999|pp=63–78}}</ref> During [[World War I]], inventors in several countries developed [[rotor cipher machine]]s such as [[Arthur Scherbius]]' [[Enigma machine|Enigma]], in an attempt to minimise the repetition that had been exploited to break the Vigenère system.<ref>{{Harvnb|Singh|1999|p=116}}</ref>
Line 63: Line 71:
===Ciphers from World War I and World War II===
===Ciphers from World War I and World War II===
{{See also|Cryptanalysis of the Enigma|Cryptanalysis of the Lorenz cipher}}
{{See also|Cryptanalysis of the Enigma|Cryptanalysis of the Lorenz cipher}}
[[Image:Zimmermann-telegramm-offen.jpg|thumb|right|The decrypted [[Zimmermann Telegram]].]]
Cryptanalysis of enemy messages played a significant part in the [[Allies of World War II|Allied]] victory in World War II. [[F. W. Winterbotham]], quoted the western Supreme Allied Commander, [[Dwight D. Eisenhower]], at the war's end as describing [[Ultra]] intelligence as having been "decisive" to Allied victory.{{sfn|Winterbotham|2000|p=229}} [[Harry Hinsley|Sir Harry Hinsley]], official historian of British Intelligence in World War II, made a similar assessment about Ultra, saying that it shortened the war "by not less than two years and probably by four years"; moreover, he said that in the absence of Ultra, it is uncertain how the war would have ended.{{sfn|Hinsley|1993}}


In [[World War I]], the breaking of the [[Zimmermann Telegram]] was instrumental in bringing the United States into the war. In [[World War II]], the [[Allies of World War II|Allies]] benefitted enormously from their joint success cryptanalysis of the German ciphers – including the [[Enigma machine]] and the [[Lorenz cipher]] – and Japanese ciphers, particularly [[Purple (cipher machine)|'Purple']] and [[JN-25]]. [[Ultra (cryptography)|'Ultra']] intelligence has been credited with everything between shortening the end of the European war by up to two years, to determining the eventual result. The war in the Pacific was similarly helped by [[Magic (cryptography)|'Magic']] intelligence.<ref>{{Harvnb|Smith|2000|p=4}}</ref>
In practice, frequency analysis relies as much on [[linguistics|linguistic]] knowledge as it does on statistics, but as ciphers became more complex, [[mathematics]] became more important in cryptanalysis. This change was particularly evident before and during [[World War II]], where efforts to crack [[Axis Powers|Axis]] ciphers required new levels of mathematical sophistication. Moreover, automation was first applied to cryptanalysis in that era with the Polish [[Bomba (cryptography)|Bomba]] device, the British [[Bombe]], the use of [[punched card]] equipment, and in the [[Colossus computers]] — the first electronic digital computers to be controlled by a program.<ref>{{Harvnb|Copeland|2006|p=1}}</ref><ref>{{Harvnb|Singh|1999|p=244}}</ref>

Cryptanalysis of enemy messages played a significant part in the [[Allies of World War II|Allied]] victory in World War II. [[F. W. Winterbotham]], quoted the western Supreme Allied Commander, [[Dwight D. Eisenhower]], at the war's end as describing [[Ultra (cryptography)|Ultra]] intelligence as having been "decisive" to Allied victory.{{sfn|Winterbotham|2000|p=229}} [[Harry Hinsley|Sir Harry Hinsley]], official historian of British Intelligence in World War II, made a similar assessment about Ultra, saying that it shortened the war "by not less than two years and probably by four years"; moreover, he said that in the absence of Ultra, it is uncertain how the war would have ended.{{sfn|Hinsley|1993}}

In practice, frequency analysis relies as much on [[linguistics|linguistic]] knowledge as it does on statistics, but as ciphers became more complex, [[mathematics]] became more important in cryptanalysis. This change was particularly evident before and during [[World War II]], where efforts to crack [[Axis Powers|Axis]] ciphers required new levels of mathematical sophistication. Moreover, automation was first applied to cryptanalysis in that era with the Polish [[Bomba (cryptography)|Bomba]] device, the British [[Bombe]], the use of [[punched card]] equipment, and in the [[Colossus computers]] – the first electronic digital computers to be controlled by a program.<ref>{{Harvnb|Copeland|2006|p=1}}</ref><ref>{{Harvnb|Singh|1999|p=244}}</ref>


====Indicator====
====Indicator====
With reciprocal machine ciphers such as the [[Lorenz cipher]] and the [[Enigma machine]] used by [[Nazi Germany]] during [[World War II]], each message had its own key. Usually, the transmitting operator informed the receiving operator of this message key by transmitting some plaintext and/or ciphertext before the enciphered message. This is termed the ''indicator'', as it indicates to the receiving operator how to set his machine to decipher the message.<ref>{{Harvnb|Churchhouse|2002|pp=33, 34}}</ref>
With reciprocal machine ciphers such as the [[Lorenz cipher]] and the [[Enigma machine]] used by [[Nazi Germany]] during [[World War II]], each message had its own key. Usually, the transmitting operator informed the receiving operator of this message key by transmitting some plaintext and/or ciphertext before the enciphered message. This is termed the ''indicator'', as it indicates to the receiving operator how to set his machine to decipher the message.<ref>{{Harvnb|Churchhouse|2002|pp=33, 34}}</ref>


Poorly designed and implemented indicator systems allowed first the [[Biuro Szyfrów|Poles]]<ref>{{Harvnb|Budiansky|2000|pp=97–99}}</ref> and then the British at [[Bletchley Park]]<ref>{{Harvnb|Calvocoressi|2001|p=66}}</ref> to break the Enigma cipher system. Similar poor indicator systems allowed the British to identify ''depths'' that led to the diagnosis of the [[Lorenz cipher|Lorenz SZ40/42]] cipher system, and the comprehensive breaking of its messages without the cryptanalysts seeing the cipher machine.<ref name="Tutte 1998">{{Harvnb|Tutte|1998}}</ref>
Poorly designed and implemented indicator systems allowed first [[Biuro Szyfrów|Polish cryptographers]]<ref>{{Harvnb|Budiansky|2000|pp=97–99}}</ref> and then the British cryptographers at [[Bletchley Park]]<ref>{{Harvnb|Calvocoressi|2001|p=66}}</ref> to break the Enigma cipher system. Similar poor indicator systems allowed the British to identify ''depths'' that led to the diagnosis of the [[Lorenz cipher|Lorenz SZ40/42]] cipher system, and the comprehensive breaking of its messages without the cryptanalysts seeing the cipher machine.<ref name="Tutte 1998">{{Harvnb|Tutte|1998}}</ref>


====Depth====
====Depth====
Sending two or more messages with the same key is an insecure process. To a cryptanalyst the messages are then said to be ''"in depth."''<ref>{{Harvnb|Churchhouse|2002|p=34}}</ref> This may be detected by the messages having the same ''[[Enigma machine#Indicator|indicator]]'' by which the sending operator informs the receiving operator about the [[Key (cryptography)|key generator initial settings]] for the message.<ref>{{Harvnb|Churchhouse|2002|pp= 33, 86}}</ref>
Sending two or more messages with the same key is an insecure process. To a cryptanalyst the messages are then said to be ''"in depth."''<ref>{{Harvnb|Churchhouse|2002|p=34}}</ref><ref>The [[Bletchley Park]] 1944 Cryptographic Dictionary defined a depth as <br /> 1. A series of code messages reciphered with the same, or the same part of a, reciphering key especially when written under one another so that all the groups (usually one in each message) that are reciphered with the same group of the subtractor lie under each other and form a 'column'.<br /> (b) two or more messages in a transposition cipher that are of the same length and have been enciphered on the same key;<br /> (c) two or more messages in a machine or similar cipher that have been enciphered on the same machine-setting or on the same key.<br />
2. be in depth : (of messages). Stand to each other in any of the relationships described above.<br />{{Citation
| title = The Bletchley Park 1944 Cryptographic Dictionary formatted by Tony Sale (c) 2001
| url = https://www.codesandciphers.org.uk/documents/cryptdict/cryptxtt.pdf |page= 27 }}</ref> This may be detected by the messages having the same ''[[Enigma machine#Indicator|indicator]]'' by which the sending operator informs the receiving operator about the [[Key (cryptography)|key generator initial settings]] for the message.<ref>{{Harvnb|Churchhouse|2002|pp= 33, 86}}</ref>


Generally, the cryptanalyst may benefit from lining up identical enciphering operations among a set of messages. For example, the [[Gilbert Vernam|Vernam cipher]] enciphers by bit-for-bit combining plaintext with a long key using the "[[exclusive or]]" operator, which is also known as "[[Modular arithmetic|modulo-2 addition]]" (symbolized by ⊕ ):
Generally, the cryptanalyst may benefit from lining up identical enciphering operations among a set of messages. For example, the [[Gilbert Vernam|Vernam cipher]] enciphers by bit-for-bit combining plaintext with a long key using the "[[exclusive or]]" operator, which is also known as "[[Modular arithmetic|modulo-2 addition]]" (symbolized by ⊕ ):
::::Plaintext ⊕ Key = Ciphertext
::::Plaintext ⊕ Key = Ciphertext
Deciphering combines the same key bits with the ciphertext to reconstruct the plaintext:
Deciphering combines the same key bits with the ciphertext to reconstruct the plaintext:
::::Ciphertext ⊕ Key = Plaintext
::::Ciphertext ⊕ Key = Plaintext
(In modulo-2 arithmetic, addition is the same as subtraction.) When two such ciphertexts are aligned in depth, combining them eliminates the common key, leaving just a combination of the two plaintexts:
(In modulo-2 arithmetic, addition is the same as subtraction.) When two such ciphertexts are aligned in depth, combining them eliminates the common key, leaving just a combination of the two plaintexts:
::::Ciphertext1 ⊕ Ciphertext2 = Plaintext1 ⊕ Plaintext2
::::Ciphertext1 ⊕ Ciphertext2 = Plaintext1 ⊕ Plaintext2
Line 85: Line 100:
The recovered fragment of the second plaintext can often be extended in one or both directions, and the extra characters can be combined with the merged plaintext stream to extend the first plaintext. Working back and forth between the two plaintexts, using the intelligibility criterion to check guesses, the analyst may recover much or all of the original plaintexts. (With only two plaintexts in depth, the analyst may not know which one corresponds to which ciphertext, but in practice this is not a large problem.) When a recovered plaintext is then combined with its ciphertext, the key is revealed:
The recovered fragment of the second plaintext can often be extended in one or both directions, and the extra characters can be combined with the merged plaintext stream to extend the first plaintext. Working back and forth between the two plaintexts, using the intelligibility criterion to check guesses, the analyst may recover much or all of the original plaintexts. (With only two plaintexts in depth, the analyst may not know which one corresponds to which ciphertext, but in practice this is not a large problem.) When a recovered plaintext is then combined with its ciphertext, the key is revealed:
::::Plaintext1 ⊕ Ciphertext1 = Key
::::Plaintext1 ⊕ Ciphertext1 = Key
Knowledge of a key of course allows the analyst to read other messages encrypted with the same key, and knowledge of a set of related keys may allow cryptanalysts to diagnose the system used for constructing them.<ref name="Tutte 1998"/>
Knowledge of a key then allows the analyst to read other messages encrypted with the same key, and knowledge of a set of related keys may allow cryptanalysts to diagnose the system used for constructing them.<ref name="Tutte 1998"/>


===Development of modern cryptography===
===Development of modern cryptography===
Governments have long recognized the potential benefits of cryptanalysis for [[Military espionage|intelligence]], both military and diplomatic, and established dedicated organizations devoted to breaking the codes and ciphers of other nations, for example, [[GCHQ]] and the [[National Security Agency|NSA]], organizations which are still very active today.

[[Image:TuringBombeBletchleyPark.jpg|thumb|The [[Bombe]] replicated the action of several [[Enigma machine]]s wired together. Each of the rapidly rotating drums, pictured above in a [[Bletchley Park]] museum mockup, simulated the action of an Enigma rotor.]]
[[Image:TuringBombeBletchleyPark.jpg|thumb|The [[Bombe]] replicated the action of several [[Enigma machine]]s wired together. Each of the rapidly rotating drums, pictured above in a [[Bletchley Park]] museum mockup, simulated the action of an Enigma rotor.]]


Even though computation was used to great effect in [[Cryptanalysis of the Lorenz cipher]] and other systems during World War II, it also made possible new methods of cryptography [[orders of magnitude]] more complex than ever before. Taken as a whole, modern cryptography has become much more impervious to cryptanalysis than the pen-and-paper systems of the past, and now seems to have the upper hand against pure cryptanalysis.{{Citation needed|date=April 2012}} The historian [[David Kahn (writer)|David Kahn]] notes:
Even though computation was used to great effect in the [[cryptanalysis of the Lorenz cipher]] and other systems during World War II, it also made possible new methods of cryptography [[orders of magnitude]] more complex than ever before. Taken as a whole, modern cryptography has become much more impervious to cryptanalysis than the pen-and-paper systems of the past, and now seems to have the upper hand against pure cryptanalysis.{{Citation needed|date=April 2012}} The historian [[David Kahn (writer)|David Kahn]] notes:<ref>[[David Kahn (writer)|David Kahn]] [https://fas.org/irp/eprint/kahn.html Remarks on the 50th Anniversary of the National Security Agency], November 1, 2002.</ref>


{{quote|Many are the cryptosystems offered by the hundreds of commercial vendors today that cannot be broken by any known methods of cryptanalysis. Indeed, in such systems even a [[Chosen-plaintext attack|chosen plaintext attack]], in which a selected plaintext is matched against its ciphertext, cannot yield the key that unlock[s] other messages. In a sense, then, cryptanalysis is dead. But that is not the end of the story. Cryptanalysis may be dead, but there is - to mix my metaphors - more than one way to skin a cat.|<ref>[[David Kahn (writer)|David Kahn]] [http://www.fas.org/irp/eprint/kahn.html Remarks on the 50th Anniversary of the National Security Agency], November 1, 2002.</ref>}}
{{blockquote|text=Many are the cryptosystems offered by the hundreds of commercial vendors today that cannot be broken by any known methods of cryptanalysis. Indeed, in such systems even a [[Chosen-plaintext attack|chosen plaintext attack]], in which a selected plaintext is matched against its ciphertext, cannot yield the key that unlock[s] other messages. In a sense, then, cryptanalysis is dead. But that is not the end of the story. Cryptanalysis may be dead, but there is to mix my metaphors more than one way to skin a cat.}}


Kahn goes on to mention increased opportunities for interception, [[bugging]], [[side channel attack]]s, and [[quantum cryptography|quantum computers]] as replacements for the traditional means of cryptanalysis. In 2010, former NSA technical director Brian Snow said that both academic and government cryptographers are "moving very slowly forward in a mature field."<ref>Tim Greene, Network World, [http://www.networkworld.com/news/2010/030410-rsa-cloud-security-warning.html Former NSA tech chief: I don't trust the cloud]. Retrieved March 14, 2010.</ref>
Kahn goes on to mention increased opportunities for interception, [[bugging]], [[side channel attack]]s, and [[quantum cryptography|quantum computers]] as replacements for the traditional means of cryptanalysis. In 2010, former NSA technical director Brian Snow said that both academic and government cryptographers are "moving very slowly forward in a mature field."<ref>Tim Greene, Network World, [http://www.networkworld.com/news/2010/030410-rsa-cloud-security-warning.html Former NSA tech chief: I don't trust the cloud] {{webarchive|url=https://web.archive.org/web/20100308105556/http://www.networkworld.com/news/2010/030410-rsa-cloud-security-warning.html |date=2010-03-08 }}. Retrieved March 14, 2010.</ref>


However, any postmortems for cryptanalysis may be premature. While the effectiveness of cryptanalytic methods employed by intelligence agencies remains unknown, many serious attacks against both academic and practical cryptographic primitives have been published in the modern era of computer cryptography:{{citation needed|date=February 2012}}
However, any postmortems for cryptanalysis may be premature. While the effectiveness of cryptanalytic methods employed by intelligence agencies remains unknown, many serious attacks against both academic and practical cryptographic primitives have been published in the modern era of computer cryptography:{{citation needed|date=February 2012}}
* The [[block cipher]] [[Madryga]], proposed in 1984 but not widely used, was found to be susceptible to [[ciphertext-only attack]]s in 1998.
* [[FEAL|FEAL-4]], proposed as a replacement for the [[Data Encryption Standard|DES]] standard encryption algorithm but not widely used, was demolished by a spate of attacks from the academic community, many of which are entirely practical.
* The [[A5/1]], [[A5/2]], [[CMEA (cipher)|CMEA]], and [[DECT Standard Cipher|DECT]] systems used in [[mobile phone|mobile]] and wireless phone technology can all be broken in hours, minutes or even in real-time using widely available computing equipment.
* [[Brute-force search|Brute-force keyspace search]] has broken some real-world ciphers and applications, including single-DES (see [[EFF DES cracker]]), [[Cryptography#Export controls|40-bit "export-strength" cryptography]], and the [[Content Scrambling System|DVD Content Scrambling System]].
* In 2001, [[Wired Equivalent Privacy]] (WEP), a protocol used to secure [[Wi-Fi]] [[wireless network]]s, was shown to be breakable in practice because of a weakness in the [[RC4]] cipher and aspects of the WEP design that made [[related-key attack]]s practical. WEP was later replaced by [[Wi-Fi Protected Access]].
* In 2008, researchers conducted a proof-of-concept break of [[Transport Layer Security|SSL]] using weaknesses in the [[MD5]] [[Cryptographic hash function|hash function]] and certificate issuer practices that made it possible to exploit [[collision attack]]s on hash functions. The certificate issuers involved changed their practices to prevent the attack from being repeated.


Thus, while the best modern ciphers may be far more resistant to cryptanalysis than the [[Enigma machine|Enigma]], cryptanalysis and the broader field of [[information security]] remain quite active.<ref>{{Cite web|url=https://www.garykessler.net/library/crypto.html|title=An Overview of Cryptography|website=www.garykessler.net|access-date=2019-06-03}}</ref>
*The [[block cipher]] [[Madryga]], proposed in 1984 but not widely used, was found to be susceptible to [[ciphertext-only attack]]s in 1998.
*[[FEAL|FEAL-4]], proposed as a replacement for the [[Data Encryption Standard|DES]] standard encryption algorithm but not widely used, was demolished by a spate of attacks from the academic community, many of which are entirely practical.
*The [[A5/1]], [[A5/2]], [[CMEA (cipher)|CMEA]], and [[DECT Standard Cipher|DECT]] systems used in [[mobile phone|mobile]] and wireless phone technology can all be broken in hours, minutes or even in real-time using widely available computing equipment.
*[[Brute-force search|Brute-force keyspace search]] has broken some real-world ciphers and applications, including single-DES (see [[EFF DES cracker]]), [[Cryptography#Export controls|40-bit "export-strength" cryptography]], and the [[Content Scrambling System|DVD Content Scrambling System]].
*In 2001, [[Wired Equivalent Privacy]] (WEP), a protocol used to secure [[Wi-Fi]] [[wireless network]]s, was shown to be breakable in practice because of a weakness in the [[RC4]] cipher and aspects of the WEP design that made [[related-key attack]]s practical. WEP was later replaced by [[Wi-Fi Protected Access]].
*In 2008, researchers conducted a proof-of-concept break of [[Transport Layer Security|SSL]] using weaknesses in the [[MD5]] [[Cryptographic hash function|hash function]] and certificate issuer practices that made it possible to exploit [[collision attack]]s on hash functions. The certificate issuers involved changed their practices to prevent the attack from being repeated.

Thus, while the best modern ciphers may be far more resistant to cryptanalysis than the [[Enigma machine|Enigma]], cryptanalysis and the broader field of [[information security]] remain quite active.{{citation needed|date=February 2012}}


==Symmetric ciphers==
==Symmetric ciphers==
*[[Boomerang attack]]
* [[Boomerang attack]]
*[[Brute force attack]]
* [[Brute-force attack]]
*[[Davies' attack]]
* [[Davies' attack]]
*[[Differential cryptanalysis]]
* [[Differential cryptanalysis]]
* [[Harvest now, decrypt later]]
*[[Impossible differential cryptanalysis]]
*[[Improbable differential cryptanalysis]]
* [[Impossible differential cryptanalysis]]
*[[Integral cryptanalysis]]
* [[Improbable differential cryptanalysis]]
*[[Linear cryptanalysis]]
* [[Integral cryptanalysis]]
* [[Linear cryptanalysis]]
*[[Meet-in-the-middle attack]]
* [[Meet-in-the-middle attack]]
*[[Mod-n cryptanalysis]]
*[[Related-key attack]]
* [[Mod-n cryptanalysis]]
*[[Sandwich attack]]
* [[Related-key attack]]
*[[Slide attack]]
* [[Sandwich attack]]
*[[XSL attack]]
* [[Slide attack]]
* [[XSL attack]]


==Asymmetric ciphers==
==Asymmetric ciphers==
[[Asymmetric cryptography]] (or [[public key cryptography]]) is cryptography that relies on using two (mathematically related) keys; one private, and one public. Such ciphers invariably rely on "hard" [[mathematical problem]]s as the basis of their security, so an obvious point of attack is to develop methods for solving the problem. The security of two-key cryptography depends on mathematical questions in a way that single-key cryptography generally does not, and conversely links cryptanalysis to wider mathematical research in a new way.{{Citation needed|date=April 2012}}
[[Asymmetric cryptography]] (or [[public-key cryptography]]) is cryptography that relies on using two (mathematically related) keys; one private, and one public. Such ciphers invariably rely on "hard" [[mathematical problem]]s as the basis of their security, so an obvious point of attack is to develop methods for solving the problem. The security of two-key cryptography depends on mathematical questions in a way that single-key cryptography generally does not, and conversely links cryptanalysis to wider mathematical research in a new way.{{cn|date=November 2023}}


Asymmetric schemes are designed around the (conjectured) difficulty of solving various mathematical problems. If an improved algorithm can be found to solve the problem, then the system is weakened. For example, the security of the [[Diffie-Hellman key exchange]] scheme depends on the difficulty of calculating the [[discrete logarithm]]. In 1983, [[Don Coppersmith]] found a faster way to find discrete logarithms (in certain groups), and thereby requiring cryptographers to use larger groups (or different types of groups). RSA's security depends (in part) upon the difficulty of [[integer factorization]] a breakthrough in factoring would impact the security of RSA.{{Citation needed|date=April 2012}}
Asymmetric schemes are designed around the (conjectured) difficulty of solving various mathematical problems. If an improved algorithm can be found to solve the problem, then the system is weakened. For example, the security of the [[Diffie–Hellman key exchange]] scheme depends on the difficulty of calculating the [[discrete logarithm]]. In 1983, [[Don Coppersmith]] found a faster way to find discrete logarithms (in certain groups), and thereby requiring cryptographers to use larger groups (or different types of groups). [[RSA (cryptosystem)|RSA]]'s security depends (in part) upon the difficulty of [[integer factorization]] a breakthrough in factoring would impact the security of RSA.<ref>https://pages.cs.wisc.edu/~cs812-1/coppersmith.pdf</ref>


In 1980, one could factor a difficult 50-digit number at an expense of 10<sup>12</sup> elementary computer operations. By 1984 the state of the art in factoring algorithms had advanced to a point where a 75-digit number could be factored in 10<sup>12</sup> operations. Advances in computing technology also meant that the operations could be performed much faster, too. [[Moore's law]] predicts that computer speeds will continue to increase. Factoring techniques may continue to do so as well, but will most likely depend on mathematical insight and creativity, neither of which has ever been successfully predictable. 150-digit numbers of the kind once used in RSA have been factored. The effort was greater than above, but was not unreasonable on fast modern computers. By the start of the 21st century, 150-digit numbers were no longer considered a large enough [[key size]] for RSA. Numbers with several hundred digits were still considered too hard to factor in 2005, though methods will probably continue to improve over time, requiring key size to keep pace or other methods such as [[elliptic curve cryptography]] to be used.{{Citation needed|date=April 2012}}
In 1980, one could factor a difficult 50-digit number at an expense of 10<sup>12</sup> elementary computer operations. By 1984 the state of the art in factoring algorithms had advanced to a point where a 75-digit number could be factored in 10<sup>12</sup> operations. Advances in computing technology also meant that the operations could be performed much faster. [[Moore's law]] predicts that computer speeds will continue to increase. Factoring techniques may continue to do so as well, but will most likely depend on mathematical insight and creativity, neither of which has ever been successfully predictable. 150-digit numbers of the kind once used in RSA have been factored. The effort was greater than above, but was not unreasonable on fast modern computers. By the start of the 21st century, 150-digit numbers were no longer considered a large enough [[key size]] for RSA. Numbers with several hundred digits were still considered too hard to factor in 2005, though methods will probably continue to improve over time, requiring key size to keep pace or other methods such as [[elliptic curve cryptography]] to be used.{{Citation needed|date=April 2012}}


Another distinguishing feature of asymmetric schemes is that, unlike attacks on symmetric cryptosystems, any cryptanalysis has the opportunity to make use of knowledge gained from the [[public key]].<ref>{{cite book|last=Stallings|first=William|title=Cryptography and Network Security: Principles and Practice|year=2010|publisher=Prentice Hall|isbn=0136097049}}</ref>
Another distinguishing feature of asymmetric schemes is that, unlike attacks on symmetric cryptosystems, any cryptanalysis has the opportunity to make use of knowledge gained from the [[public key]].<ref>{{cite book|last=Stallings|first=William|title=Cryptography and Network Security: Principles and Practice|year=2010|publisher=Prentice Hall|isbn=978-0136097044}}</ref>


==Attacking cryptographic hash systems==
==Attacking cryptographic hash systems==
{{Expand section|date=April 2012}}
{{Expand section|date=April 2012}}
*[[Birthday attack]]
* [[Birthday attack]]
* [[Hash function security summary]]
*[[Rainbow table]]
* [[Rainbow table]]


==Side-channel attacks==
==Side-channel attacks==
{{Main|Side channel attack}}
{{Main|Side channel attack}}
{{Expand section|date=April 2012}}
{{Expand section|date=April 2012}}
*[[Black-bag cryptanalysis]]
* [[Black-bag cryptanalysis]]
*[[Man-in-the-middle attack]]
* [[Man-in-the-middle attack]]
*[[Power analysis]]
* [[Power analysis]]
*[[Replay attack]]
* [[Replay attack]]
*[[Rubber-hose cryptanalysis]]
* [[Rubber-hose cryptanalysis]]
*[[Timing attack|Timing analysis]]
* [[Timing attack|Timing analysis]]


==Quantum computing applications for cryptanalysis==
==Quantum computing applications for cryptanalysis==
[[Quantum computer]]s, which are still in the early phases of research, have potential use in cryptanalysis. For example, [[Shor's Algorithm]] could factor large numbers in [[polynomial time]], in effect breaking some commonly used forms of public-key encryption.{{Citation needed|date=April 2012}}
[[Quantum computer]]s, which are still in the early phases of research, have potential use in cryptanalysis. For example, [[Shor's Algorithm]] could factor large numbers in [[polynomial time]], in effect breaking some commonly used forms of public-key encryption.<ref>{{Cite news|url=http://blogs.ams.org/mathgradblog/2014/04/30/shors-algorithm-breaking-rsa-encryption|title=Shor's Algorithm – Breaking RSA Encryption|date=2014-04-30|newspaper=AMS Grad Blog|access-date=2017-01-17}}</ref>


By using [[Grover's algorithm]] on a quantum computer, brute-force key search can be made quadratically faster. However, this could be countered by doubling the key length.{{Citation needed|date=April 2012}}
By using [[Grover's algorithm]] on a quantum computer, brute-force key search can be made quadratically faster. However, this could be countered by doubling the key length.<ref name=djb-groverr>{{cite web |date=2010-03-03 |author=Daniel J. Bernstein |title=Grover vs. McEliece |url=http://cr.yp.to/codes/grovercode-20100303.pdf |archive-url=https://ghostarchive.org/archive/20221010/http://cr.yp.to/codes/grovercode-20100303.pdf |archive-date=2022-10-10 |url-status=live |author-link=Daniel J. Bernstein }}</ref>


==See also==
==See also==
*[[Economics of security]]
* {{annotated link|Economics of security}}
*[[Global surveillance]]
* {{annotated link|Global surveillance}}
*[[Information assurance]], a term for information security often used in government
* {{annotated link|Information assurance}}, a term for information security often used in government
*[[Information security]], the overarching goal of most cryptography
* {{annotated link|Information security}}, the overarching goal of most cryptography
*[[National Cipher Challenge]]
* {{annotated link|National Cipher Challenge}}
*[[Security engineering]], the design of applications and protocols
* {{annotated link|Security engineering}}, the design of applications and protocols
*[[Security vulnerability]]; vulnerabilities can include cryptographic or other flaws
* {{annotated link|Security vulnerability}}; vulnerabilities can include cryptographic or other flaws
*[[Topics in cryptography]]
* {{annotated link|Topics in cryptography}}
*[[Zendian Problem]]
* {{annotated link|Zendian Problem}}


===Historic cryptanalysts===
===Historic cryptanalysts===
*[[Conel Hugh O'Donel Alexander]]
* [[Conel Hugh O'Donel Alexander]]
*[[Charles Babbage]]
* [[Charles Babbage]]
*[[Lambros D. Callimahos]]
*[[Fredson Bowers]]
*[[Joan Clarke]]
* [[Lambros D. Callimahos]]
*[[Alastair Denniston]]
* [[Joan Clarke]]
*[[Agnes Meyer Driscoll]]
* [[Alastair Denniston]]
*[[Elizebeth Friedman]]
* [[Agnes Meyer Driscoll]]
*[[William F. Friedman]], the father of modern cryptology
* [[Elizebeth Friedman]]
*[[Meredith Gardner]]
* [[William F. Friedman]]
*[[Friedrich Kasiski]]
* [[Meredith Gardner]]
*[[Al-Kindi]]
* [[Friedrich Kasiski]]
*[[Dilly Knox]]
* [[Al-Kindi]]
*[[Solomon Kullback]]
* [[Dilly Knox]]
*[[Marian Rejewski]]
* [[Solomon Kullback]]
* [[Marian Rejewski]]
*[[Joseph Rochefort]], whose contributions affected the outcome of the [[Battle of Midway]]
* [[Joseph Rochefort]], whose contributions affected the outcome of the [[Battle of Midway]]
*[[Frank Rowlett]]
*[[Abraham Sinkov]]
* [[Frank Rowlett]]
* [[Abraham Sinkov]]
*[[Giovanni Soro]], the Renaissance's first outstanding cryptanalyst
* [[Giovanni Soro]], the Renaissance's first outstanding cryptanalyst
*[[John Tiltman]]
*[[Alan Turing]]
* [[John Tiltman]]
*[[W. T. Tutte|William T. Tutte]]
* [[Alan Turing]]
* [[W. T. Tutte|William T. Tutte]]
*[[John Wallis]] - 17th-century English mathematician
* [[John Wallis]] 17th-century English mathematician
*[[William Stone Weedon]] - worked with [[Fredson Bowers]] in World War II
* [[William Stone Weedon]] worked with [[Fredson Bowers]] in World War II
*[[Herbert Yardley]]
* [[Herbert Yardley]]


==References==
== References ==
{{refimprove|date=April 2012}}
{{more citations needed|date=April 2012}}


===Notes===
=== Citations ===
{{Reflist}}
{{reflist|colwidth=35em}}


===Bibliography===
=== Sources ===
{{refbegin}}
*[[Ibrahim A. Al-Kadi]],"The origins of cryptology: The Arab contributions”, ''[[Cryptologia]]'', 16(2) (April 1992) pp.&nbsp;97–126.
* [[Ibrahim A. Al-Kadi]],"The origins of cryptology: The Arab contributions", ''[[Cryptologia]]'', 16(2) (April 1992) pp.&nbsp;97–126.
*Friedrich L. Bauer: "Decrypted Secrets". Springer 2002. ISBN 3-540-42674-4
* Friedrich L. Bauer: "Decrypted Secrets". Springer 2002. {{ISBN|3-540-42674-4}}
* {{Citation | last = Budiansky | first = Stephen | date = 10 October 2000 | title = Battle of wits: The Complete Story of Codebreaking in World War II | publisher = Free Press | isbn = 978-0-684-85932-3}}
* {{Citation | last = Burke | first = Colin B. | title = [http://purl.fdlp.gov/GPO/gpo40404 It Wasn’t All Magic: The Early Struggle to Automate Cryptanalysis, 1930s-1960s] | place = Fort Meade | publisher = Center for Cryptologic History, National Security Agency | year = 2002 | isbn = }}
* {{Citation | last = Budiansky | first = Stephen | date = 10 October 2000 | title = Battle of wits: The Complete Story of Codebreaking in World War II | publisher = Free Press | isbn = 978-0-684-85932-3 | url = https://archive.org/details/battleofwitscomp00budi }}
* {{Citation | last = Calvocoressi | first = Peter | author-link = Peter Calvocoressi | title = Top Secret Ultra | place = Cleobury Mortimer, Shropshire | publisher = M & M Baldwin | origyear = 1980 | year = 2001 | isbn = 0-947712-41-0 }}
* {{cite web | last = Burke | first = Colin B. | title = It Wasn't All Magic: The Early Struggle to Automate Cryptanalysis, 1930s–1960s | place = Fort Meade | publisher = Center for Cryptologic History, National Security Agency | year = 2002 | url = https://purl.fdlp.gov/GPO/gpo40404 }}
* {{Citation | last = Churchhouse | first = Robert | title = Codes and Ciphers: Julius Caesar, the Enigma and the Internet | place = Cambridge | publisher = Cambridge University Press | year = 2002 | isbn = 978-0-521-00890-7 }}
* {{Citation | last = Calvocoressi | first = Peter | author-link = Peter Calvocoressi | title = Top Secret Ultra | location = Cleobury Mortimer, Shropshire | publisher = M & M Baldwin | orig-year = 1980 | year = 2001 | isbn = 0-947712-41-0 }}
* {{Citation | editor-last = Copeland | editor-first = B. Jack | editor-link = Jack Copeland | title = Colossus: The Secrets of Bletchley Park's Codebreaking Computers | place = Oxford | publisher = Oxford University Press | year = 2006 | isbn = 978-0-19-284055-4 }}
* {{Citation | last = Churchhouse | first = Robert | title = Codes and Ciphers: Julius Caesar, the Enigma and the Internet | location = Cambridge, England | publisher = Cambridge University Press | year = 2002 | isbn = 978-0-521-00890-7 | url-access = registration | url = https://archive.org/details/codesciphersjuli0000chur }}
* {{Citation | editor-last = Copeland | editor-first = B. Jack | editor-link = Jack Copeland | title = Colossus: The Secrets of Bletchley Park's Codebreaking Computers | location = Oxford, England | publisher = Oxford University Press | year = 2006 | isbn = 978-0-19-284055-4 }}
*Helen Fouché Gaines, "Cryptanalysis", 1939, Dover. ISBN 0-486-20097-3
* Helen Fouché Gaines, "Cryptanalysis", 1939, Dover. {{ISBN|0-486-20097-3}}
*[[David Kahn (writer)|David Kahn]], "[[The Codebreakers]] - The Story of Secret Writing", 1967. ISBN 0-684-83130-9
* [[David Kahn (writer)|David Kahn]], "[[The Codebreakers]] – The Story of Secret Writing", 1967. {{ISBN|0-684-83130-9}}
*[[Lars R. Knudsen]]: Contemporary Block Ciphers. Lectures on Data Security 1998: 105-126
* [[Lars R. Knudsen]]: Contemporary Block Ciphers. Lectures on Data Security 1998: 105–126
* {{Cite journal | last = Schneier | first = Bruce | author-link = Bruce Schneier | title = A Self-Study Course in Block-Cipher Cryptanalysis | journal = Cryptologia | volume = 24 | issue = 1 | pages = 18–34 |date=January 2000 | url = https://www.schneier.com/paper-self-study.html | doi = 10.1080/0161-110091888754 | ref = harv | postscript = <!-- Bot inserted parameter. Either remove it; or change its value to "." for the cite to end in a ".", as necessary. -->{{inconsistent citations}} }}
* {{cite journal | last = Schneier | first = Bruce | author-link = Bruce Schneier | title = A Self-Study Course in Block-Cipher Cryptanalysis | journal = Cryptologia | volume = 24 | issue = 1 | pages = 18–34 | date = January 2000 | url = https://www.schneier.com/paper-self-study.html | doi = 10.1080/0161-110091888754 | s2cid = 53307028 | access-date = 2011-01-11 | archive-url = https://web.archive.org/web/20150911235305/https://www.schneier.com/paper-self-study.html | archive-date = 2015-09-11 | url-status = dead }}
*[[Abraham Sinkov]], ''Elementary Cryptanalysis: A Mathematical Approach'', Mathematical Association of America, 1966. ISBN 0-88385-622-0
*[[Christopher Swenson]], Modern Cryptanalysis: Techniques for Advanced Code Breaking, ISBN 978-0-470-13593-8
* [[Abraham Sinkov]], ''Elementary Cryptanalysis: A Mathematical Approach'', Mathematical Association of America, 1966. {{ISBN|0-88385-622-0}}
*[[William F. Friedman|Friedman, William F.]], [[Military Cryptanalysis (book) (William F. Friedman)|Military Cryptanalysis]], Part I, ISBN 0-89412-044-1
* [[Christopher Swenson]], Modern Cryptanalysis: Techniques for Advanced Code Breaking, {{ISBN|978-0-470-13593-8}}
*Friedman, William F., Military Cryptanalysis, Part II, ISBN 0-89412-064-6
* [[William F. Friedman|Friedman, William F.]], [[Military Cryptanalysis (book) (William F. Friedman)|Military Cryptanalysis]], Part I, {{ISBN|0-89412-044-1}}
*Friedman, William F., Military Cryptanalysis, Part III, Simpler Varieties of Aperiodic Substitution Systems, ISBN 0-89412-196-0
* Friedman, William F., Military Cryptanalysis, Part II, {{ISBN|0-89412-064-6}}
*Friedman, William F., Military Cryptanalysis, Part IV, Transposition and Fractionating Systems, ISBN 0-89412-198-7
* Friedman, William F., Military Cryptanalysis, Part III, Simpler Varieties of Aperiodic Substitution Systems, {{ISBN|0-89412-196-0}}
*Friedman, William F. and [[Lambros D. Callimahos]], [[Military Cryptanalytics]], Part I, Volume 1, ISBN 0-89412-073-5
* Friedman, William F., Military Cryptanalysis, Part IV, Transposition and Fractionating Systems, {{ISBN|0-89412-198-7}}
*Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part I, Volume 2, ISBN 0-89412-074-3
* Friedman, William F. and [[Lambros D. Callimahos]], [[Military Cryptanalytics]], Part I, Volume 1, {{ISBN|0-89412-073-5}}
*Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part II, Volume 1, ISBN 0-89412-075-1
* Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part I, Volume 2, {{ISBN|0-89412-074-3}}
*Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part II, Volume 2, ISBN 0-89412-076-X
* Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part II, Volume 1, {{ISBN|0-89412-075-1}}
* Friedman, William F. and Lambros D. Callimahos, Military Cryptanalytics, Part II, Volume 2, {{ISBN|0-89412-076-X}}
* {{Citation | last = Hinsley | first = F.H. | author-link = Harry Hinsley | year = 1993 | contribution = Introduction: The influence of Ultra in the Second World War }} in {{Harvnb|Hinsley|Stripp|1993|pp=1–13}}
* {{Citation | last = Hinsley | first = F. H. | author-link = Harry Hinsley | year = 1993 | chapter = Introduction: The influence of Ultra in the Second World War | editor-last = Hinsley | editor-first = F.H. | editor-link = Harry Hinsley | editor2-last = Stripp | editor2-first = Alan | title = Codebreakers: The inside story of Bletchley Park | location = Oxford | publisher = Oxford University Press | isbn = 978-0-19-280132-6 |pages=1–13}}
*{{Citation |last=Singh |first=Simon |author-link=Simon Singh |year=1999 |title=[[The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography]] |publication-place=London |publisher=Fourth Estate |pages=143–189 |isbn=1-85702-879-1}}
* {{Citation | last = Smith | first = Michael | title = The Emperor's Codes: Bletchley Park and the breaking of Japan's secret ciphers | place = London | publisher = Random House | year = 2000 | isbn = 0-593-04641-2 }}
* {{Citation |last=Singh |first=Simon |author-link = Simon Singh |year=1999 |title=The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography |location = London, England |publisher = Fourth Estate |pages=143–189 |isbn = 1-85702-879-1 |title-link = The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography }}
* {{Citation | last = Tutte | first = W. T. | author-link = W. T. Tutte | title = Fish and I | date = 19 June 1998 | url = http://frode.home.cern.ch/frode/crypto/tutte.pdf | accessdate = 7 October 2010 }} Transcript of a lecture given by Prof. Tutte at the [[University of Waterloo]]
* {{Citation | last = Smith | first = Michael | title = The Emperor's Codes: Bletchley Park and the breaking of Japan's secret ciphers | location = London, England | publisher = Random House | year = 2000 | isbn = 0-593-04641-2 }}
* {{Citation | last = Winterbotham | first = F.W. | author-link = F.W. Winterbotham | title = The Ultra secret: the inside story of Operation Ultra, Bletchley Park and Enigma | place = London | publisher = Orion Books Ltd | origyear = 1974 | year = 2000 | oclc = 222735270 | isbn = 978-0-7528-3751-2 }}
* {{Citation | last = Tutte | first = W. T. | author-link = W. T. Tutte | title = Fish and I | date = 19 June 1998 | url = http://frode.home.cern.ch/frode/crypto/tutte.pdf | access-date = 7 October 2010 | url-status = dead | archive-url = https://web.archive.org/web/20070710042331/http://frode.home.cern.ch/frode/crypto/tutte.pdf | archive-date = 10 July 2007 }} Transcript of a lecture given by Prof. Tutte at the [[University of Waterloo]]
* {{Citation | last = Winterbotham | first = F.W. | author-link = F.W. Winterbotham | title = The Ultra secret: the inside story of Operation Ultra, Bletchley Park and Enigma | location = London | publisher = Orion Books Ltd. | orig-year = 1974 | year = 2000 | oclc = 222735270 | isbn = 978-0-7528-3751-2 }}
{{refend}}


==Further reading==
==Further reading==
<!-- * {{cite book|author=|title=|publisher=|year=|isbn=|url=}} -->
<!-- * {{cite book|title=|publisher=|year=|isbn=|url=}} -->
* {{cite book|author=Bard, Gregory V.|title=Algebraic Cryptanalysis|publisher=Springer|year=2009|isbn=978-1-4419-1019-6|url=http://books.google.com/books?id=PYs4Vjdo0z0C}}
* {{cite book|author=Bard, Gregory V.|title=Algebraic Cryptanalysis|publisher=Springer|year=2009|isbn=978-1-4419-1019-6|url=https://books.google.com/books?id=PYs4Vjdo0z0C}}
* {{cite book|author=Hinek, M. Jason|title=Cryptanalysis of RSA and Its Variants|publisher=CRC Press|year=2009|isbn=978-1-4200-7518-2|url=http://books.google.com/books?id=LS8m8nyu55QC}}
* {{cite book|author=Hinek, M. Jason|title=Cryptanalysis of RSA and Its Variants|publisher=CRC Press|year=2009|isbn=978-1-4200-7518-2|url=https://books.google.com/books?id=LS8m8nyu55QC}}
* {{cite book|author=Joux, Antoine|title=Algorithmic Cryptanalysis|publisher=CRC Press|year=2009|isbn=978-1-4200-7002-6|url=http://books.google.com/books?id=buQajqt-_iUC}}
* {{cite book|author=Joux, Antoine|title=Algorithmic Cryptanalysis|publisher=CRC Press|year=2009|isbn=978-1-4200-7002-6|url=https://books.google.com/books?id=buQajqt-_iUC}}
* {{cite book|author=Junod, Pascal & Canteaut, Anne|title=Advanced Linear Cryptanalysis of Block and Stream Ciphers|publisher=IOS Press|year=2011|isbn=978-1-60750-844-1|url=http://books.google.com/books?id=pMnRhjStTZoC}}
* {{cite book|author1=Junod, Pascal |author2=Canteaut, Anne|author2-link=Anne Canteaut|title=Advanced Linear Cryptanalysis of Block and Stream Ciphers|publisher=IOS Press|year=2011|isbn=978-1-60750-844-1|url=https://books.google.com/books?id=pMnRhjStTZoC}}
* {{cite book|authors=Stamp, Mark & Low, Richard|title=Applied Cryptanalysis: Breaking Ciphers in the Real World|publisher=John Wiley & Sons|year=2007|isbn=978-0-470-11486-5|url=http://books.google.com/books?id=buVGyPNbwJUC}}
* {{cite book|author1=Stamp, Mark |author2=Low, Richard|title=Applied Cryptanalysis: Breaking Ciphers in the Real World|publisher=John Wiley & Sons|year=2007|isbn=978-0-470-11486-5|url=https://books.google.com/books?id=buVGyPNbwJUC}}
* {{cite book|author=Sweigart, Al|title=Hacking Secret Ciphers with Python|publisher=Al Sweigart|year=2013|isbn=978-1482614374|url=http://inventwithpython.com/hacking}}
* {{cite book|author=Swenson, Christopher|title=Modern cryptanalysis: techniques for advanced code breaking|publisher=John Wiley & Sons|year=2008|isbn=978-0-470-13593-8|url=https://books.google.com/books?id=oLoaWgdmFJ8C}}
* {{cite book|author=Swenson, Christopher|title=Modern cryptanalysis: techniques for advanced code breaking|publisher=John Wiley & Sons|year=2008|isbn=978-0-470-13593-8|url=http://books.google.com/books?id=oLoaWgdmFJ8C}}
* {{cite book|author=Wagstaff, Samuel S.|title=Cryptanalysis of number-theoretic ciphers|publisher=CRC Press|year=2003|isbn=978-1-58488-153-7|url=https://books.google.com/books?id=jQxRYd65LxIC}}
* {{cite book|author=Wagstaff, Samuel S.|title=Cryptanalysis of number-theoretic ciphers|publisher=CRC Press|year=2003|isbn=978-1-58488-153-7|url=http://books.google.com/books?id=jQxRYd65LxIC}}


==External links==
==External links==
{{Wiktionary|cryptanalysis}}
{{Wiktionary|cryptanalysis}}
{{commons category|Cryptanalysis}}
{{commons category|Cryptanalysis}}
*[http://www.umich.edu/~umich/fm-34-40-2/ Basic Cryptanalysis] (files contain 5 line header, that has to be removed first)
* [http://www.umich.edu/~umich/fm-34-40-2/ Basic Cryptanalysis] (files contain 5 line header, that has to be removed first)
*[http://distributedcomputing.info/ap-crypto.html#m4 Distributed Computing Projects]
* [http://distributedcomputing.info/ap-crypto.html#m4 Distributed Computing Projects]
* [https://github.com/Deadlyelder/Tools-for-Cryptanalysis List of tools for cryptanalysis on modern cryptography]
*[http://simonsingh.net/cryptography/ Simon Singh's crypto corner]
* [http://simonsingh.net/cryptography/ Simon Singh's crypto corner]
*[http://www.tnmoc.org/home.aspx The National Museum of Computing]
* [https://web.archive.org/web/20090129221702/http://tnmoc.org/home.aspx The National Museum of Computing]
*[http://home.no.net/fenja256/ultraanvil/ UltraAnvil tool for attacking simple substitution ciphers]
* [https://web.archive.org/web/20070128051501/http://home.no.net/fenja256/ultraanvil/ UltraAnvil tool for attacking simple substitution ciphers]
* [http://www.iwm.org.uk/history/how-alan-turing-cracked-the-enigma-code How Alan Turing Cracked The Enigma Code] Imperial War Museums


{{Cryptography navbox}}
{{Cryptography navbox}}
{{Portal bar|Cryptography}}


{{Authority control}}
{{Authority control}}

[[Category:Cryptographic attacks]]
[[Category:Cryptographic attacks]]
[[Category:Mathematical science occupations]]
[[Category:Applied mathematics]]
[[Category:Cryptography]]
[[Category:Arab inventions]]

Latest revision as of 20:56, 27 May 2024

Reconstruction of the appearance of cyclometer, a device used to break the encryption of the Enigma machine. Based on sketches in Marian Rejewski's memoirs

Cryptanalysis (from the Greek kryptós, "hidden", and analýein, "to analyze") refers to the process of analyzing information systems in order to understand hidden aspects of the systems.[1] Cryptanalysis is used to breach cryptographic security systems and gain access to the contents of encrypted messages, even if the cryptographic key is unknown.

In addition to mathematical analysis of cryptographic algorithms, cryptanalysis includes the study of side-channel attacks that do not target weaknesses in the cryptographic algorithms themselves, but instead exploit weaknesses in their implementation.

Even though the goal has been the same, the methods and techniques of cryptanalysis have changed drastically through the history of cryptography, adapting to increasing cryptographic complexity, ranging from the pen-and-paper methods of the past, through machines like the British Bombes and Colossus computers at Bletchley Park in World War II, to the mathematically advanced computerized schemes of the present. Methods for breaking modern cryptosystems often involve solving carefully constructed problems in pure mathematics, the best-known being integer factorization.

Overview[edit]

In encryption, confidential information (called the "plaintext") is sent securely to a recipient by the sender first converting it into an unreadable form ("ciphertext") using an encryption algorithm. The ciphertext is sent through an insecure channel to the recipient. The recipient decrypts the ciphertext by applying an inverse decryption algorithm, recovering the plaintext. To decrypt the ciphertext, the recipient requires a secret knowledge from the sender, usually a string of letters, numbers, or bits, called a cryptographic key. The concept is that even if an unauthorized person gets access to the ciphertext during transmission, without the secret key they cannot convert it back to plaintext.

Encryption has been used throughout history to send important military, diplomatic and commercial messages, and today is very widely used in computer networking to protect email and internet communication.

The goal of cryptanalysis is for a third party, a cryptanalyst, to gain as much information as possible about the original ("plaintext"), attempting to "break" the encryption to read the ciphertext and learning the secret key so future messages can be decrypted and read.[2] A mathematical technique to do this is called a cryptographic attack. Cryptographic attacks can be characterized in a number of ways:

Amount of information available to the attacker[edit]

Cryptanalytical attacks can be classified based on what type of information the attacker has available. As a basic starting point it is normally assumed that, for the purposes of analysis, the general algorithm is known; this is Shannon's Maxim "the enemy knows the system"[3] – in its turn, equivalent to Kerckhoffs's principle.[4] This is a reasonable assumption in practice – throughout history, there are countless examples of secret algorithms falling into wider knowledge, variously through espionage, betrayal and reverse engineering. (And on occasion, ciphers have been broken through pure deduction; for example, the German Lorenz cipher and the Japanese Purple code, and a variety of classical schemes):[5]

  • Ciphertext-only: the cryptanalyst has access only to a collection of ciphertexts or codetexts.
  • Known-plaintext: the attacker has a set of ciphertexts to which they know the corresponding plaintext.
  • Chosen-plaintext (chosen-ciphertext): the attacker can obtain the ciphertexts (plaintexts) corresponding to an arbitrary set of plaintexts (ciphertexts) of their own choosing.
  • Adaptive chosen-plaintext: like a chosen-plaintext attack, except the attacker can choose subsequent plaintexts based on information learned from previous encryptions, similarly to the Adaptive chosen ciphertext attack.
  • Related-key attack: Like a chosen-plaintext attack, except the attacker can obtain ciphertexts encrypted under two different keys. The keys are unknown, but the relationship between them is known; for example, two keys that differ in the one bit.

Computational resources required[edit]

Attacks can also be characterised by the resources they require. Those resources include:[6]

  • Time – the number of computation steps (e.g., test encryptions) which must be performed.
  • Memory – the amount of storage required to perform the attack.
  • Data – the quantity and type of plaintexts and ciphertexts required for a particular approach.

It is sometimes difficult to predict these quantities precisely, especially when the attack is not practical to actually implement for testing. But academic cryptanalysts tend to provide at least the estimated order of magnitude of their attacks' difficulty, saying, for example, "SHA-1 collisions now 252."[7]

Bruce Schneier notes that even computationally impractical attacks can be considered breaks: "Breaking a cipher simply means finding a weakness in the cipher that can be exploited with a complexity less than brute force. Never mind that brute-force might require 2128 encryptions; an attack requiring 2110 encryptions would be considered a break...simply put, a break can just be a certificational weakness: evidence that the cipher does not perform as advertised."[8]

Partial breaks[edit]

The results of cryptanalysis can also vary in usefulness. Cryptographer Lars Knudsen (1998) classified various types of attack on block ciphers according to the amount and quality of secret information that was discovered:

  • Total break – the attacker deduces the secret key.
  • Global deduction – the attacker discovers a functionally equivalent algorithm for encryption and decryption, but without learning the key.
  • Instance (local) deduction – the attacker discovers additional plaintexts (or ciphertexts) not previously known.
  • Information deduction – the attacker gains some Shannon information about plaintexts (or ciphertexts) not previously known.
  • Distinguishing algorithm – the attacker can distinguish the cipher from a random permutation.

Academic attacks are often against weakened versions of a cryptosystem, such as a block cipher or hash function with some rounds removed. Many, but not all, attacks become exponentially more difficult to execute as rounds are added to a cryptosystem,[9] so it's possible for the full cryptosystem to be strong even though reduced-round variants are weak. Nonetheless, partial breaks that come close to breaking the original cryptosystem may mean that a full break will follow; the successful attacks on DES, MD5, and SHA-1 were all preceded by attacks on weakened versions.

In academic cryptography, a weakness or a break in a scheme is usually defined quite conservatively: it might require impractical amounts of time, memory, or known plaintexts. It also might require the attacker be able to do things many real-world attackers can't: for example, the attacker may need to choose particular plaintexts to be encrypted or even to ask for plaintexts to be encrypted using several keys related to the secret key. Furthermore, it might only reveal a small amount of information, enough to prove the cryptosystem imperfect but too little to be useful to real-world attackers. Finally, an attack might only apply to a weakened version of cryptographic tools, like a reduced-round block cipher, as a step towards breaking the full system.[8]

History[edit]

Cryptanalysis has coevolved together with cryptography, and the contest can be traced through the history of cryptography—new ciphers being designed to replace old broken designs, and new cryptanalytic techniques invented to crack the improved schemes. In practice, they are viewed as two sides of the same coin: secure cryptography requires design against possible cryptanalysis.[citation needed]

Classical ciphers[edit]

First page of Al-Kindi's 9th century Manuscript on Deciphering Cryptographic Messages

Although the actual word "cryptanalysis" is relatively recent (it was coined by William Friedman in 1920), methods for breaking codes and ciphers are much older. David Kahn notes in The Codebreakers that Arab scholars were the first people to systematically document cryptanalytic methods.[10]

The first known recorded explanation of cryptanalysis was given by Al-Kindi (c. 801–873, also known as "Alkindus" in Europe), a 9th-century Arab polymath,[11][12] in Risalah fi Istikhraj al-Mu'amma (A Manuscript on Deciphering Cryptographic Messages). This treatise contains the first description of the method of frequency analysis.[13] Al-Kindi is thus regarded as the first codebreaker in history.[14] His breakthrough work was influenced by Al-Khalil (717–786), who wrote the Book of Cryptographic Messages, which contains the first use of permutations and combinations to list all possible Arabic words with and without vowels.[15]

Frequency analysis is the basic tool for breaking most classical ciphers. In natural languages, certain letters of the alphabet appear more often than others; in English, "E" is likely to be the most common letter in any sample of plaintext. Similarly, the digraph "TH" is the most likely pair of letters in English, and so on. Frequency analysis relies on a cipher failing to hide these statistics. For example, in a simple substitution cipher (where each letter is simply replaced with another), the most frequent letter in the ciphertext would be a likely candidate for "E". Frequency analysis of such a cipher is therefore relatively easy, provided that the ciphertext is long enough to give a reasonably representative count of the letters of the alphabet that it contains.[16]

Al-Kindi's invention of the frequency analysis technique for breaking monoalphabetic substitution ciphers[17][18] was the most significant cryptanalytic advance until World War II. Al-Kindi's Risalah fi Istikhraj al-Mu'amma described the first cryptanalytic techniques, including some for polyalphabetic ciphers, cipher classification, Arabic phonetics and syntax, and most importantly, gave the first descriptions on frequency analysis.[19] He also covered methods of encipherments, cryptanalysis of certain encipherments, and statistical analysis of letters and letter combinations in Arabic.[20][13] An important contribution of Ibn Adlan (1187–1268) was on sample size for use of frequency analysis.[15]

In Europe, Italian scholar Giambattista della Porta (1535–1615) was the author of a seminal work on cryptanalysis, De Furtivis Literarum Notis.[21]

Successful cryptanalysis has undoubtedly influenced history; the ability to read the presumed-secret thoughts and plans of others can be a decisive advantage. For example, in England in 1587, Mary, Queen of Scots was tried and executed for treason as a result of her involvement in three plots to assassinate Elizabeth I of England. The plans came to light after her coded correspondence with fellow conspirators was deciphered by Thomas Phelippes.

In Europe during the 15th and 16th centuries, the idea of a polyalphabetic substitution cipher was developed, among others by the French diplomat Blaise de Vigenère (1523–96).[22] For some three centuries, the Vigenère cipher, which uses a repeating key to select different encryption alphabets in rotation, was considered to be completely secure (le chiffre indéchiffrable—"the indecipherable cipher"). Nevertheless, Charles Babbage (1791–1871) and later, independently, Friedrich Kasiski (1805–81) succeeded in breaking this cipher.[23] During World War I, inventors in several countries developed rotor cipher machines such as Arthur Scherbius' Enigma, in an attempt to minimise the repetition that had been exploited to break the Vigenère system.[24]

Ciphers from World War I and World War II[edit]

The decrypted Zimmermann Telegram.

In World War I, the breaking of the Zimmermann Telegram was instrumental in bringing the United States into the war. In World War II, the Allies benefitted enormously from their joint success cryptanalysis of the German ciphers – including the Enigma machine and the Lorenz cipher – and Japanese ciphers, particularly 'Purple' and JN-25. 'Ultra' intelligence has been credited with everything between shortening the end of the European war by up to two years, to determining the eventual result. The war in the Pacific was similarly helped by 'Magic' intelligence.[25]

Cryptanalysis of enemy messages played a significant part in the Allied victory in World War II. F. W. Winterbotham, quoted the western Supreme Allied Commander, Dwight D. Eisenhower, at the war's end as describing Ultra intelligence as having been "decisive" to Allied victory.[26] Sir Harry Hinsley, official historian of British Intelligence in World War II, made a similar assessment about Ultra, saying that it shortened the war "by not less than two years and probably by four years"; moreover, he said that in the absence of Ultra, it is uncertain how the war would have ended.[27]

In practice, frequency analysis relies as much on linguistic knowledge as it does on statistics, but as ciphers became more complex, mathematics became more important in cryptanalysis. This change was particularly evident before and during World War II, where efforts to crack Axis ciphers required new levels of mathematical sophistication. Moreover, automation was first applied to cryptanalysis in that era with the Polish Bomba device, the British Bombe, the use of punched card equipment, and in the Colossus computers – the first electronic digital computers to be controlled by a program.[28][29]

Indicator[edit]

With reciprocal machine ciphers such as the Lorenz cipher and the Enigma machine used by Nazi Germany during World War II, each message had its own key. Usually, the transmitting operator informed the receiving operator of this message key by transmitting some plaintext and/or ciphertext before the enciphered message. This is termed the indicator, as it indicates to the receiving operator how to set his machine to decipher the message.[30]

Poorly designed and implemented indicator systems allowed first Polish cryptographers[31] and then the British cryptographers at Bletchley Park[32] to break the Enigma cipher system. Similar poor indicator systems allowed the British to identify depths that led to the diagnosis of the Lorenz SZ40/42 cipher system, and the comprehensive breaking of its messages without the cryptanalysts seeing the cipher machine.[33]

Depth[edit]

Sending two or more messages with the same key is an insecure process. To a cryptanalyst the messages are then said to be "in depth."[34][35] This may be detected by the messages having the same indicator by which the sending operator informs the receiving operator about the key generator initial settings for the message.[36]

Generally, the cryptanalyst may benefit from lining up identical enciphering operations among a set of messages. For example, the Vernam cipher enciphers by bit-for-bit combining plaintext with a long key using the "exclusive or" operator, which is also known as "modulo-2 addition" (symbolized by ⊕ ):

Plaintext ⊕ Key = Ciphertext

Deciphering combines the same key bits with the ciphertext to reconstruct the plaintext:

Ciphertext ⊕ Key = Plaintext

(In modulo-2 arithmetic, addition is the same as subtraction.) When two such ciphertexts are aligned in depth, combining them eliminates the common key, leaving just a combination of the two plaintexts:

Ciphertext1 ⊕ Ciphertext2 = Plaintext1 ⊕ Plaintext2

The individual plaintexts can then be worked out linguistically by trying probable words (or phrases), also known as "cribs," at various locations; a correct guess, when combined with the merged plaintext stream, produces intelligible text from the other plaintext component:

(Plaintext1 ⊕ Plaintext2) ⊕ Plaintext1 = Plaintext2

The recovered fragment of the second plaintext can often be extended in one or both directions, and the extra characters can be combined with the merged plaintext stream to extend the first plaintext. Working back and forth between the two plaintexts, using the intelligibility criterion to check guesses, the analyst may recover much or all of the original plaintexts. (With only two plaintexts in depth, the analyst may not know which one corresponds to which ciphertext, but in practice this is not a large problem.) When a recovered plaintext is then combined with its ciphertext, the key is revealed:

Plaintext1 ⊕ Ciphertext1 = Key

Knowledge of a key then allows the analyst to read other messages encrypted with the same key, and knowledge of a set of related keys may allow cryptanalysts to diagnose the system used for constructing them.[33]

Development of modern cryptography[edit]

Governments have long recognized the potential benefits of cryptanalysis for intelligence, both military and diplomatic, and established dedicated organizations devoted to breaking the codes and ciphers of other nations, for example, GCHQ and the NSA, organizations which are still very active today.

The Bombe replicated the action of several Enigma machines wired together. Each of the rapidly rotating drums, pictured above in a Bletchley Park museum mockup, simulated the action of an Enigma rotor.

Even though computation was used to great effect in the cryptanalysis of the Lorenz cipher and other systems during World War II, it also made possible new methods of cryptography orders of magnitude more complex than ever before. Taken as a whole, modern cryptography has become much more impervious to cryptanalysis than the pen-and-paper systems of the past, and now seems to have the upper hand against pure cryptanalysis.[citation needed] The historian David Kahn notes:[37]

Many are the cryptosystems offered by the hundreds of commercial vendors today that cannot be broken by any known methods of cryptanalysis. Indeed, in such systems even a chosen plaintext attack, in which a selected plaintext is matched against its ciphertext, cannot yield the key that unlock[s] other messages. In a sense, then, cryptanalysis is dead. But that is not the end of the story. Cryptanalysis may be dead, but there is – to mix my metaphors – more than one way to skin a cat.

Kahn goes on to mention increased opportunities for interception, bugging, side channel attacks, and quantum computers as replacements for the traditional means of cryptanalysis. In 2010, former NSA technical director Brian Snow said that both academic and government cryptographers are "moving very slowly forward in a mature field."[38]

However, any postmortems for cryptanalysis may be premature. While the effectiveness of cryptanalytic methods employed by intelligence agencies remains unknown, many serious attacks against both academic and practical cryptographic primitives have been published in the modern era of computer cryptography:[citation needed]

Thus, while the best modern ciphers may be far more resistant to cryptanalysis than the Enigma, cryptanalysis and the broader field of information security remain quite active.[39]

Symmetric ciphers[edit]

Asymmetric ciphers[edit]

Asymmetric cryptography (or public-key cryptography) is cryptography that relies on using two (mathematically related) keys; one private, and one public. Such ciphers invariably rely on "hard" mathematical problems as the basis of their security, so an obvious point of attack is to develop methods for solving the problem. The security of two-key cryptography depends on mathematical questions in a way that single-key cryptography generally does not, and conversely links cryptanalysis to wider mathematical research in a new way.[citation needed]

Asymmetric schemes are designed around the (conjectured) difficulty of solving various mathematical problems. If an improved algorithm can be found to solve the problem, then the system is weakened. For example, the security of the Diffie–Hellman key exchange scheme depends on the difficulty of calculating the discrete logarithm. In 1983, Don Coppersmith found a faster way to find discrete logarithms (in certain groups), and thereby requiring cryptographers to use larger groups (or different types of groups). RSA's security depends (in part) upon the difficulty of integer factorization – a breakthrough in factoring would impact the security of RSA.[40]

In 1980, one could factor a difficult 50-digit number at an expense of 1012 elementary computer operations. By 1984 the state of the art in factoring algorithms had advanced to a point where a 75-digit number could be factored in 1012 operations. Advances in computing technology also meant that the operations could be performed much faster. Moore's law predicts that computer speeds will continue to increase. Factoring techniques may continue to do so as well, but will most likely depend on mathematical insight and creativity, neither of which has ever been successfully predictable. 150-digit numbers of the kind once used in RSA have been factored. The effort was greater than above, but was not unreasonable on fast modern computers. By the start of the 21st century, 150-digit numbers were no longer considered a large enough key size for RSA. Numbers with several hundred digits were still considered too hard to factor in 2005, though methods will probably continue to improve over time, requiring key size to keep pace or other methods such as elliptic curve cryptography to be used.[citation needed]

Another distinguishing feature of asymmetric schemes is that, unlike attacks on symmetric cryptosystems, any cryptanalysis has the opportunity to make use of knowledge gained from the public key.[41]

Attacking cryptographic hash systems[edit]

Side-channel attacks[edit]

Quantum computing applications for cryptanalysis[edit]

Quantum computers, which are still in the early phases of research, have potential use in cryptanalysis. For example, Shor's Algorithm could factor large numbers in polynomial time, in effect breaking some commonly used forms of public-key encryption.[42]

By using Grover's algorithm on a quantum computer, brute-force key search can be made quadratically faster. However, this could be countered by doubling the key length.[43]

See also[edit]

  • Economics of security
  • Global surveillance – Mass surveillance across national borders
  • Information assurance – Multi-disciplinary methods for decision support systems security, a term for information security often used in government
  • Information security – Protecting information by mitigating risk, the overarching goal of most cryptography
  • National Cipher Challenge
  • Security engineering – Process of incorporating security controls into an information system, the design of applications and protocols
  • Security vulnerability – Exploitable weakness in a computer system; vulnerabilities can include cryptographic or other flaws
  • Topics in cryptography – Overview of and topical guide to cryptography
  • Zendian Problem – An exercise in communication intelligence

Historic cryptanalysts[edit]

References[edit]

Citations[edit]

  1. ^ "Cryptanalysis/Signals Analysis". Nsa.gov. 2009-01-15. Retrieved 2013-04-15.
  2. ^ Dooley, John F. (2018). History of Cryptography and Cryptanalysis: Codes, Ciphers, and Their Algorithms. History of Computing. Cham: Springer International Publishing. doi:10.1007/978-3-319-90443-6. ISBN 978-3-319-90442-9. S2CID 18050046.
  3. ^ Shannon, Claude (4 October 1949). "Communication Theory of Secrecy Systems". Bell System Technical Journal. 28 (4): 662. doi:10.1002/j.1538-7305.1949.tb00928.x. Retrieved 20 June 2014.
  4. ^ Kahn, David (1996), The Codebreakers: the story of secret writing (second ed.), Scribners, p. 235
  5. ^ Schmeh, Klaus (2003). Cryptography and public key infrastructure on the Internet. John Wiley & Sons. p. 45. ISBN 978-0-470-84745-9.
  6. ^ Hellman, M. (July 1980). "A cryptanalytic time-memory trade-off" (PDF). IEEE Transactions on Information Theory. 26 (4): 401–406. doi:10.1109/tit.1980.1056220. ISSN 0018-9448. S2CID 552536. Archived (PDF) from the original on 2022-10-10.
  7. ^ McDonald, Cameron; Hawkes, Philip; Pieprzyk, Josef, SHA-1 collisions now 252 (PDF), retrieved 4 April 2012
  8. ^ a b Schneier 2000
  9. ^ For an example of an attack that cannot be prevented by additional rounds, see slide attack.
  10. ^ Kahn, David (1996). The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet. Simon and Schuster. ISBN 9781439103555.
  11. ^ Al-Jubouri, I. M. N. (February 22, 2004). History of Islamic Philosophy: With View of Greek Philosophy and Early History of Islam. Authors On Line Ltd. ISBN 9780755210114 – via Google Books.
  12. ^ Leaman, Oliver (July 16, 2015). The Biographical Encyclopedia of Islamic Philosophy. Bloomsbury Publishing. ISBN 9781472569455 – via Google Books.
  13. ^ a b Ibrahim A. Al-Kadi (April 1992), "The origins of cryptology: The Arab contributions", Cryptologia 16 (2): 97–126
  14. ^ Sahinaslan, Ender; Sahinaslan, Onder (2 April 2019). "Cryptographic methods and development stages used throughout history". AIP Conference Proceedings. 2086 (1): 030033. Bibcode:2019AIPC.2086c0033S. doi:10.1063/1.5095118. ISSN 0094-243X. Al-Kindi is considered the first code breaker
  15. ^ a b Broemeling, Lyle D. (1 November 2011). "An Account of Early Statistical Inference in Arab Cryptology". The American Statistician. 65 (4): 255–257. doi:10.1198/tas.2011.10191. S2CID 123537702.
  16. ^ Singh 1999, p. 17
  17. ^ Leaman, Oliver (16 July 2015). The Biographical Encyclopedia of Islamic Philosophy. Bloomsbury Publishing. ISBN 9781472569455. Retrieved 19 March 2018 – via Google Books.
  18. ^ Al-Jubouri, I. M. N. (19 March 2018). History of Islamic Philosophy: With View of Greek Philosophy and Early History of Islam. Authors On Line Ltd. ISBN 9780755210114. Retrieved 19 March 2018 – via Google Books.
  19. ^ Simon Singh, The Code Book, pp. 14–20
  20. ^ "Al-Kindi, Cryptgraphy, Codebreaking and Ciphers". Retrieved 12 January 2007.
  21. ^ "Crypto History". Archived from the original on August 28, 2008.
  22. ^ Singh 1999, pp. 45–51
  23. ^ Singh 1999, pp. 63–78
  24. ^ Singh 1999, p. 116
  25. ^ Smith 2000, p. 4
  26. ^ Winterbotham 2000, p. 229.
  27. ^ Hinsley 1993.
  28. ^ Copeland 2006, p. 1
  29. ^ Singh 1999, p. 244
  30. ^ Churchhouse 2002, pp. 33, 34
  31. ^ Budiansky 2000, pp. 97–99
  32. ^ Calvocoressi 2001, p. 66
  33. ^ a b Tutte 1998
  34. ^ Churchhouse 2002, p. 34
  35. ^ The Bletchley Park 1944 Cryptographic Dictionary defined a depth as
    1. A series of code messages reciphered with the same, or the same part of a, reciphering key especially when written under one another so that all the groups (usually one in each message) that are reciphered with the same group of the subtractor lie under each other and form a 'column'.
    (b) two or more messages in a transposition cipher that are of the same length and have been enciphered on the same key;
    (c) two or more messages in a machine or similar cipher that have been enciphered on the same machine-setting or on the same key.
    2. be in depth : (of messages). Stand to each other in any of the relationships described above.
    The Bletchley Park 1944 Cryptographic Dictionary formatted by Tony Sale (c) 2001 (PDF), p. 27
  36. ^ Churchhouse 2002, pp. 33, 86
  37. ^ David Kahn Remarks on the 50th Anniversary of the National Security Agency, November 1, 2002.
  38. ^ Tim Greene, Network World, Former NSA tech chief: I don't trust the cloud Archived 2010-03-08 at the Wayback Machine. Retrieved March 14, 2010.
  39. ^ "An Overview of Cryptography". www.garykessler.net. Retrieved 2019-06-03.
  40. ^ https://pages.cs.wisc.edu/~cs812-1/coppersmith.pdf
  41. ^ Stallings, William (2010). Cryptography and Network Security: Principles and Practice. Prentice Hall. ISBN 978-0136097044.
  42. ^ "Shor's Algorithm – Breaking RSA Encryption". AMS Grad Blog. 2014-04-30. Retrieved 2017-01-17.
  43. ^ Daniel J. Bernstein (2010-03-03). "Grover vs. McEliece" (PDF). Archived (PDF) from the original on 2022-10-10.

Sources[edit]

Further reading[edit]

External links[edit]