Cryptanalysis Report Group Assignment
Cryptanalysis Report Group Assignment
Group members:
Name id No
This report gives a basic introduction to cryptanalysis. It includes the history of cryptanalysis and the
way its used in our modern digital world. Some of cryptanalysis techniques are discribed to demonstrate
how hackers or attackers use them to gain access and manipulate users or organizations data.
1. Introduction
- Although the actual word "cryptanalysis" is relatively recent (it was coined by William Friedman in
1920), methods for breaking codes and ciphers are much older. David Kahn notes in The Code breakers
that Arab scholars were the first people to systematically document cryptanalytic methods.[10]
- Cryptanalysis (from the Greek kryptós, "hidden", and analýein, "to analyze") refers to the process of
analyzing information systems in order to understand hidden aspects of the systems.[1] Cryptanalysis is
used to breach cryptographic security systems and gain access to the contents of encrypted messages,
even if the cryptographic key is unknown.
Cryptanalysis is the study of analyzing and breaking cryptographic systems. This report provides an
overview of various cryptanalysis techniques, including brute-force attack, known-plaintext attack,
replay attack, hacking, and cracking.
2. Description of cryptanalysis
- another definition of Cryptanalysis is thats its 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.
- It is this constant battle between cryptographers trying to secure information and cryptanalysts trying
to break cryptosystems that moves the entire body of cryptology knowledge forward.
- Sometimes the weakness is not in the cryptographic algorithm itself, but rather in how it is applied that
makes cryptanalysis successful. An attacker may have other goals as well, such as:
2.2 cryptanalysis techniques
- There are many different types of cryptanalysis attacks and techniques, which vary depending on how
much information the analyst has about the ciphertext being analyzed. In this report we have concluded
some cryptanalysis techniques that are commonly used by hackers, crackers, and cryptanalysts in the
evolution of cryptanalysis and cryptography. There are 4 cryptanalytic methods included below. Those
are:
1. Brute-force attack: involves trying all possible keys until the correct one is found.
2. Known-Plaintext Attack: uses known plaintext and ciphertext to deduce the key.
3. Replay Attack: involves replaying valid data to gain unauthorized access.
4. Hacking and cracking: unauthorized access or manipulation of systems or software.
3. Brute-Force Attack
Brute force is a hacking method, often automated, that systematically tries different credential
combinations to gain unauthorized access to a system or account.A brute force attack uses trial-and-
error to guess login info, encryption keys, or find a hidden web page. Hackers work through all possible
combinations hoping to guess correctly.
- These attacks are done by ‘brute force’ meaning they use excessive forceful attempts to try and ‘force’
their way into your private account(s).
- This is an old attack method, but it's still effective and popular with hackers. Because depending on the
length and complexity of the password, cracking it can take anywhere from a few seconds to many
years.
- Each brute force attack can use different methods to uncover your sensitive data. You might be
exposed to any of the following popular brute force methods: Simple Brute Force Attacks, Dictionary
Attacks, Hybrid Brute Force Attacks, Reverse Brute Force Attacks, Credential Stuffing.
- hackers attempt to logically guess your credentials — completely unassisted from software tools or
other means. These can reveal extremely simple passwords and PINs. For example, a password that is
set as “guest12345”.
- in a standard attack, a hacker chooses a target and runs possible passwords against that username.
These are known as dictionary attacks. Dictionary attacks are the most basic tool in brute force attacks.
While not necessarily being brute force attacks in themselves, these are often used as an important
component for password cracking. Some hackers run through unabridged dictionaries and augment
words with special characters and numerals or use special dictionaries of words, but this type of
sequential attack is cumbersome.
- these hackers blend outside means with their logical guesses to attempt a break-in. A hybrid attack
usually mixes dictionary and brute force attacks. These attacks are used to figure out combo passwords
that mix common words with random characters. A brute force attack example of this nature would
include passwords such as NewYork1993 or Spike1234.
- just as the name implies, a reverse brute force attack reverses the attack strategy by starting with a
known password. Then hackers search millions of usernames until they find a match. Many of these
criminals start with leaked passwords that are available online from existing data breaches.
- if a hacker has a username-password combo that works for one website, they’ll try it in tons of others
as well. Since users have been known to reuse login info across many websites, they are the exclusive
targets of an attack like this.
3.3 How Users Can Strengthen Passwords Against Brute Force Attacks
- As a user, you can do a lot to support your protection in the digital world. The best defense against
password attacks is ensuring that your passwords are as strong as they can be.
-Brute force attacks rely on time to crack your password. So, your goal is to make sure your password
slows down these attacks as much as possible, because if it takes too long for the breach to be
worthwhile… most hackers will give up and move on.
-Here are a few ways you can strength passwords against brute attacks:
a, Longer passwords with varied character types. When possible, users should choose 10-character
passwords that include symbols or numerals. Doing so creates 171.3 quintillion (1.71 x 1020)
possibilities. Using a GPU processor that tries 10.3 billion hashes per second, cracking the password
would take approximately 526 years. Although, a supercomputer could crack it within a few weeks. By
this logic, including more characters makes your password even harder to solve.
b, Elaborate passphrases. Not all sites accept such long passwords, which means you should choose
complex passphrases rather than single words. Dictionary attacks are built specifically for single word
phrases and make a breach nearly effortless. Passphrases — passwords composed of multiple words or
segments — should be sprinkled with extra characters and special character types.
C, Stay away from frequently used passwords. It's important to avoid the most common passwords and
to change them frequently.
d, Use unique passwords for every site you use. To avoid being a victim of credential stuffing, you should
never reuse a password. If you want to take your security up a notch, use a different username for every
site as well. You can keep other accounts from getting compromised if one of yours is breached.
e, Use a password manager. Installing a password manager automates creating and keeping track of
your online login info. These allow you to access all your accounts by first logging into the password
manager. You can then create extremely long and complex passwords for all the sites you visit, store
them safely, and you only have to remember the one primary password.
4. Known-Plaintext Attack
- A known-plaintext attack (KPA) is when a hacker uses well-known pairs of unencrypted and encrypted
material to determine the algorithm or encryption key.
- In a known-plaintext attack, the attacker has access to both the data’s encrypted form (ciphertext) and
its corresponding plaintext copy of the data’s original (unencrypted form). The attacker attempts to
determine the encryption key or algorithm by examining the relationship between the plaintext and
ciphertext.
- For instance, if “CRYPTO” is encoded as “XUZZA,” knowing this pair could enable the attacker to decode
other parts of the message that are also encrypted with the same substitution key. This demonstrates
how, with some encryption algorithms, even a tiny amount of knowledge can result in broader
decryption.
- This kind of attack uses a flaw in encryption techniques that make it possible to identify patterns or
connections produced between the plaintext and the ciphertext. If not correctly prevented, known-
plaintext attacks can jeopardize the security of encryption systems.
- Two common methods to exploit plaintext and its corresponding encrypted form to uncover
encryption keys include frequency analysis and pattern matching. The frequency analysis method uses
straightforward encryption methods with one-to-one letter or symbol substitutions. Attackers can figure
out the key or unlock the rest of the communication by comparing the frequency of occurrence of
particular letters or patterns in the known plaintext and the associated ciphertext.
- Attackers can spot trends when the same plaintext produces the same ciphertext in the pattern-
matching method. They can recognize the encryption algorithm and decrypt the entire message by
identifying patterns in the encrypted text and comparing them to known patterns in the plaintext.
- Choose encryption algorithms that can withstand known-plaintext attacks by using strong encryption
techniques. By preventing patterns in the plaintext from correlating with patterns in the ciphertext,
modern cryptographic algorithms like the Advanced Encryption Standard (AES) are made to survive such
attacks. AES is a widely used symmetric encryption algorithm known for its security and efficiency.
- Securely manage encryption keys to avoid unauthorized access. Use secure key repositories, rotate
your keys frequently and use strong key generation techniques. Additionally, avoid encrypting discrete,
predictable chunks of data. To stop an attacker from using known pairs, encrypt the entire message or
file.
- Before encrypting the plaintext of the data, add a cryptographic salt — a random value — to it. This
makes each encryption unique, even when encrypting the same plaintext multiple times. In addition,
avoid encryption methods that are known to be vulnerable to known-plaintext attacks. That said,
perform proper due diligence when selecting encryption algorithms.
5. Replay Attack
- Consider this real-world example of an attack. A staff member at a company asks for a financial
transfer by sending an encrypted message to the company's financial administrator. An attacker
eavesdrops on this message, captures it, and is now in a position to resend it. Because it's an authentic
message that has simply been resent, the message is already correctly encrypted and looks legitimate to
the financial administrator.
- In this scenario, the financial administrator is likely to respond to this new request unless he or she has
a good reason to be suspicious. That response could include sending a large sum of money to the
attacker's bank account.
- Preventing such an attack is all about having the right method of encryption. Encrypted messages carry
"keys" within them, and when they're decoded at the end of the transmission, they open the message.
In a replay attack, it doesn't matter if the attacker who intercepted the original message can read or
decipher the key. All he or she has to do is capture and resend the entire thing — message and key —
together.
- To counter this possibility, both sender and receiver should establish a completely random session key,
which is a type of code that is only valid for one transaction and can't be used again.
- Another preventative measure for this type of attack is using timestamps on all messages. This
prevents hackers from resending messages sent longer ago than a certain length of time, thus reducing
the window of opportunity for an attacker to eavesdrop, siphon off the message, and resend it.
- Another method to avoid becoming a victim is to have a password for each transaction that's only used
once and discarded. That ensures that even if the message is recorded and resent by an attacker, the
encryption code has expired and no longer works.
6. Hacking definition
- Hacking is the act of identifying and then exploiting weaknesses in a computer system or network,
usually to gain unauthorized access to personal or organizational data. Hacking is not always a malicious
activity, but the term has mostly negative connotations due to its association with cybercrime.
- Hackers use a variety of techniques to achieve their aims. Some of the most common methods include:
Social engineering
Hacking passwords
Infecting devices with Malware
Exploiting insecure Wireless Networks
Gaining Backdoor Access
Spying on Emails
Logging Keystrokes
Creating zombie computers
- You can protect yourself against hackers by following good cybersecurity hygiene. Here are some key
hacking prevention tips to bear in mind:
- The term “cracking” means trying to get into computer systems in order to steal, corrupt, or
illegitimately view data. The popular press refers to such activities as hacking, but hackers see
themselves as expert, elite programmers and maintain that such illegitimate activity should be called
“cracking.”
- There are several types of cracking, and crackers employ many different techniques to break into
computer systems and software.However, the three most common forms of cracking are password
cracking, software cracking, and web cracking.
- Password cracking is the act of stealing people’s passwords from databases. But this is often more
difficult than it sounds since most websites and services now encrypt their password databases using a
one-way process called hashing.Hashing cannot be reversed, so the cracker needs to:
Find and obtain the website’s hashes and the algorithms and processes used to create them
(also known as the hash function).
Generate a password, apply the hash function, and see if it grants authentication.
- Because this process would be so time-consuming if done manually, crackers employ powerful
software to automate the guesswork. The two most common methods of cracking a password are:
i. Brute-forcing. Brute-force cracking involves pumping out a massive amount of guessed characters
until it gets a match to the hash algorithm.
ii. Rainbow table cracking. A rainbow table is a table of precomputed hash chains. This helps crackers
overcome difficulties in large password sets where brute-forcing is infeasible.
- Software cracking involves changing a program or piece of software. Usually, software cracking is done
to remove paid software requirements or pop-up purchase reminders so that people can access the
software for free. Some software cracking techniques include:
1. Key generators. Also known as a keygen, key generators are programs that generate valid serial
numbers for a piece of software.
2. Patches. Patches are pieces of code that are added to software to change its functionality.
3. Loaders. Also known as a crack intro or cracktro, a loader is used to block or modify the start-up
process of a program.
- Once they have access, they can infiltrate any of your connected devices (known as computer cracking)
and monitor your web traffic. With this ability, they can steal your data, access your accounts, or try to
impersonate you.
- we can prevent our devices from cracking using the same methods used to prevent hacking as listed
above. The only difference between hacking and cracking is that the word "crackers" is given to those
malicious attackers whose motives are personal gains.
- Hacking is the act of compromising digital devices to gain unauthorized access!. Although the media
commonly uses the term “hacking” to refer to illegal activities, people in the hacking community
generally consider themselves the good guys, while crackers are the bad guys.
8. Conclusion
- Cryptanalysis techniques pose significant security risks to cryptographic systems. It is crucial for
organizations to implement robust cryptographic measures, strong encryption algorithms, and security
protocols to mitigate these risks and ensure the confidentiality and integrity of sensitive data.
9. Recommendations
3.Regularly update and patch systems to prevent hacking and cracking attempts.
References
2. [10] Kahn, David (1996). The Codebreakers: The Comprehensive History of Secret Communication
from Ancient Times to the Internet. Simon and Schuster. ISBN 9781439103555.