What is cryptography(WIP)?
Derived from the Greek words for “hidden writing, Cryptography, or cryptology, is the science of obscuring information transmitted so that it may only be read by the intended recipient.
Cryptography is about constructing and analysing protocols that prevent third parties or the public from reading private messages.
Modern cryptography exists at the intersection of the disciplines of mathematics, computer science, information security, electrical engineering, digital signal processing, physics, and others.
Cryptography is most notably used in the process of encrypting and decrypting sensitive data on a computer.
((Enter History of Cryptography Here, Caesar Cipher etc, enigma machine))
The 3 Main ones
Symmetric key cryptography
Also known as private key cryptography, secret key cryptography or single-key encryption, symmetric key encryption uses only one key for both the encryption process and decryption process. For these types of systems, each user must have access to the same private key.
Private keys might be shared either through a previously established secure communication channel like a private courier or secured line or, more practically, a secure key exchange method like the Diffie-Hellman key agreement.
There are 2 types of symmetric key algorithms:
-
Block cipher: In a block cipher, the cipher algorithm works on a fixed-size block of data. For example, if the block size is eight, eight bytes of plaintext are encrypted at a time. Normally, the user’s interface to the encrypt/decrypt operation handles data longer than the block size by repeatedly calling the low-level cipher function.
-
Stream cipher: Stream ciphers do not work on a block basis, but rather convert one bit (or one byte) of data at a time. Basically, a stream cipher generates a keystream based on the provided key. The generated keystream is then XORed with the plaintext data.
Some examples of symmetrical cryptography include the following:
-
Data Encryption Standard: The Data Encryption Standard (DES) was developed by IBM in the early 1970’s, and while it is now considered to be susceptible to brute force attacks, its architecture remains highly influential in the field of modern cryptography.
-
Triple DES: While advancements in computing made DES insecure by 1999, the DES cryptosystem built on the original DES foundation adds extra levels of security that cannot be broken by modern machines.
-
Blowfish: A fast, free, publicly available block cipher designed by Bruce Schneer in 1993.
-
Advanced Encryption Standard: The Advanced Encryption Standard (AES) is the first and only publicly accessible cipher that is approved by the US National Security Agency for top secret information.
Asymmetric key cryptography
In asymmetric encryption, a pair of keys is used: one secret key and one public key. For this reason, these algorithms are also referred to as public key algorithms. Public key cryptography is considered to be more secure than symmetric encryption techniques because even though one key is publicly available, an encrypted message can only be decrypted with the intended recipient’s private key.
Some examples of asymmetrical cryptography include the following:
- RSA: Named for its founders—Rivest, Shamier and Adleman—in 1977, the RSA algorithm is one of the oldest widely used public key cryptosystems used for secure data transmission.
- ECC: Elliptic curve cryptography is an advanced form of asymmetric encryption that uses the algebraic structures of elliptic curves to create strong cryptographic keys.
One-way hash algorithms
A cryptographic hash algorithm produces a fixed-length output string (often called a digest) from a variable-length input string. The input serves as the plaintext, and the output hash is the cipher. For all practical purposes, the following statements are true of a good hash function:
-
Collision resistant: If any portion of the data is modified, a different hash is generated, ensuring data integrity.
-
One-way: The function is irreversible. That is, given a digest, it is not possible to find the data that produces it, ensuring data security.
For these reasons, hash algorithms make for effective cryptosystems because the hash algorithm encrypts the data directly without the need for different keys. In essence, the plaintext is its own key.
Consider the security vulnerability of a database of stored bank account passwords. Anyone with either authorized or unauthorized access to the bank’s computer systems might potentially read every password.
To maintain data security, banks and other businesses encrypt sensitive information like passwords into a hash value and store only that encrypted value in their database. Without knowing the user’s password, the hash value cannot be broken.
(I will expand this page a bit more once I have some more time, because like most things in IT and cybersecurity, they tend to branch of into many different rabbit holes. This should cover the basics)
Cryptography Trivia
Types of Ciphers
https://www.audiocipher.com/post/types-of-ciphers#viewer-4o5qo71865