














Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
An historical overview of encryption methods, focusing on symmetric and asymmetric key encryption. From Caesar cipher to Enigma machine, and from symmetric key algorithms like AES to asymmetric key algorithms like Diffie-Hellman, this text explores the development of encryption techniques and their significance in secure communication. Understanding the concepts of encryption, ciphers, and cryptanalysis is essential for protecting valuable information in an increasingly digital world.
Typology: Exercises
1 / 22
This page cannot be seen from the preview
Don't miss anything!
by
Nicholas G. McDonald
Abstract Cryptography and encryption have been used for secure communication for thousands of years. Throughout history, military communication has had the greatest influence on encryption and the advancements thereof. The need for secure commercial and private communication has been led by the Information Age, which began in the 1980's. Although the Internet had been invented in the late 1960's, it did not gain a public face until the World Wide Web was invented in 1989. The World Wide Web is an electronic protocol which allows people to communicate mail, information, and commerce through a digital medium. This new method of information exchange has caused a tremendous need for information security. A thorough understanding of cryptography and encryption will help people develop better ways to protect valuable information as technology becomes faster and more efficient.
Introduction and Terminology
Cryptography Cryptography is the science or study of techniques of secret writing and message hiding (Dictionary.com 2009). Cryptography is as broad as formal linguistics which obscure the meaning from those without formal training. It is also as specific as modern encryption algorithms used to secure transactions made across digital networks. Cryptography constitutes any method in which someone attempts to hide a message, or the meaning thereof, in some medium.
Encryption Encryption is one specific element of cryptography in which one hides data or information by transforming it into an undecipherable code. Encryption typically uses a specified parameter or key to perform the data transformation. Some encryption algorithms require the key to be the same length as the message to be encoded, yet other encryption algorithms can operate on much smaller keys relative to the message. Decryption is often classified along with encryption as it's opposite. Decryption of encrypted data results in the original data.
Encryption is used in everyday modern life. Encryption is most used among transactions over insecure channels of communication, such as the internet. Encryption is also used to protect data being transferred between devices such as automatic teller machines (ATMs), mobile telephones, and many more. Encryption can be used to create digital signatures, which allow a message to be authenticated. When properly implemented, a digital signature gives the recipient of a message reason to believe the message was sent by the claimed sender. Digital signatures are very useful when sending sensitive email and other types of digital communication. This is relatively equivalent to traditional handwritten signatures, in that, a more complex signature carries a more complex method of forgery.
Cipher A cipher is an algorithm, process, or method for performing encryption and decryption. A cipher has a set of well-defined steps that can be followed to encrypt and decrypt messages. The operation of a
cipher usually depends largely on the use of an encryption key. The key may be any auxiliary information added to the cipher to produce certain outputs.
Plaintext vs. Ciphertext Plaintext and ciphertext are typically opposites of each other. Plaintext is any information before it has been encrypted. Ciphertext is the output information of an encryption cipher. Many encryption systems carry many layers of encryption, in which the ciphertext output becomes the plaintext input to another encryption layer. The process of decryption takes ciphertext and transforms it back into the original plaintext.
Cryptanalysis In efforts to remain secure, Governments have employed staff for studying encryption and the breaking thereof. Cryptanalysis is the procedures, processes, and methods used to translate or interpret secret writings or communication as codes and ciphers for which the key is unknown (Dictionary.com 2009). Even though the goal has been the same, the methods and techniques of cryptanalysis have changed drastically through time. These changes derive from an attempt to adapt to the increasing complexity of cryptography.
Due to the tremendous advantage of knowing an enemies thoughts, war is the main driving force of cryptanalysis. Throughout history many governments have employed divisions solely for cryptanalysis during war time. Within the last century, governments have employed permanent divisions for this purpose.
Historical Cryptography
Ancient Egypt The earliest known text containing components of cryptography originates in the Egyptian town Menet Khufu on the tomb of nobleman Khnumhotep II nearly 4,000 years ago. In about 1900 B.C. Khnumhotep's scribe drew his master's life in his tomb. As he drew the hieroglyphics he used a number of unusual symbols to obscure the meaning of the inscriptions. This method of encryption is an example of a substitution cipher, which is any cipher system which substitutes one symbol or character for another.
Figure 1. Symbols taken from the tomb of Khnumhotep II.
Figure 3. Example of a substitution cipher
Unlike the example found in Figure 3, Caesar typically just shifted his letters by some predetermined number. This number was the cipher key of his algorithm. A randomized order of substitution yields a much larger amount of security due to the larger amount of possible orderings.
Alberti-Vigenere Cipher During the mid 1400's a man named Leon Battista Alberti invented an encryption system using a cipher disk. This was a mechanical device with sliding disks that allowed for many different methods of substitution. This is the base concept of a poly alphabetic cipher, which is an encryption method which switches through several substitution ciphers throughout encryption. In his book "The Codebreakers", David Kahn calls Alberti "the father of western cryptography" (Kahn 1967). Alberti never developed his cipher disk concept.
Figure 4. Cipher disk
In the 1500's Blaise De Vigenere, following Alberti's poly alphabetic cipher style, created a cipher that came to be known as the Vigenere Cipher. The Vigenere Cipher works exactly like the Caesar except that it changes the key throughout the encryption process. The Vigenere Cipher uses a grid of letters that give the method of substitution. This grid is called a Vigenere Square or a Vigenere Table. The grid is made up of 26 alphabets offset from each other by one letter.
The method of changing from one key to another follows chosen as a special secret word. The first character of the plaintext can follows: The substituted letter for the first plaintext chara character on the x-axis and the first letter of the special secret word letter is then substituted for the plaintext character. This method is repeated through all characters of the key word. After all characters of the key word are used, the word is just repeated.
For example, suppose that the plaintext to be encrypted is :
ATTACKATDAWN
The person encrypting the message chooses a keyword and repeats it until its length matches the plaintext. For example "LEMON."
LEMONLEMONLE
The first letter of the plaintext is enciphered using the alphabet in row keyword. The substitution is made by finding the letter in row next letter, the substitution is made by finding the letter in row repeated until each plaintext character
Plaintext: ATTACKATDAWN Keyword: LEMONLEMONLE Ciphertext: LXFOPVEFRNHR
The decryption algorithm is the exact same except that the person finds the column that corresponds to the ciphertext's character in the keyword's row.
Figure 5. Vigenere Square
rom one key to another follows one simple pattern. The encryption key was chosen as a special secret word. The first character of the plaintext can be substituted using the table as The substituted letter for the first plaintext character is found by lining up the plaintext axis and the first letter of the special secret word on the y-axis. The corresponding letter is then substituted for the plaintext character. This method is repeated through all characters of e key word. After all characters of the key word are used, the word is just repeated.
For example, suppose that the plaintext to be encrypted is :
The person encrypting the message chooses a keyword and repeats it until its length matches the
The first letter of the plaintext is enciphered using the alphabet in row L , which is the first letter of the keyword. The substitution is made by finding the letter in row L and column A , which is next letter, the substitution is made by finding the letter in row E and column T , which is character has been substituted. The results are:
The decryption algorithm is the exact same except that the person finds the column that corresponds to in the keyword's row.
one simple pattern. The encryption key was be substituted using the table as cter is found by lining up the plaintext
. The corresponding letter is then substituted for the plaintext character. This method is repeated through all characters of
The person encrypting the message chooses a keyword and repeats it until its length matches the
, which is the first letter of the , which is L. Moving to the , which is X. This is
The decryption algorithm is the exact same except that the person finds the column that corresponds to
The Zimmerman Telegram was a secret communication between the Foreign Secretary of the German Empire, Arthur Zimmerman, to the German ambassador in Mexico, Heinrich von Eckardt. The telegram contained an offer for Mexico to reclaim its territory of New Mexico, Texas, and Arizona if it joined the German cause. In spite of this offer, Mexico concluded that it would not be feasible or even desirable to take over their former territories.
At the time when the telegram was sent, World War I was at its height. Until that point, the United States had attempted to remain neutral. British, and other allies, had begged for help from the U.S., and attitudes in the US were slowly shifting towards war. The British gave the U.S. the decoded telegram on February 24, 1917 and on April 6, 1917 the U.S. officially declared war against Germany and its allies.
Figure 7. Encoded Zimmerman Telegram Figure 8. Decoded Zimmerman Telegram
Choctaw Codetalkers As WWI went on, the United States had the continuing problem of the lack of secure communication. Almost every phone call made was intercepted by the Germans, leaving every move made by the allies known to the Germans. Army commander, Captain Lewis devised a plan that utilized American Indian languages. He found eight Choctaw men in the battalion and used them to talk to each other over radio and phone lines. Their language was valuable because ordinary codes and ciphers of a shared language can be broken, whereas codes based on a unique language must be studied extensively before beginning to decode them. Within 24 hours of using the Choctaw language as encryption, the advantage fell in favor of the United States. Within 72 hours, the Germans were retreating and the allies were in full attack.
War Driven Cryptography
Enigma Encryption Machine At the end of World War I, Arthur Scherbius invented the was used for encryption and decryption of that allowed up to 10^114 possible configurations. Because of the numerous configurations, the Enigma was virtually unbreakable with brute force methods. The first commercially available in the 1920's.
Figure 9. Enigma encryption machine used by Nazi Germany
It wasn't until World War II that the Enigma gained it's fame. Due to the Enigma's statistical security, Nazi Germany became overconfident about their ability to encrypt secret messages. This overconfidence caused the downfall of the Enigma. Along with Enigma had several built in weaknesses that Allied cryptographers exploited. The major weakness was that it's substitution algorithm did not cryptographers to decrypt a vast number of ciphered messages sent by Nazi Germans.
Purple While the Allied forces were focusing on cracking the encryption machine called Purple. In contrast to the Enigma's rotors, Purple was switches commonly used for routing telephone signals. During the war, the Japanese were most efficient in destroying their encryption machines. Currently, not one complete Purple machine has been discovered.
War Driven Cryptography - WWII
Enigma Encryption Machine At the end of World War I, Arthur Scherbius invented the Enigma, an electro-mechanical machine that was used for encryption and decryption of secret messages. The Enigma had several rotors and gears possible configurations. Because of the numerous configurations, the Enigma ly unbreakable with brute force methods. The first commercially available versions were
Figure 9. Enigma encryption machine used by Nazi Germany
It wasn't until World War II that the Enigma gained it's fame. Due to the Enigma's statistical security, Nazi Germany became overconfident about their ability to encrypt secret messages. This overconfidence caused the downfall of the Enigma. Along with numerous German operator errors, the Enigma had several built in weaknesses that Allied cryptographers exploited. The major weakness was substitution algorithm did not allow any letter to be mapped to itself. This allowed the Allied ers to decrypt a vast number of ciphered messages sent by Nazi Germans.
While the Allied forces were focusing on cracking the German Enigma, the Japanese developed an encryption machine called Purple. In contrast to the Enigma's rotors, Purple was made using stepping switches commonly used for routing telephone signals. During the war, the Japanese were most efficient in destroying their encryption machines. Currently, not one complete Purple machine has been
mechanical machine that several rotors and gears possible configurations. Because of the numerous configurations, the Enigma versions were
It wasn't until World War II that the Enigma gained it's fame. Due to the Enigma's statistical security, Nazi Germany became overconfident about their ability to encrypt secret messages. This numerous German operator errors, the Enigma had several built in weaknesses that Allied cryptographers exploited. The major weakness was allow any letter to be mapped to itself. This allowed the Allied
developed an made using stepping switches commonly used for routing telephone signals. During the war, the Japanese were most efficient in destroying their encryption machines. Currently, not one complete Purple machine has been
The one-time pad is typically implemented by using a modular addition (XOR) to combine plaintext elements with key elements. An example of this is shown in Figure 11. The key used for encryption is also used for decryption. Applying the same key to the ciphertext results back to the plaintext.
Figure 11. Example of a One-Time Pad implementation using modular addition.
Pseudo-Random Number Generator If any non-randomness occurs in the key of a one-time pad, the security is decreased and thus no more unbreakable. Numerous attempts have been made to create seemingly random numbers from a designated key. These number generators are called Pseudo-Random Number Generators (PRNGs) because they cannot give a completely random number stream. Even though the security of a PRNG is not 100% unbreakable, it can provide sufficient security when implemented correctly. PRNGs that have been designated secure for cryptographic use are called Cryptographically Secure Pseudo-Random Number Generators (CSPRNGs). CSPRNGs have qualities that other PRNGs do not. CSPRNGs must pass the "next-bit test" in that given the first k bits, there is no polynomial-time algorithm that can predict the ( k +1)th^ bit with probability of success higher than 50% (Knuth 1981). CSPRNGs must also withstand "state compromises." In the event that part or all of its state is revealed, it should be impossible to reconstruct the stream of random numbers prior to the revelation.
Symmetric Key Encryption (Private-Key) Up to this point in the discussion, every method of encryption requires a special secret key to be previously and securely established. This is the nature of symmetric key encryption. A symmetric key, sometimes called private-key, encryption cipher is any algorithm in which the key for encryption is trivially related to the key used for decryption. An analogy of this is a typical mechanical lock. The same key that engages the lock can disengage it. To protect anything valuable behind the lock, the key must be given to each member securely. If an unintended person obtains access to the key, he or she will have full access to what is being secured by the lock.
Figure 12. A lock that is engaged and disengaged by the same key.
Implementations of Symmetric Key Encryption There are several modern algorithms that implement a symmetric key encryp of symmetric key encryption is a stream cipher, where a stream of random, or pseudo are combined with the original message. Specific stream ciphers include: Feedback Shift Register (LFSR), Line and is used in Secure Socket Layer (SSL) and Wired Equivalent Privacy (WEP).
Another method of symmetric key encryption is a block cipher, which operates on a fixed of bits. When encrypting, a block cipher takes a set amount of bits (i.e. 128 outputs a corresponding same size (i.e. 128 cipher is controlled by the encryption/decryption DES, and AES. AES is an encryption standard adopted by the U.S. government and has been approved by the National Security Agency (NSA) for encryption of "top secret" information. Many current methods of symmetric key encryption employ both stream and block schemes.
Modern Encryption - Part 2
Asymmetric Key Encryption (Public The digital era of the 1970's caused a need for an encryption system that would rely on a predetermined key. Cryptographers of this era realized that in order to send a message securely without previously meeting with the recipient, they would need a syst does for decryption. In comparison with symmetric key encryption, this system would compare to a lock that has one key for engaging the lock and a different key for disengaging the lock.
Figure 12. A lock that is engaged and disengaged by the same key.
Implementations of Symmetric Key Encryption algorithms that implement a symmetric key encryption scheme. One method of symmetric key encryption is a stream cipher, where a stream of random, or pseudo- are combined with the original message. Specific stream ciphers include: One-Time Pad, Feedback Shift Register (LFSR), Linear Congruential, and RC4. RC4 is the most widely-used stream cipher and is used in Secure Socket Layer (SSL) and Wired Equivalent Privacy (WEP).
Another method of symmetric key encryption is a block cipher, which operates on a fixed
. When encrypting, a block cipher takes a set amount of bits (i.e. 128-bit block) of plaintext and outputs a corresponding same size (i.e. 128-bit) block of ciphertext. The exact transformation of a block cipher is controlled by the encryption/decryption key. Popular block ciphers include: Blowfish, Twofish, DES, and AES. AES is an encryption standard adopted by the U.S. government and has been approved by the National Security Agency (NSA) for encryption of "top secret" information. Many current ods of symmetric key encryption employ both stream and block schemes.
Part 2
Asymmetric Key Encryption (Public-Key) The digital era of the 1970's caused a need for an encryption system that would rely on a predetermined key. Cryptographers of this era realized that in order to send a message securely without previously ey would need a system that uses a different key for encryption than it decryption. In comparison with symmetric key encryption, this system would compare to a lock that has one key for engaging the lock and a different key for disengaging the lock.
tion scheme. One method
Another method of symmetric key encryption is a block cipher, which operates on a fixed-length groups bit block) of plaintext and bit) block of ciphertext. The exact transformation of a block key. Popular block ciphers include: Blowfish, Twofish, DES, and AES. AES is an encryption standard adopted by the U.S. government and has been approved by the National Security Agency (NSA) for encryption of "top secret" information. Many current
The digital era of the 1970's caused a need for an encryption system that would rely on a predetermined key. Cryptographers of this era realized that in order to send a message securely without previously a different key for encryption than it decryption. In comparison with symmetric key encryption, this system would compare to a lock
the medium. Also notice that " K " was not previously determined, rather it was a result to both Alice and Bob's computations. This allows each party access to the same key without ever having to see each other. A disadvantage of the Diffie-Hellman key exchange is that it does not contain the function of encryption. A predetermined message cannot be inserted into the algorithm. The transmitted number is simply the result of computation, of which is purposely hard to decompose. In order for " K " to be discovered by someone besides Alice and Bob, a logarithm of " A " or " B " must be computed. When extremely large numbers for " a ", " b ", and " p " are chosen, it could take billions of years to compute the logarithm of " A " or " B. "
RSA Encryption Noticing the inability of the Diffie-Hellman Key Exchange to transmit a secret message, Ron Rivest, Adi Shamir, and Leonard Adleman developed a system similar to the Diffie-Hellman protocol except that a message could be embedded and transmitted.
Figure 15. Ron Rivest, Adi Shamir, and Leonard Adleman
RSA encryption, named for the surnames of the inventors, relies on multiplication and exponentiation being much faster than prime factorization. The entire protocol is built from two large prime numbers. These prime numbers are manipulated to give a public key and private key. Once these keys are generated they can be used many times. Typically one keeps the private key and publishes the public key. Anyone can then encrypt a message using the public key and sent it to the creator of the keys. This person then uses the private key to decrypt the message. Only the one possessing the private key can decrypt the message. One of the special numbers generated and used in RSA encryption is the modulus, which is the product of the two large primes. In order to break this system, one must compute the prime factorization of the modulus, which results in the two primes. The strength of RSA encryption depends on the difficultly to produce this prime factorization. RSA Encryption is the most widely used asymmetric key encryption system used for electronic commerce protocols.
Breaking RSA Keys The patent holder of RSA Encryption, RSA Security or RSA Laboratories, issued a challenge to encourage research into the practical difficulty of factorizing large integers. The motivation behind the challenge was to credit RSA Encryption to be a super power in the cryptography field. In 2007, RSA Laboratories ended the challenge stating: "Now that the industry has a considerably more advanced understanding of the cryptanalytic strength of common symmetric-key and public-key algorithms, these challenges are no longer active" (RSA Laboratories 2007).
During the activity of the RSA factoring challenge, RSA Laboratories published a list of semi-primes (numbers with exactly two prime factors) known as RSA numbers. Several of these numbers had cash prizes if they were successfully factored. Many of the smaller numbers were factored during the 1990's. During the early 2000's, a few decently large RSA numbers were factored, one of which took 80 computers 5 months to compute, and had a cash prize of $20,000. Some of the numbers that were never factored were worth $100,000 and $200,000. These larger numbers are estimated to take billions of years to factor on a single computer. In contrast, they can be generated in less than a minute.
Steganography
Security Through Obscurity Steganography is a form of cryptography that embeds data into other mediums in an unnoticeable way, instead of employing encryption. Mediums used for steganography are typically human viewable objects such as picture, audio, and video files. Other steganographic mediums can include web pages, communication protocols, data streams, and many more. A very simple implementation of steganography could be invisible ink written between visible lines of text in a document.
Large scale steganography, performed with computers, is typically based on human undeterminable numbers. For example, the typical audio WAV file represents one audio sample with a 16-bit number ranging from 0 to 65535. A person could split up the secret message into it bits and embed them one at a time into each audio sample, thus only changing the amplitude of the sample by 1. This means that if an actual audio sample was represented by 12345 it could only change by one. The human ear is very far from hearing this change. In this way, the secret message is put into the audio file without noticeable change and without altering the file's size. A random person would not be able to tell that an embedded message even exists. This is where the phrase "security through obscurity" comes from. An encrypted message is easily seen as encrypted and a cryptographer can begin working on decrypting it. In comparison, a message embedded into a picture, audio, or video file can pass right by without being noticed.
Many people claim that the terrorist attack of September 11th 2001, among many, was planned using steganographic cryptography and the internet. Previous to the attack, USA Today said: "Lately, al-Qaeda operatives have been sending hundreds of encrypted messages that have been hidden in files on digital
codes were compared, the differences would be seen. The inability to see precision in a given medium is the basis for steganography.
Future Methods of Encryption
Elliptic Curve Cryptography Elliptic Curve Cryptography (ECC) has technically already been invented but is considered by the author to be a future technique of cryptography because its advantages and disadvantages are not yet fully understood. ECC is an approach to encryption that utilizes the complex nature of elliptic curves in finite fields. ECC typically uses the same types of algorithms as that of Diffie-Hellman Key Exchange and RSA Encryption. The difference is that the numbers used are chosen from a finite field defined within an elliptic curve expression.
Figure 19. An elliptic curve graph
Figure 19 shows an example of an elliptic curve. This example could be used in conjunction with an RSA type algorithm in which two primes, " P " and " Q ", are chosen. When the primes are chosen using a predefined elliptic curve in a finite field, the key sizes can be much smaller and still yield the same amount of security. This allows the time it takes to perform the encryption and decryption to be drastically reduced, thus allowing a higher amount of data to be passed with equal security. Just as other methods of encryption have, ECC must also be tested and proven secure before the it gets accepted for commercial, governmental, and private use.
Quantum Computation Quantum computation is performed in a quantum computer or processor, which is a processor that makes use of quantum mechanical phenomena, such as quantum superposition and quantum entanglement. Modern computers store data using a binary format called a "bit" in which a "1" or a "0" can be stored. The computations in modern computers typically work in a bit by bit fashion. Quantum computers store data using a quantum superposition of multiple states. These multiple valued states are stored in "quantum bits" or "qubits." Depending on the quantum design, each qubit can store a set number values simultaneously (Jones 2009). This allows the computation of numbers to be several orders of magnitude faster than traditional transistor processors.
Figure 20. First commercially available quantum processor (D-Wave Systems)
Figure 20 shows the world's first commercially available quantum processor. It's capabilities are approximately 1000 times less than that of a modern transistor processor. Quantum computing is still in its infancy. Quantum processors manufactured today are very small and do not have the computational size that transistor processors have. Some fear that a successful and practical quantum computer would devastate the world's financial system by breaking every encryption system known (Jones 2009). As mentioned earlier, public-key cryptography relies on computer being slow to compute discrete logarithms and prime factorizations.
㐩䙲ㄢㄠㄥ ∗〩䙳
ㄗㄙ 䙦⤢⤥⤗ 〩 䙧
ㄘㄙ 㐳 ᡔ⡱
Equation 1. GNFS algorithm time. Equation 2. Shor's algorithm time.
Equation 1 shows the time it takes to run the fastest known algorithm (GNFS) to compute a prime factorization on a binary formatted processor. Equation 2 shows the algorithm discovered by Peter Shor that computes a prime factorization on a quantum computer. In both cases, " b " is the number of bits in the number. It's easily viewed that Shor's algorithm runs much faster. To comprehend the power of a