Thanks to the profusion of cybercriminals, cybersecurity professionals must have an extensive toolbox filled with everything needed to keep data, networks, and systems safe. But unfortunately, some of those same tools can be used by cybercriminals to wreak havoc on systems and commit cybercrimes.
But no matter which side of the law anyone falls on, it's true that there's a dizzying number of tools, techniques, and resources available in cybersecurity. So in our ongoing effort to inform and demystify these tools, we focus today on cryptanalysis.
This article defines cryptanalysis, identifies its users, and explores cryptanalysis attacks and techniques. We will also look at some cryptanalysis tools and the different forms of cryptanalysis.
Let’s kick things off with the question, “What is cryptanalysis?”
What Is Cryptanalysis?
Cryptanalysis is the study and process of analyzing and decrypting ciphers, codes, and encrypted text without using the real key. Alternately, we can say it’s the technique of accessing a communication’s plain text content when you don’t have access to the decryption key.
Put simply, cryptanalysis is the practice, science, or art of decrypting encrypted messages.
Cryptanalysis experts study ciphers, cryptosystems, and ciphertext to understand their functions. Then, they use that knowledge to find or improve techniques to weaken or defeat them. However, as we're about to see, it can be used for good or nefarious purposes.
So, a cryptographer is someone who writes encryption code used in cybersecurity, while a cryptoanalyst is someone who tries to crack those encryption codes. Two opposing sides of the cybersecurity coin, locked in conflict, trying to one-up the other, constantly inventing new measures and countermeasures. This rivalry drives the innovation found in the cybersecurity field.
Who Uses Cryptanalysis?
Unsurprisingly, hackers use cryptanalysis. Would-be hackers use cryptanalysis to root out cryptosystem vulnerabilities rather than a brute force attack. Governments use cryptanalysis to decipher the encrypted messages of other nations. Companies specializing in cybersecurity products and services use cryptanalysis to test their security features. Even the world of academia gets in on the action, with researchers and academicians looking for weaknesses in cryptographic algorithms and protocols.
Speaking of hackers, we should point out that both black and white-hat hackers use cryptanalysis. Black-hat hackers use it to commit cybercrimes, and white-hat hackers use it to conduct penetration testing as directed by organizations that hire them to test their security.
What is Cryptanalysis: Cryptanalysis Attacks and Techniques
There are many different forms of cryptanalysis attacks. However, the two most common techniques are:
The would-be attacker only has access to at least one encrypted message but does not know the plaintext data, any cryptographic key data used, or the encryption algorithm being employed. Intelligence agencies often face this challenge when they've intercepted encrypted communications from a target. However, this is a formidable attack to pull off, thanks to the lack of target data.
Known Plaintext Attack
This attack is easier to implement, compared to the ciphertext-only attack. With a known plaintext attack, the analyst most likely has access to some or all the ciphertext’s plaintext. The cryptanalyst's goal is to discover the key the target uses to encrypt the message and use the key to decrypt the message. Once the key is discovered, the attacker can decrypt every message encrypted with that specific key. Known plaintext attacks rely on the attacker finding or guessing all or part of an encrypted message, or alternately, even the original plaintext's format.
And here are some other attack types and techniques cybersecurity experts potentially must guard against:
Differential Cryptanalysis Attack
This plaintext attack variant targets block ciphers that analyze plaintext in pairs rather than individually. This approach lets the analyst determine how the algorithm in question works when it runs into different data types.
This attack occurs when the intruder finds a way to insert themselves into an otherwise secure channel between two parties that want to exchange keys. The cryptanalyst conducts the key exchange with each end-user, with the latter believing that they’re conducting the exchange with each other. Thus, the involved parties are none the wiser and are now using a key that the attacker knows.
Integral Cryptanalysis Attack
The integral cryptanalysis attack is like the differential cryptanalysis attack, but rather than using pairs of plaintexts, the attack relies on plaintext sets where part of the plaintext remains constant, and the remainder is modified.
Chosen Plaintext Attack
Analysts using a chosen plaintext attack either already knows the encryption or can use the device used for encryption. The cryptanalyst can then encrypt the chosen plaintext using the targeted algorithm to gather information regarding the key.
Side-channel attacks rely on information obtained from the physical system employed in the encryption/decryption process. This attack uses data related to the target system's response time to queries or power usage rather than the plaintext that's slated to be encrypted or the ciphertext that comes from the encryption process.
Many people typically use passwords consisting either of easily guessed alphanumeric sequences or actual words. Analysts exploit this habit by encrypting all the words in a dictionary and checking if a resulting hash matches the encrypted password residing in a SAM file format or another password file.
What is Cryptanalysis: Cryptanalysis Tools
Here are just a couple of the many tools used for cryptanalysis:
- Cryptol: This tool is an open-source license initially designed to be used by the Nation Security Agency (NSA), the United States intelligence agency, targeting cryptographic algorithms. Cryptol allows users to monitor how algorithms operate in programs that specify the ciphers or algorithms.
- CrypTool: CrypTool is another open-source offering that creates elearning programs, plus a web portal designed to help users learn about cryptographic algorithms and cryptanalysis.
- Ganzua: Ganzua is the Spanish term for a skeleton key or lockpick. It’s an open-source, multi-platform Java-based tool that allows analysts to define almost totally arbitrary cipher and plain alphabets. In addition, this function will enable users to crack non-English cryptograms.
What is Cryptanalysis: Forms of Cryptanalysis
Analysts typically boil cryptanalysis down to two primary forms:
- Linear cryptanalysis: Linear cryptanalysis is a known plaintext attack that involves discovering affine approximations to the target cipher’s action. The attacker studies the probabilistic linear relations, referred to as linear approximations, between plaintext parity bits, the ciphertext, and the target’s secret key. This attack is one of the most common attacks employed against block ciphers.
- Differential cryptanalysis: This attack is effective against both stream and block ciphers. The latter case describes a collection of strategies used to track differences across a network of transformations, spotting instances where the cipher exhibits non-random behavior and employing these attributes to find the secret cipher key. In a broader sense, differential cryptanalysis studies how alterations in information intake could impact the resulting differences in the output.
What’s the Difference Between Linear and Differential Cryptanalysis?
The best way to illustrate the differences between linear and differential cryptanalyses is with an easy-to-use comparison chart, so here we go:
Linear cryptanalysis works on one bit at a time.
Differential cryptanalysis can work on several bits at a time.
The cryptanalyst uses every available subkey to decrypt each ciphertext, then analyzes the resulting intermediate ciphertext to figure out one encryption cycle’s random outcome.
The cryptanalyst conducts several encryption rounds and analyzes any changes in the intermediate ciphertext they obtain.
Ciphertext attacks are at a significant disadvantage.
Plain text attacks are at a significant disadvantage.
Linear cryptanalysis quickly discovers the linear relationship between plaintext, ciphertext, and unknown key bits.
Differential cryptanalysis figures out information about some critical bits, reducing the need to conduct extensive searches.
The Cryptanalyst’s Requirements and Responsibilities
Aspiring cryptanalysts are recommended to earn a bachelor's degree in computer engineering, computer science, mathematics, or a related field. However, some organizations may hire candidates with no technical degree but extensive training and previous hands-on work experience in the area. It also doesn’t hurt to have a few cybersecurity-related certifications. More on that later.
But suppose you're following the academic path. In that case, a Master of Science degree is also strongly recommended, although it's not as critical if you already have a bachelor's degree in mathematics and computer science. The best candidates will have a doctoral degree in mathematics or computer science, emphasizing cryptography.
If you become a cryptanalyst, you will likely be expected to develop algorithms, ciphers, and security systems to encrypt sensitive data. You will also have to analyze and decrypt various types of confidential information in cryptographic security systems, such as encrypted data, cipher texts, and telecommunications protocols.
You may also be expected to carry out many of these duties:
- Design security systems that prevent vulnerabilities.
- Protect critical sensitive information from intercepting, copying, altering, or deleting.
- Evaluating, analyzing, and targeting vulnerabilities in your organization’s cryptographic security systems and algorithms.
- Search for weaknesses in communication lines.
- Test computational models for accuracy and reliability.
- Develop statistical and mathematical models that analyze data and resolve security issues.
- Keep current on new cryptology theories and applications and test them out. On a related note, develop new data encryption methods.
- Ensure that financial data is encrypted and accessible only to the organization’s authorized users.
- Make sure any message transmission data isn't hacked or changed in transit.
Do You Want a Future as a Cybersecurity Expert?
The IT world needs cybersecurity professionals. Suppose this is a field that fires up your imagination and piques your interest. In that case, Simplilearn can help you on your journey to becoming a cybersecurity expert with their Cybersecurity Training Program.
Glassdoor reports that cybersecurity professionals in the United States can earn a yearly average of $96,446.
Let Simplilearn equip you with the tools you need to become a cybersecurity expert, and help you enter this exciting field. Visit Simplilearn today and see the wide range of cybersecurity courses they offer!