Cryptography is considered a science and has been around for over 4000 years. It a method of storing data in a form that only those who have the key to decrypt it can read. Throughout history individuals, armies and governments alike have worked to protect communications by encrypting it. Cryptographies evolution has closely followed advances in technology, from wood carvings to the creation of bytes and bits in binary code. From the time of Julius Caesar who help create the scytale cipher by wrapping a papyrus around a wooden staff to the Gilbert Vernam method also called the one-time Pad system, which many considered impossible to break even for a modern day super-computer.

If one looks closer encryption is the act of transforming readable text called plaintext into a form called ciphertext that appears unreadable. This is done in modern times with the aid of an
algorithm which dictates how enciphering and deciphering happens. Many famous algorithms like the RSA, DES, Blowfish, Diffie-Hellman, and El Gamal are well known algorithms. The secret to the
encryption algorithm is the key.

Cryptography algorithms are either symmetric, which use symmetric keys (also called secret keys), or asymmetric, which use asymmetric keys (also called public and private keys). There are two main types of symmetric algorithms - block ciphers, and stream ciphers. In addition, symmetric key cryptography provides confidentiality only, not authentication or non-repudiation.

Strengths

• Much faster (less computationally intensive) than asymmetric systems.

• Hard to break if using a large key size.

Weaknesses

• Requires a secure mechanism to deliver keys properly.

• Each pair of users needs a unique key, and could make key management difficult as the number of individuals grows

• Provides confidentiality but no authenticity or non-repudiation

** **

Four thing the make up a cryptography system:

- Software
- Protocols
- Algorithms
- Keys

Other Key points to remember:

- Algorithm set of mathematical and logic rules.
- Cipher Another name for algorithm
- Cryptosystem Hardware/software implementation that contains all the necessary software, protocols, algorithms, and keys
- Key - Sequence of bits that are used as instructions that govern the acts
- of cryptographic functions within an algorithm

Strengths

• Easier key distribution than symmetric systems.

• Enhanced scalability over symmetric systems

• Provides authentication and non-repudiation

** **

Weaknesses

• Processes more slowly than symmetric systems

• Mathematically intensive

Examples of some of the best known asymmetric key algorithms:

• Rivest-Shamir-Adleman (RSA)

• Elliptic curve cryptosystem (ECC)

• Diffie-Hellman

• El Gamal

• Digital Signature Algorithm (DSA)

• Merkle-Hellman Knapsack

** **

** **

A strong cipher contains two main attributes: confusion/diffusion and a strong key, but given the power of modern computers. It will not be long before processor speeds, and other technologies will allow a hacker to do some pretty cool brute force attacks on the strongest encryption systems. Moreover, lets not forget that Quantum Computer systems are just around the corner.

nistir_7977_second_draft.pdf

Adobe Acrobat document [293.9 KB]