Book Image

Cryptography Algorithms

By : Massimo Bertaccini
Book Image

Cryptography Algorithms

By: Massimo Bertaccini

Overview of this book

Cryptography Algorithms is designed to help you get up and running with modern cryptography algorithms. You'll not only explore old and modern security practices but also discover practical examples of implementing them effectively. The book starts with an overview of cryptography, exploring key concepts including popular classical symmetric and asymmetric algorithms, protocol standards, and more. You'll also cover everything from building crypto codes to breaking them. In addition to this, the book will help you to understand the difference between various types of digital signatures. As you advance, you will become well-versed with the new-age cryptography algorithms and protocols such as public and private key cryptography, zero-knowledge protocols, elliptic curves, quantum cryptography, and homomorphic encryption. Finally, you'll be able to apply the knowledge you've gained with the help of practical examples and use cases. By the end of this cryptography book, you will be well-versed with modern cryptography and be able to effectively apply it to security applications.
Table of Contents (15 chapters)
1
Section 1: A Brief History and Outline of Cryptography
3
Section 2: Classical Cryptography (Symmetric and Asymmetric Encryption)
7
Section 3: New Cryptography Algorithms and Protocols
12
Section 4: Homomorphic Encryption and the Crypto Search Engine

Chapter 2: Introduction to Symmetric Encryption

After having an overview of cryptography, it's time now to present the principal algorithms in symmetric encryption and their logic and mathematical principles.

In Chapter 1, Deep Diving into Cryptography, we saw some symmetric cryptosystems such as ROT13 and the Vernam cipher. Before going further into describing modern symmetric algorithms, we need an overview of the construction of block ciphers.

If you recall, symmetric encryption is performed through a key that is shared between the sender and receiver and vice versa. But how do we implement symmetric algorithms that are robust (in the sense of security) and easy to perform (computationally) at the same time? Let's see how we can answer this question by comparing asymmetric with symmetric encryption.

One of the main problems with asymmetric encryption is that it is not easy to perform the operations (especially the decryption), due to the high capacity of computation...