Boring terms

Before getting started with technical information on cryptography, let's first take a look on the very basic terms and core concepts.

Encryption

Converting information into format which cannot be read. Encryption has long been used by militaries and governments to facilitate secret communication. Encryption is now commonly used in protecting information within many kinds of civilian systems

Algorithm

A set of mathematical methods which are used to encrypt and decrypt data. Cipher is another name for algorithm.

Decryption

Converting encrypted data back to plain text. Decryption requires a key or password in addition to knowledge of the algorithm used to encrypt data.

Cryptosystem

Hardware or software implementation of cryptography, which is used to convert plain text into encrypted data and/or, convert encrypted information back into plain text.

Key

Secret sequence of bits and instructions, which determines performance of actions for data encryption and decryption. Here is a quick illustration.

When it’s configured correctly and each color takes each of facets — plain text is easy to read

You can get it in initial state only if you know algorithm how to shift pieces (if you get the key). It may take years…

Cryptographic services

Confidentiality: protection data or some private information from unauthorized reading.

Data integrity: protection data from unauthorized modification

Authentication: verifying that data is really sent from the right person, and nobody else, but that person.

Non-repudiation: None of parties should have a chance to deny the fact of sending the message.

Cryptographic primitives

Cryptography primitives are main algorithms and techniques of cryptography. Cryptosystems are made up from cryptographic primitives. Cryptographic primitives are usually rather complex. Some of widely used are: