Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Cipher
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Algorithm for encrypting and decrypting information}} {{Other uses}} {{More footnotes|date=March 2009}} [[File:Edward Larsson 1885 I.jpg|thumb|[[Edward Larsson]]'s [[Cipher runes|rune cipher]] resembling that found on the [[:en:Kensington Runestone|Kensington Runestone]]. Also includes runically unrelated [[:en:blackletter|blackletter]] writing style and [[:en:pigpen cipher|pigpen cipher]].]] In [[cryptography]], a '''cipher''' (or '''cypher''') is an [[algorithm]] for performing [[encryption]] or [[decryption]]—a series of well-defined steps that can be followed as a procedure. An alternative, less common term is ''encipherment''. To encipher or encode is to convert information into cipher or code. In common parlance, "cipher" is synonymous with "[[code (cryptography)|code]]", as they are both a set of steps that encrypt a message; however, the concepts are distinct in cryptography, especially [[classical cryptography]]. Codes generally substitute different length strings of characters in the output, while ciphers generally substitute the same number of characters as are input. A code maps one meaning with another. Words and phrases can be coded as letters or numbers. Codes typically have direct meaning from input to key. Codes primarily function to save time. Ciphers are algorithmic. The given input must follow the cipher's process to be solved. Ciphers are commonly used to encrypt written information. Codes operated by substituting according to a large [[codebook]] which linked a random string of characters or numbers to a word or phrase. For example, "UQJHSE" could be the code for "Proceed to the following coordinates.". When using a cipher the original information is known as [[plaintext]], and the encrypted form as [[ciphertext]]. The ciphertext message contains all the information of the plaintext message, but is not in a format readable by a human or computer without the proper mechanism to decrypt it. The operation of a cipher usually depends on a piece of auxiliary information, called a [[key (cryptography)|key]] (or, in traditional [[NSA]] parlance, a ''cryptovariable''). The encrypting procedure is varied depending on the key, which changes the detailed operation of the algorithm. A key must be selected before using a cipher to encrypt a message, with some exceptions such as [[ROT13]] and [[Atbash]]. Most modern ciphers can be categorized in several ways: * By whether they work on blocks of symbols usually of a fixed size ([[block cipher]]s), or on a continuous stream of symbols ([[stream cipher]]s). * By whether the same key is used for both encryption and decryption ([[symmetric key algorithm]]s), or if a different key is used for each ([[asymmetric key algorithm]]s). If the algorithm is symmetric, the key must be known to the recipient and sender and to no one else. If the algorithm is an asymmetric one, the enciphering key is different from, but closely related to, the deciphering key. If one key cannot be deduced from the other, the asymmetric key algorithm has the public/private key property and one of the keys may be made public without loss of confidentiality. ==Etymology== Originating from the Sanskrit word for zero शून्य (śuṇya), via the Arabic word صفر (ṣifr), the word "cipher"(see etymology) spread to Europe as part of the Arabic numeral system during the Middle Ages. The Roman numeral system lacked the concept of [[0|zero]], and this limited advances in mathematics. In this transition, the word was adopted into Medieval Latin as cifra, and then into Middle French as cifre. This eventually led to the English word cipher (minority spelling cypher). One theory for how the term came to refer to encoding is that the concept of zero was confusing to Europeans, and so the term came to refer to a message or communication that was not easily understood.<ref>{{cite book |title=The Muslim Next Door: The Qur'an, the Media, and That Veil Thing |first=Sumbul |last=Ali-Karamali |year=2008 |pages=240–241 |publisher=White Cloud Press |isbn=978-0974524566}}</ref> The term ''cipher'' was later also used to refer to any Arabic digit, or to calculation using them, so encoding text in the form of Arabic numerals is literally converting the text to "ciphers". ==Versus codes== {{Main|Code (cryptography)}} In casual contexts, "code" and "cipher" can typically be used interchangeably; however, the technical usages of the words refer to different concepts. Codes contain meaning; words and phrases are assigned to numbers or symbols, creating a shorter message. An example of this is the [[commercial code (communications)|commercial telegraph code]] which was used to shorten long telegraph messages which resulted from entering into commercial contracts using exchanges of [[telegram]]s. Another example is given by whole word ciphers, which allow the user to replace an entire word with a symbol or character, much like the way written Japanese utilizes [[Kanji]] (meaning Chinese characters in Japanese) characters to supplement the native Japanese characters representing syllables. An example using English language with Kanji could be to replace "The quick brown fox jumps over the lazy dog" by "The quick brown 狐 jumps 上 the lazy 犬". [[Shorthand|Stenographers]] sometimes use specific symbols to abbreviate whole words. Ciphers, on the other hand, work at a lower level: the level of individual letters, small groups of letters, or, in modern schemes, individual bits and blocks of bits. Some systems used both codes and ciphers in one system, using [[superencipherment]] to increase the security. In some cases the terms ''codes'' and ''ciphers'' are used synonymously with ''substitution'' and ''transposition'', respectively. Historically, cryptography was split into a dichotomy of codes and ciphers, while coding had its own terminology analogous to that of ciphers: "''encoding'', ''codetext'', ''decoding''" and so on. However, codes have a variety of drawbacks, including susceptibility to [[cryptanalysis]] and the difficulty of managing a cumbersome [[codebook]]. Because of this, codes have fallen into disuse in modern cryptography, and ciphers are the dominant technique. ==Types== There are a variety of different types of encryption. Algorithms used earlier in the [[history of cryptography]] are substantially different from modern methods, and modern ciphers can be classified according to how they operate and whether they use one or two keys. ===Historical=== [[File:Caesar cipher left shift of 3.svg|thumb|Visual representation of how Caesar's Cipher works.]] The [[Caesar cipher|Caesar Cipher]] is one of the earliest known cryptographic systems. Julius Caesar used a cipher that shifts the letters in the alphabet in place by three and wrapping the remaining letters to the front to write to Marcus Tullius Cicero in approximately 50 BC.{{cn|date=March 2023}} Historical pen and paper ciphers used in the past are sometimes known as [[classical cipher]]s. They include simple [[substitution cipher]]s (such as [[ROT13]]) and [[transposition cipher]]s (such as a [[Rail Fence Cipher]]). For example, "GOOD DOG" can be encrypted as "PLLX XLP" where "L" substitutes for "O", "P" for "G", and "X" for "D" in the message. Transposition of the letters "GOOD DOG" can result in "DGOGDOO". These simple ciphers and examples are easy to crack, even without plaintext-ciphertext pairs.<ref>{{Cite journal|last=Saltzman|first=Benjamin A.|title=Vt hkskdkxt: Early Medieval Cryptography, Textual Errors, and Scribal Agency (Speculum, forthcoming)|url=https://www.academia.edu/35034685|journal=Speculum|year=2018 |volume=93|issue=4|page=975|doi=10.1086/698861 |jstor=26584834 |s2cid=165362817|language=en}}</ref><ref>{{Cite book |last=Janeczko |first=Paul B |title=Top Secret |year=2004}}</ref> In the 1640s, the Parliamentarian commander, [[Edward Montagu, 2nd Earl of Manchester]], developed ciphers to send coded messages to his allies during the [[English Civil War]].<ref>{{cite web |title=English Civil War cipher belonging to Cromwell ally goes on display |url=https://the-past.com/news/english-civil-war-cipher-belonging-to-cromwell-ally-goes-on-display/ |website=The Past |date=12 July 2023 |access-date=4 August 2023}}</ref> The English theologian John Wilkins published a book in 1641 titled "Mercury, or The Secret and Swift Messenger" and described a musical cipher wherein letters of the alphabet were substituted for music notes.<ref>{{cite web |title=Types of Ciphers |url=https://www.audiocipher.com/post/types-of-ciphers |website=AudioCipher |date=26 February 2025 |access-date=14 March 2025}}</ref><ref>{{cite web |title=Mercury: Or the Secret and Swift Messenger |url=https://www.lybrary.com/mercury-or-the-secret-and-swift-messenger-p-5897.html |website=Lybrary |access-date=14 March 2025}}</ref> This species of melodic cipher was depicted in greater detail by author Abraham Rees in his book Cyclopædia (1778). <ref>{{cite web |title=Cyclopaedia |url=https://archive.org/details/cyclopaediaoruni08rees |website=Internet Archive |access-date=14 March 2025}}</ref> Simple ciphers were replaced by [[polyalphabetic substitution]] ciphers (such as the [[Vigenère cipher|Vigenère]]) which changed the substitution alphabet for every letter. For example, "GOOD DOG" can be encrypted as "PLSX TWF" where "L", "S", and "W" substitute for "O". With even a small amount of known or estimated plaintext, simple polyalphabetic substitution ciphers and letter transposition ciphers designed for pen and paper encryption are easy to crack.<ref>{{citation|first=Douglas R.|last=Stinson|author-link = Doug Stinson|title=Cryptogtaphy / Theory and Practice|year=1995|publisher=CRC Press|isbn=0-8493-8521-0|page=45}}</ref> It is possible to create a secure pen and paper cipher based on a [[one-time pad]], but these have other disadvantages. During the early twentieth century, electro-mechanical machines were invented to do encryption and decryption using transposition, polyalphabetic substitution, and a kind of "additive" substitution. In [[rotor machine]]s, several rotor disks provided polyalphabetic substitution, while plug boards provided another substitution. Keys were easily changed by changing the rotor disks and the plugboard wires. Although these encryption methods were more complex than previous schemes and required machines to encrypt and decrypt, other machines such as the British [[Bombe]] were invented to crack these encryption methods. ===Modern=== Modern encryption methods can be divided by two criteria: by type of key used, and by type of input data. By type of key used ciphers are divided into: * [[symmetric key algorithm]]s ([[Private-key cryptography]]), where one same key is used for encryption and decryption, and * [[File:AES (Rijndael) Round Function.png|thumb]][[asymmetric key algorithm]]s ([[Public-key cryptography]]), where two different keys are used for encryption and decryption. In a symmetric key algorithm (e.g., DES and AES), the sender and receiver must have a shared key set up in advance and kept secret from all other parties; the sender uses this key for encryption, and the receiver uses the same key for decryption. The design of AES (Advanced Encryption System) was beneficial because it aimed to overcome the flaws in the design of the DES (Data encryption standard). AES's designer's claim that the common means of modern cipher cryptanalytic attacks are ineffective against AES due to its design structure. Ciphers can be distinguished into two types by the type of input data: * [[block cipher]]s, which encrypt block of data of fixed size, and * [[stream cipher]]s, which encrypt continuous streams of data. ==Key size and vulnerability== In a pure mathematical attack, (i.e., lacking any other information to help break a cipher) two factors above all count: * Computational power available, i.e., the computing power which can be brought to bear on the problem. It is important to note that average performance/capacity of a single computer is not the only factor to consider. An adversary can use multiple computers at once, for instance, to increase the speed of [[exhaustive search]] for a key (i.e., "brute force" attack) substantially. * [[Key size]], i.e., the size of key used to encrypt a message. As the key size increases, so does the complexity of [[exhaustive search]] to the point where it becomes impractical to crack encryption directly. Since the desired effect is computational difficulty, in theory one would choose an [[algorithm]] and desired difficulty level, thus decide the key length accordingly. [[Claude Shannon]] proved, using information theory considerations, that any theoretically unbreakable cipher must have keys which are at least as long as the plaintext, and used only once: [[one-time pad]].<ref name="Shannon One-Time Pad Secrecy">{{cite web |url=http://netlab.cs.ucla.edu/wiki/files/shannon1949.pdf#page=27 |title=Communication Theory of Secrecy Systems |access-date=February 3, 2019 |archive-date=June 5, 2007 |archive-url=https://web.archive.org/web/20070605092733/http://netlab.cs.ucla.edu/wiki/files/shannon1949.pdf#page=27 |url-status=dead }}</ref> ==See also== * [[Autokey cipher]] * [[Cover-coding]] * [[Encryption software]] * [[List of ciphertexts]] * [[Pigpen Cipher]] * [[Steganography]] * [[Telegraph code]] ==Notes== {{reflist}} ==References== * {{cite journal | last=Al-Kadi | first=Ibrahim A. | title=Origins of Cryptology: The Arab Contributions | journal=[[Cryptologia]] | volume=16 | issue=2 | date=1992 |s2cid=62601575 | doi=10.1080/0161-119291866801 | pages=97–126}} * {{cite book | last=Aldrich | first=Richard James |title=GCHQ: The Uncensored Story of Britain's Most Secret Intelligence Agency | publisher=[[HarperCollins UK]] | publication-place=London |url=https://archive.org/details/gchquncensoredst0000aldr | date=2010 | isbn=978-0-00-727847-3 | oclc=503638180 |author-link=Richard J. Aldrich}} * {{cite journal | last=Caldwell | first=William Casey | title=Shakespeare's ''Henry V'' and the Ciphers of History | journal=[[SEL: Studies in English Literature 1500–1900]] | volume=61 | issue=2 | date=2022 | issn=1522-9270 | doi=10.1353/sel.2022.0003 | pages=241–268}} * {{Cite book |last=Gaines |first=Helen Fouché |title=Cryptanalysis |year=1956 |isbn=0-486-20097-3 |edition=Corrected |publisher=[[Dover Publications]] |publication-place=New York |url=https://archive.org/details/cryptanalysis00hele |ol=7634764M |author-link=Helen Fouché Gaines |orig-date=1939}} * {{Cite conference |last1=Ho |first1=Yean Li |last2=Samsudin |last3=Belaton |first3=Bahari |first2=Azman |title=Heuristic Cryptanalysis of Classical and Modern Ciphers |conference=2005 13th IEEE International Conference on Networks, Jointly held with the 2005 IEEE 7th Malaysia International Conference on Communication |url=https://ieeexplore.ieee.org/document/1635595 |publisher=[[IEEE]] |date=2005 |volume=2 |pages=710–715 |doi=10.1109/ICON.2005.1635595 |publication-place=Kuala Lumpur |access-date=2024-06-30 |url-access=subscription}} * {{Cite book |last=Kahn |first=David |title=The Codebreakers – The Story of Secret Writing |year=1996 |isbn=0-684-83130-9 |edition=Revised |location=New York |oclc=35159231 |author-link=David Kahn (writer) |orig-date=1967 |title-link=The Codebreakers}} * {{Cite web |url=https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes |title=Ciphers vs. codes |access-date=2024-06-30 |website=[[Khan Academy]] |archive-url=https://web.archive.org/web/20240117234055/https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes |archive-date=2024-01-17 |url-status=live}} * {{Cite web |url=https://www.audiocipher.com/post/types-of-ciphers |title=Types of Ciphers: Early Alphabet Codes to Music & Cypherpunk |date=26 February 2025 |access-date=2025-03-14 }} * {{cite book | last=King | first=David A. | title=The Ciphers of the Monks: A Forgotten Number-notation of the Middle Ages | publisher=[[Franz Steiner Verlag]] | publication-place=Stuttgart |url=https://archive.org/details/the-ciphers-of-the-monks-a-forgotten-number-notation-of-the-middle-ages-by-david-a.-king-z-lib.org | date=2001 | isbn=3-515-07640-9 |author-link=David A. King (historian)}} * {{cite journal | last1=Luciano | first1=Dennis | last2=Prichett | first2=Gordon | title=Cryptology: From Caesar Ciphers to Public-key Cryptosystems |url=https://doi.org/10.1080/07468342.1987.11973000 | journal=[[The College Mathematics Journal]] |access-date=2023-02-19 | volume=18 | issue=1 | date=1987 | doi=10.1080/07468342.1987.11973000 |s2cid=14686417 |jstor=2686311 | pages=2–17| url-access=subscription }} * {{cite book | last=Sinkov | first=Abraham | title=Elementary Cryptanalysis: A Mathematical Approach | publisher=[[Mathematical Association of America|Mathematical Association of America Press]] | publication-place=New York |date=1968 | isbn=0-88385-622-0 |ol=149668W |author-link=Abraham Sinkov}} * {{Cite book |last=Stallings |first=William |title=Cryptography and Network Security: Principles and Practices |publisher=[[Pearson Plc|Pearson]] |isbn=978-0-13-670722-6 |edition=8th |publication-date=2020-01-03 |url=https://www.pearson.com/en-us/subject-catalog/p/cryptography-and-network-security-principles-and-practice/P200000003477/9780136707226 |author-link=William Stallings |access-date=2024-06-30}} * {{cite book | last1=Stinson | first1=Douglas Robert | last2=Paterson | first2=Maura | title=Cryptography: Theory and Practice |edition=6th | publisher=[[CRC Press]] | date=2023-01-09 | isbn=978-1-032-47604-9 |author-link=Doug Stinson}} ==External links== {{Wiktionary|cipher}} * [http://www.scholarpedia.org/article/Secure_communications_using_the_KLJN_scheme Kish cypher] {{Cryptography navbox}} {{Authority control}} [[Category:Cryptography]] [[Category:Ciphers|*]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Authority control
(
edit
)
Template:Citation
(
edit
)
Template:Cite book
(
edit
)
Template:Cite conference
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite web
(
edit
)
Template:Cn
(
edit
)
Template:Cryptography navbox
(
edit
)
Template:Main
(
edit
)
Template:More footnotes
(
edit
)
Template:Other uses
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Sister project
(
edit
)
Template:Wiktionary
(
edit
)