Cryptography is an important aspect when we deal with network security. ‘Crypto’ means secret or hidden. Cryptography is the science of secret writing with the intention of keeping the data secret. Cryptanalysis, on the other hand, is the science or sometimes the art of breaking cryptosystems. These both terms are a subset of what is called as Cryptology.

**Classification –**

The flowchart depicts that cryptology is only one of the factors involved in securing networks. Cryptology refers to study of codes, which involves both writing (cryptography) and solving (cryptanalysis) them. Below is a classification of the crypto-terminologies and their various types.

**1. Cryptography –**

Cryptography is classified into symmetric cryptography, asymmetric cryptography and hashing. Below are the description of these types.

**Symmetric key cryptography –**

It involves usage of one secret key along with encryption and decryption algorithms which help in securing the contents of the message. The strength of symmetric key cryptography depends upon the number of key bits. It is relatively faster than asymmetric key cryptography. There arises a key distribution problem as the key has to be transferred from the sender to receiver through a secure channel.**Assymetric key cryptography –**

It is also known as public key cryptography because it involves usage of a public key along with secret key. It solves the problem of key distribution as both parties uses different keys for encryption/decryption. It is not feasible to use for decrypting bulk messages as it is very slow compared to symmetric key cryptography.**Hashing –**

It involves taking the plain-text and converting it to a hash value of fixed size by a hash function. This process ensures integrity of the message as the hash value on both, sender\’s and receiver\’s side should match if the message is unaltered.

**2. Cryptanalysis –**

**Classical attacks –**

It can be divided into a)Mathematical analysis and b) Brute-force attacks. Brute-force attacks runs the encryption algorithm for all possible cases of the keys until a match is found. Encryption algorithm is treated as a black box. Analytical attacks are those attacks which focuses on breaking the cryptosystem by analysing the internal structure of the encryption algorithm.**Social Engineering attack –**

It is something which is dependent on the human factor. Tricking someone to reveal their passwords to the attacker or allowing access to the restricted area comes under this attack. People should be cautious when revealing their passwords to any third party which is not trusted.**Implementation attacks –**

Implementation attacks such as side-channel analysis can be used to obtain a secret key. They are relevant in cases where the attacker can obtain physical access to the cryptosystem.

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

## Recommended Posts:

- Mathematics | Matrix Introduction
- Introduction of ER Model
- Mathematics | Introduction to Propositional Logic | Set 1
- Mathematics | Introduction of Set theory
- Mathematics | Introduction and types of Relations
- Introduction and IPv4 Datagram Header
- Introduction of Classful IP Addressing
- Introduction of Lexical Analysis
- Introduction to Syntax Analysis in Compiler Design
- Introduction of Firewall in Computer Network
- Mathematics | Introduction to Propositional Logic | Set 2
- Introduction of MAC Address in Computer Network
- Introduction of Sequential Circuits
- Introduction of Logic Gates
- Introduction of Object Code in Compiler Design
- Introduction of Theory of Computation
- Introduction of Compiler Design
- Introduction of Mobile Ad hoc Network (MANET)
- Introduction of Operating System - Set 1
- Cryptography Introduction

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.