Cipher

Cipher
Edward Larsson's rune cipher resembling that found on the Kensington Runestone. Also includes runically-unrelated blackletter writing style and 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. In non-technical usage, a “cipher” is the same thing as a “code”; however, the concepts are distinct in cryptography. In classical cryptography, ciphers were distinguished from codes. 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; it should resemble random gibberish to those not intended to read it.

The operation of a cipher usually depends on a piece of auxiliary information, called a 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. Without knowledge of the key, it should be difficult, if not nearly impossible, to decrypt the resulting ciphertext into readable plaintext.

Most modern ciphers can be categorized in several ways

  • By whether they work on blocks of symbols usually of a fixed size (block ciphers), or on a continuous stream of symbols (stream ciphers).
  • By whether the same key is used for both encryption and decryption (symmetric key algorithms), or if a different key is used for each (asymmetric key algorithms). 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.

Contents

Etymology of “Cipher”

“Cipher” is alternatively spelled “cypher”; similarly “ciphertext” and “cyphertext”, and so forth.

The word “cipher” in former times meant “zero” and had the same origin: Middle French as cifre and Medieval Latin as cifra, from the Arabic صفر ṣifr = zero (see Zero — Etymology). “Cipher” was later used for any decimal digit, even any number. There are many theories about how the word “cipher” may have come to mean “encoding”:

  • Encoding often involved numbers.
  • The Roman number system was very cumbersome because there was no concept of zero (or empty space). The concept of zero (which was also called “cipher”), which we all now think of as natural, was very alien in medieval Europe, so confusing and ambiguous to common Europeans that in arguments people would say “talk clearly and not so far fetched as a cipher”. Cipher came to mean concealment of clear messages or encryption.
    • The French formed the word “chiffre” and adopted the Italian word “zero”.
    • The English used “zero” for “0”, and “cipher” from the word “ciphering” as a means of computing.
    • The Germans used the words “Ziffer” (digit) and “Chiffre”.
    • The Dutch still use the word "cijfer" to refer to a numerical digit.
    • The Italians and the Spanish also use the word "cifra" to refer to a number.

Dr. Al-Kadi[1] concluded that the Arabic word sifr, for the digit zero, developed into the European technical term for encryption.

Ciphers versus codes

In non-technical usage, a “(secret) code” typically means a “cipher”. Within technical discussions, however, the words “code” and “cipher” refer to two different concepts. Codes work at the level of meaning — that is, words or phrases are converted into something else and this chunking generally shortens the message.

An example of this is the Telegraph Code which was used to shorten long telegraph messages which resulted from entering into commercial contracts using exchanges of Telegrams.

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. 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 also used synonymously to substitution and transposition.

Historically, cryptography was split into a dichotomy of codes and ciphers; and coding had its own terminology, analogous to that for 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 of cipher

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 ciphers

Historical pen and paper ciphers used in the past are sometimes known as classical ciphers. They include simple substitution ciphers and transposition ciphers. 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.

Simple ciphers were replaced by polyalphabetic substitution ciphers 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.[citation needed] It is possible to create a secure pen and paper cipher based on one-time pad with the help of a computer that generates random numbers "Unbreakable" Pen&Paper Encryption. The low-point of such a system is complicated management of cipher tables in large deployments.

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 machines, 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 ciphers

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 algorithms (Private-key cryptography), where the same key is used for encryption and decryption, and
  • asymmetric key algorithms (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 Feistel cipher uses a combination of substitution and transposition techniques. Most block cipher algorithms are based on this structure. In an asymmetric key algorithm (e.g., RSA), there are two separate keys: a public key is published and enables any sender to perform encryption, while a private key is kept secret by the receiver and enables only him to perform correct decryption.

Ciphers can be distinguished into two types by the type of input data:

Cipher-taxonomy.svg

Key size and vulnerability

In a pure mathematical attack (i.e., lacking any other information to help break a cipher), three factors above all, count:

  • Mathematical advances that allow new attacks or weaknesses to be discovered and exploited.
  • 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 infeasible 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.

An example of this process can be found at Key Length which uses multiple reports to suggest that a symmetric cipher with 128 bits, an asymmetric cipher with 3072 bit keys, and an elliptic curve cipher with 512 bits, all have similar difficulty at present.

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.

See also

References

  1. ^ Ibrahim A. Al-Kadi, “Cryptography and Data Security: Cryptographic Properties of Arabic”, proceedings of the Third Saudi Engineering Conference. Riyadh, Saudi Arabia: Nov 24-27, Vol 2:910-921., 1991.
  • Richard J. Aldrich, GCHQ: The Uncensored Story of Britain's Most Secret Intelligence Agency, HarperCollins July 2010.
  • Helen Fouché Gaines, “Cryptanalysis”, 1939, Dover. ISBN 0-486-20097-3
  • Ibrahim A. Al-Kadi, “The origins of cryptology: The Arab contributions”, Cryptologia, 16(2) (April 1992) pp. 97–126.
  • David Kahn, The Codebreakers - The Story of Secret Writing (ISBN 0-684-83130-9) (1967)
  • David A. King, The ciphers of the monks - A forgotten number notation of the Middle Ages, Stuttgart: Franz Steiner, 2001 (ISBN 3-515-07640-9)
  • Abraham Sinkov, Elementary Cryptanalysis: A Mathematical Approach, Mathematical Association of America, 1966. ISBN 0-88385-622-0
  • William Stallings, Cryptography and Network Security, principles and practices, 4th Edition

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?
Synonyms:

Look at other dictionaries:

  • Cipher — Ci pher, n. [OF. cifre zero, F. Chiffre figure (cf. Sp.cifra, LL. cifra), fr. Ar. [,c]ifrun, [,c]afrun, empty, cipher, zero, fr. [,c]afira to be empty. Cf. {Zero}.] [1913 Webster] 1. (Arith.) A character [0] which, standing by itself, expresses… …   The Collaborative International Dictionary of English

  • cipher — UK [ˈsaɪfə(r)] / US [ˈsaɪfər] or cypher UK / US noun Word forms cipher : singular cipher plural ciphers 1) [countable/uncountable] a secret system of writing, used for sending messages so that no one can understand them unless they know the… …   English dictionary

  • Cipher — Ci pher, a. Of the nature of a cipher; of no weight or influence. Twelve cipher bishops. Milton. [1913 Webster] …   The Collaborative International Dictionary of English

  • cipher — [sī′fər] n. [ME cifre < OFr cyfre < ML cifra < Ar ṣifr, ṣefr, a cipher, nothing < ṣafara, to be empty] 1. the symbol 0, indicating a value of zero 2. a person or thing of no importance or value 3. a) a system of secret writing based… …   English World dictionary

  • Cipher — Ci pher, v. i. [imp. & p. p. {Ciphered}; p. pr. & vb. n. {Ciphering}.] To use figures in a mathematical process; to do sums in arithmetic. [1913 Webster] T was certain he could write and cipher too. Goldsmith. [1913 Webster] …   The Collaborative International Dictionary of English

  • Cipher — Ci pher, v. t. 1. To write in occult characters. [1913 Webster] His notes he ciphered with Greek characters. Hayward. [1913 Webster] 2. To get by ciphering; as, to cipher out the answer. [1913 Webster] 3. To decipher. [Obs.] Shak. [1913 Webster]… …   The Collaborative International Dictionary of English

  • cipher — [n] zero; nothingness blank, diddly squat*, goose egg*, insignificancy, nada*, naught, nil, nobody, nonentity, nothing, nought, nullity, squat, zilch, zip, zippo*, zot*; concepts 668,787 cipher [v] figure out code break, calculate, clear up,… …   New thesaurus

  • cipher — index blank (emptiness), calculate, designation (symbol), indicant, nonentity Burton s Legal Thesaurus. William C. Burton …   Law dictionary

  • cipher — is the recommended spelling, not cypher …   Modern English usage

  • cipher — (also cypher) ► NOUN 1) a code. 2) a key to a code. 3) an unimportant person or thing. 4) dated a zero. ► VERB ▪ encode (a message). ORIGIN Old French cifre, from Arab …   English terms dictionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”