Cryptic Nori
Cryptic Nori
Cryptic Nori
History[edit]
Part of a series on
Information security
Computer security
Automotive security
Cybercrime
o Cybersex trafficking
o Computer fraud
Cybergeddon
Cyberterrorism
Cyberwarfare
Electronic warfare
Information warfare
Internet security
Mobile security
Network security
Copy protection
Digital rights management
Threats
Adware
Advanced persistent threat
Arbitrary code execution
Backdoors
Hardware backdoors
Code injection
Crimeware
Cross-site scripting
Cryptojacking malware
Botnets
Data breach
Drive-by download
Browser helper objects
Viruses
Data scraping
Denial of service
Eavesdropping
Email fraud
Email spoofing
Exploits
Hacktivism
Keyloggers
Logic bombs
Time bombs
Fork bombs
Zip bombs
Fraudulent dialers
Malware
Payload
Phishing
Polymorphic engine
Privilege escalation
Ransomware
Rootkits
Bootkits
Scareware
Shellcode
Spamming
Social engineering
Screen scraping
Spyware
Software bugs
Trojan horses
Hardware Trojans
Remote access trojans
Vulnerability
Web shells
Wiper
Worms
SQL injection
Rogue security software
Zombie
Defenses
Application security
o Secure coding
o Secure by default
o Secure by design
Misuse case
Computer access control
o Authentication
Multi-factor authentication
o Authorization
Computer security software
o Antivirus software
o Security-focused operating system
Data-centric security
Code obfuscation
Data masking
Encryption
Firewall
Intrusion detection system
o Host-based intrusion detection system (HIDS)
o Anomaly detection
Security information and event management (SIEM)
Mobile secure gateway
Runtime application self-protection
v
t
e
Ancient[edit]
One of the earliest forms of encryption is symbol replacement, which was first found in the tomb of
Khnumhotep II, who lived in 1900 BC Egypt. Symbol replacement encryption is “non-standard,”
which means that the symbols require a cipher or key to understand. This type of early encryption
was used throughout Ancient Greece and Rome for military purposes.[2] One of the most famous
military encryption developments was the Caesar Cipher, which was a system in which a letter in
normal text is shifted down a fixed number of positions down the alphabet to get the encoded letter.
A message encoded with this type of encryption could be decoded with the fixed number on the
Caesar Cipher.[3]
Around 800 AD, Arab mathematician Al-Kindi developed the technique of frequency analysis – which
was an attempt to systematically crack Caesar ciphers.[2] This technique looked at the frequency of
letters in the encrypted message to determine the appropriate shift. This technique was rendered
ineffective after the creation of the polyalphabetic cipher by Leon Battista Alberti in 1465, which
incorporated different sets of languages. In order for frequency analysis to be useful, the person
trying to decrypt the message would need to know which language the sender chose.[2]
19th–20th century[edit]
Around 1790, Thomas Jefferson theorized a cipher to encode and decode messages in order to
provide a more secure way of military correspondence. The cipher, known today as the Wheel
Cipher or the Jefferson Disk, although never actually built, was theorized as a spool that could
jumble an English message up to 36 characters. The message could be decrypted by plugging in the
jumbled message to a receiver with an identical cipher.[4]
A similar device to the Jefferson Disk, the M-94, was developed in 1917 independently by US Army
Major Joseph Mauborne. This device was used in U.S. military communications until 1942.[5]
In World War II, the Axis powers used a more advanced version of the M-94 called the Enigma
Machine. The Enigma Machine was more complex because unlike the Jefferson Wheel and the M-
94, each day the jumble of letters switched to a completely new combination. Each day's
combination was only known by the Axis, so many thought the only way to break the code would be
to try over 17,000 combinations within 24 hours.[6] The Allies used computing power to severely limit
the number of reasonable combinations they needed to check every day, leading to the breaking of
the Enigma Machine.
Modern[edit]
Today, encryption is used in the transfer of communication over the Internet for security and
commerce.[1] As computing power continues to increase, computer encryption is constantly evolving
to prevent eavesdropping attacks.[7] With one of the first "modern" cipher suites, DES, utilizing a 56-
bit key with 72,057,594,037,927,936 possibilities being able to be cracked in 22 hours and 15
minutes by EFF's DES cracker in 1999, which used a brute-force method of cracking. Modern
encryption standards often use stronger key sizes often 256, like AES(256-bit
mode), TwoFish, ChaCha20-Poly1305, Serpent(configurable up to 512-bit). Cipher suites utilizing a
128-bit or higher key, like AES, will not be able to be brute-forced due to the total amount of keys of
3.4028237e+38 possibilities. The most likely option for cracking ciphers with high key size is to find
vulnerabilities in the cipher itself, like inherent biases and backdoors. For example, RC4, a stream
cipher, was cracked due to inherent biases and vulnerabilities in the cipher.
Encryption in cryptography[edit]
In the context of cryptography, encryption serves as a mechanism to ensure confidentiality.[1] Since
data may be visible on the Internet, sensitive information such as passwords and personal
communication may be exposed to potential interceptors.[1] The process of encrypting and decrypting
messages involves keys. The two main types of keys in cryptographic systems are symmetric-key
and public-key (also known as asymmetric-key).[8][9]
Many complex cryptographic algorithms often use simple modular arithmetic in their
implementations.[10]
Types[edit]
In symmetric-key schemes,[11] the encryption and decryption keys are the same. Communicating
parties must have the same key in order to achieve secure communication. The German Enigma
Machine utilized a new symmetric-key each day for encoding and decoding messages.
In public-key encryption schemes, the encryption key is published for anyone to use and encrypt
messages. However, only the receiving party has access to the decryption key that enables
messages to be read.[12] Public-key encryption was first described in a secret document in 1973;
[13]
beforehand, all encryption schemes were symmetric-key (also called private-key).[14]: 478 Although
published subsequently, the work of Diffie and Hellman was published in a journal with a large
readership, and the value of the methodology was explicitly described.[15] The method became known
as the Diffie-Hellman key exchange.
RSA (Rivest–Shamir–Adleman) is another notable public-key cryptosystem. Created in 1978, it is
still used today for applications involving digital signatures.[16] Using number theory, the RSA
algorithm selects two prime numbers, which help generate both the encryption and decryption keys.
[17]
A publicly available public-key encryption application called Pretty Good Privacy (PGP) was written
in 1991 by Phil Zimmermann, and distributed free of charge with source code. PGP was purchased
by Symantec in 2010 and is regularly updated.[18]
Uses[edit]
Encryption has long been used by militaries and governments to facilitate secret communication. It is
now commonly used in protecting information within many kinds of civilian systems. For example,
the Computer Security Institute reported that in 2007, 71% of companies surveyed utilized
encryption for some of their data in transit, and 53% utilized encryption for some of their data in
storage.[19] Encryption can be used to protect data "at rest", such as information stored on computers
and storage devices (e.g. USB flash drives). In recent years, there have been numerous reports of
confidential data, such as customers' personal records, being exposed through loss or theft of
laptops or backup drives; encrypting such files at rest helps protect them if physical security
measures fail.[20][21][22] Digital rights management systems, which prevent unauthorized use or
reproduction of copyrighted material and protect software against reverse engineering (see
also copy protection), is another somewhat different example of using encryption on data at rest.[23]
Encryption is also used to protect data in transit, for example data being transferred
via networks (e.g. the Internet, e-commerce), mobile telephones, wireless microphones, wireless
intercom systems, Bluetooth devices and bank automatic teller machines. There have been
numerous reports of data in transit being intercepted in recent years.[24] Data should also be
encrypted when transmitted across networks in order to protect against eavesdropping of network
traffic by unauthorized users.[25]
Data erasure[edit]
Main article: Data erasure
Conventional methods for permanently deleting data from a storage device involve overwriting the
device's whole content with zeros, ones, or other patterns – a process which can take a significant
amount of time, depending on the capacity and the type of storage medium. Cryptography offers a
way of making the erasure almost instantaneous. This method is called crypto-shredding. An
example implementation of this method can be found on iOS devices, where the cryptographic key is
kept in a dedicated 'effaceable storage'.[26] Because the key is stored on the same device, this setup
on its own does not offer full privacy or security protection if an unauthorized person gains physical
access to the device.
Limitations[edit]
Encryption is used in the 21st century to protect digital data and information systems. As computing
power increased over the years, encryption technology has only become more advanced and
secure. However, this advancement in technology has also exposed a potential limitation of today's
encryption methods.
The length of the encryption key is an indicator of the strength of the encryption method.[27] For
example, the original encryption key, DES (Data Encryption Standard), was 56 bits, meaning it had
2^56 combination possibilities. With today's computing power, a 56-bit key is no longer secure, being
vulnerable to brute force attacks.[28]
Quantum computing utilizes properties of quantum mechanics in order to process large amounts of
data simultaneously. Quantum computing has been found to achieve computing speeds thousands
of times faster than today's supercomputers.[29] This computing power presents a challenge to today's
encryption technology. For example, RSA encryption utilizes the multiplication of very large prime
numbers to create a semiprime number for its public key. Decoding this key without its private key
requires this semiprime number to be factored, which can take a very long time to do with modern
computers. It would take a supercomputer anywhere between weeks to months to factor in this key.
[citation needed]
However, quantum computing can use quantum algorithms to factor this semiprime number
in the same amount of time it takes for normal computers to generate it. This would make all data
protected by current public-key encryption vulnerable to quantum computing attacks.[30] Other
encryption techniques like elliptic curve cryptography and symmetric key encryption are also
vulnerable to quantum computing.[citation needed]
While quantum computing could be a threat to encryption security in the future, quantum computing
as it currently stands is still very limited. Quantum computing currently is not commercially available,
cannot handle large amounts of code, and only exists as computational devices, not computers.
[31]
Furthermore, quantum computing advancements will be able to be utilized in favor of encryption
as well. The National Security Agency (NSA) is currently preparing post-quantum encryption
standards for the future.[32] Quantum encryption promises a level of security that will be able to
counter the threat of quantum computing.[31]
Even when encryption correctly hides a message's content and it cannot be tampered with at rest or
in transit, a message's length is a form of metadata that can still leak sensitive information about the
message. For example, the well-known CRIME and BREACH attacks against HTTPS were side-
channel attacks that relied on information leakage via the length of encrypted content.[43] Traffic
analysis is a broad class of techniques that often employs message lengths to infer sensitive
implementation about traffic flows by aggregating information about a large number of messages.
Padding a message's payload before encrypting it can help obscure the cleartext's true length, at the
cost of increasing the ciphertext's size and introducing or increasing bandwidth overhead. Messages
may be padded randomly or deterministically, with each approach having different tradeoffs.
Encrypting and padding messages to form padded uniform random blobs or PURBs is a practice
guaranteeing that the cipher text leaks no metadata about its cleartext's content, and leaks
asymptotically minimal information via its length.[44]