Cryptanalysis is the study of analyzing information systems in order to study the hidden aspects of the systems. Cryptanalysis is used to breach cryptographic security systems and gain access to the contents of encrypted messages, methods for breaking modern cryptosystems often involve solving carefully constructed problems in pure mathematics, the best-known being integer factorization. Given some encrypted data, the goal of the cryptanalyst is to gain as much information as possible about the original, attacks can be classified based on what type of information the attacker has available. 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 he knows the corresponding plaintext. Chosen-plaintext, the attacker can obtain the corresponding to an arbitrary set of plaintexts of his own choosing. Adaptive chosen-plaintext, like an attack, except the attacker can choose subsequent plaintexts based on information learned from previous encryptions. 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. Attacks can also be characterised by the resources they require and those resources include, Time — the number of computation steps which must be performed. Memory — the amount of required to perform the attack. Data — the quantity and type of plaintexts and ciphertexts required for a particular approach and its sometimes difficult to predict these quantities precisely, especially when the attack isnt 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, the results of cryptanalysis can also vary in usefulness. Global deduction — the attacker discovers a functionally equivalent algorithm for encryption and decryption, instance deduction — the attacker discovers additional plaintexts not previously known. Information deduction — the attacker gains some Shannon information about plaintexts 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 cipher or hash function with some rounds removed. In academic cryptography, a weakness or a break in a scheme is defined quite conservatively, it might require impractical amounts of time, memory. Furthermore, it might reveal a small amount of information, enough to prove the cryptosystem imperfect. Finally, an attack might only apply to a version of cryptographic tools, like a reduced-round block cipher. In practice, they are viewed as two sides of the coin, secure cryptography requires design against possible cryptanalysis
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.
First page of Al-Kindi's 9th century Manuscript on Deciphering Cryptographic Messages