# Cryptography and its Types - GeeksforGeeks

2021.03.17 13:45

Skip to content Tutorials

*Algorithms*

*Analysis of Algorithms*

*Asymptotic Analysis Worst, Average and Best Cases Asymptotic Notations Little o and little omega notations Lower and Upper Bound Theory Analysis of Loops Solving Recurrences Amortized Analysis What does 'Space Complexity' mean ? Pseudo-polynomial Algorithms Polynomial Time Approximation Scheme A Time Complexity Question Searching Algorithms Sorting Algorithms Graph Algorithms Pattern Searching Geometric Algorithms Mathematical Randomized Algorithms Greedy Algorithms Dynamic Programming Divide and Conquer Backtracking Branch and Bound All Algorithms Data Structures*

*Arrays Linked List Stack Queue Binary Tree Binary Search Tree Heap Hashing Graph Advanced Data Structure Matrix Strings All Data Structures Languages*

*C C++ Java Python C# Javascript jQuery SQL PHP Scala Perl Go Language HTML CSS Kotlin Interview Corner*

*Company Preparation Top Topics Practice Company Questions Interview Experiences Experienced Interviews Internship Interviews Competititve Programming Design Patterns Multiple Choice Quizzes GATE*

*GATE CS Notes 2021 Last Minute Notes GATE CS Solved Papers GATE CS Original Papers and Official Keys GATE 2021 Dates GATE CS 2021 Syllabus Important Topics for GATE CS Sudo GATE 2021 ISRO CS*

*ISRO CS Solved Papers ISRO CS Original Papers and Official Keys ISRO CS Syllabus for Scientist/Engineer Exam UGC NET CS*

*UGC NET CS Notes Paper II UGC NET CS Notes Paper III UGC NET CS Solved Papers CS Subjects*

*Mathematics Operating System DBMS Computer Networks Computer Organization and Architecture Theory of Computation Compiler Design Digital Logic Software Engineering Web Technologies*

*HTML CSS Javascript jQuery PHP Student*

*Campus Ambassador Program Project Geek of the Month Campus Geek of the Month Placement Course Competititve Programming Testimonials Geek on the Top Careers Internship Jobs*

*Apply for Jobs Post a Job Courses*

*Write Come write articles for us and get featured Practice Learn and code with the best industry experts Premium Get access to ad-free content, doubt assistance and more! Jobs Come and find your dream job with us Geeks Digest Technical Scripter Campus Mantri Geeks Campus Workshop and Webinar Gblog Articles Quizzes IDE Home Courses GBlog Puzzles What's New ?*

*Related Articles*

*▲*

## Related Articles

*Cryptography Introduction Introduction to Crypto-terminologies*

**Cryptography and its Types**Playfair Cipher with Examples Hill Cipher Vigenère Cipher Caesar Cipher in Cryptography Substitution Cipher Keyword Cipher Difference between Monoalphabetic Cipher and Polyalphabetic Cipher Difference between Block Cipher and Stream Cipher Block Cipher modes of Operation Data encryption standard (DES) | Set 1 Difference between AES and DES ciphers RSA Algorithm in Cryptography Implementation of Diffie-Hellman Algorithm Java Implementation of Deffi-Hellman Algorithm between Client and Server Socket Programming in Java Introducing Threads in Socket Programming in Java Multi-threaded chat Application in Java | Set 1 (Server Side Programming) Multi-threaded Chat Application in Java | Set 2 (Client Side Programming) A Group chat application in Java Generating Password and OTP in Java Layers of OSI Model TCP/IP Model Basics of Computer Networking Network Devices (Hub, Repeater, Bridge, Switch, Router, Gateways and Brouter) TCP Server-Client implementation in C Types of Transmission Media Cryptography and its Types Last Updated : 08 Jan, 2020

Cryptography is technique of securing information and communications through use of codes so that only those person for whom the information is intended can understand it and process it. Thus preventing unauthorized access to information. The prefix “crypt” means “hidden” and suffix graphy means “writing”.

In Cryptography the techniques which are use to protect information are obtained from mathematical concepts and a set of rule based calculations known as algorithms to convert messages in ways that make it hard to decode it. These algorithms are used for cryptographic key generation, digital signing, verification to protect data privacy, web browsing on internet and to protect confidential transactions such as credit card and debit card transactions.

** Techniques used For Cryptography:**

In today’s age of computers cryptography is often associated with the process where an ordinary plain text is converted to cipher text which is the text made such that intended receiver of the text can only decode it and hence this process is known as encryption. The process of conversion of cipher text to plain text this is known as decryption.

** Features Of Cryptography are as follows:**

**Confidentiality:**

Information can only be accessed by the person for whom it is intended and no other person except him can access it.

**Integrity:**

Information cannot be modified in storage or transition between sender and intended receiver without any addition to information being detected.

**Non-repudiation:**

The creator/sender of information cannot deny his or her intention to send information at later stage.

**Authentication:**

The identities of sender and receiver are confirmed. As well as destination/origin of information is confirmed.

** Types Of Cryptography:**

In general there are three types Of cryptography:

**Symmetric Key Cryptography:**

It is an encryption system where the sender and receiver of message use a single common key to encrypt and decrypt messages. Symmetric Key Systems are faster and simpler but the problem is that sender and receiver have to somehow exchange key in a secure manner. The most popular symmetric key cryptography system is Data Encryption System(DES).

**Hash Functions:**

There is no usage of any key in this algorithm. A hash value with fixed length is calculated as per the plain text which makes it impossible for contents of plain text to be recovered. Many operating systems use hash functions to encrypt passwords.

**Asymmetric Key Cryptography:**

Under this system a pair of keys is used to encrypt and decrypt information. A public key is used for encryption and a private key is used for decryption. Public key and Private Key are different. Even if the public key is known by everyone the intended receiver can only decode it because he alone knows the private key.

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.

*arrow_drop_up*Save

*favorite_border*Like first_page Previous Introduction to Crypto-terminologies Next last_page Playfair Cipher with Examples Recommended Articles Page : Classical Cryptography and Quantum Cryptography 29, Apr 19 Custom Building Cryptography Algorithms (Hybrid Cryptography) 06, Sep 18 Differences between Classical and Quantum Cryptography 29, Apr 19 Difference between Steganography and Cryptography 21, May 19 Cryptography and Network Security Principles 13, Feb 20 Difference between Cryptography and Cryptology 17, May 20 Difference between Encryption and Cryptography 05, Feb 21 Difference between Cryptography and Cyber Security 05, Feb 21 Caesar Cipher in Cryptography 02, Jun 16 The CIA triad in Cryptography 15, Jan 18 Cryptography Introduction 02, Nov 18 Image Steganography in Cryptography 09, Apr 18 DNA Cryptography 04, May 18 Birthday attack in Cryptography 10, Sep 18 Development of Cryptography 05, Nov 18 Quantum Cryptography 09, Jan 19 One Time Password (OTP) algorithm in Cryptography 31, Jan 19 Easy Key Management in Cryptography 09, Apr 19 Bifid Cipher in Cryptography 09, Sep 19 Avalanche Effect in Cryptography 03, Feb 20 Shamir's Secret Sharing Algorithm | Cryptography 07, May 20 Knapsack Encryption Algorithm in Cryptography 03, Jun 20 Symmetric Encryption Cryptography in Java 20, Jun 20 Java implementation of Digital Signatures in Cryptography 15, Jul 20 Article Contributed By : JASHKOTHARI1 @JASHKOTHARI1 Vote for difficulty Easy Normal Medium Hard Expert Improved By : GauravK1 Article Tags : cryptography Computer Networks GATE CS Practice Tags : cryptography Computer Networks Report Issue What’s New Data Structures and Algorithms – Self Paced Course View Details Ad-Free Experience – GeeksforGeeks Premium View Details Most popular in Computer Networks Types of Network Topology UDP Server-Client implementation in C Differences between TCP and UDP Hamming Code in Computer Network Socket Programming in Python Most visited in GATE CS Normal Forms in DBMS ACID Properties in DBMS Types of Operating Systems LRU Cache Implementation Cache Memory in Computer Organization

Writing code in comment? Please use ide.geeksforgeeks.org , generate link and share the link here.

Load Comments

*5th Floor, A-118,*

Sector-136, Noida, Uttar Pradesh - 201305

*feedback@geeksforgeeks.org Company About Us Careers Privacy Policy Contact Us Copyright Policy Learn Algorithms Data Structures Languages CS Subjects Video Tutorials Practice Courses Company-wise Topic-wise How to begin? Contribute Write an Article Write Interview Experience Internships Videos @geeksforgeeks , Some rights reserved We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy Got It !*