Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cryptography #43

Open
anitsh opened this issue Apr 30, 2020 · 3 comments
Open

Cryptography #43

anitsh opened this issue Apr 30, 2020 · 3 comments
Assignees
Labels
cryptography Cryptography cybersec Cybersecurity wip Work In Progress, On Going, Doing

Comments

@anitsh anitsh self-assigned this Apr 30, 2020
@anitsh anitsh added backlog Backlog and removed todo labels May 11, 2020
@anitsh anitsh changed the title CSS Module - Jul 22, 2020
@anitsh
Copy link
Owner Author

anitsh commented Jul 24, 2020

Cryptography is the study of secure communications techniques that allow only the sender and intended recipient of a message to view its contents. The term is derived from the Greek word kryptos, which means hidden. It is closely associated to encryption, which is the act of scrambling ordinary text into what's known as ciphertext and then back again upon arrival. In addition, cryptography also covers the obfuscation of information in images using techniques such as microdots or merging. Ancient Egyptians were known to use these methods in complex hieroglyphics, and Roman Emperor Julius Caesar is credited with using one of the first modern ciphers.

Various cryptography techniques has been developed to provides the data security, to ensures that the data transferred between communication parties are confidential, not modified by unauthorized party, to prevent hackers from accessing and using their information. Caesar cipher, monoalphabetic cipher, homophonic substitution cipher, Polyalphabetic Cipher, Playfair cipher, rail fence, One time pad, hill cipher are some of the examples of cryptography techniques

Cryptography deals with various security principles which are as follows:

  • Confidentiality – It specifies that only the sender and the recipient or recipients should be able to access the message. Confidentiality will get lost if an authorized person is able to access a message.
  • Authentication – It identifies a user or a computer system so that it can be trusted.
  • Integrity – It checks that the contents of a message must not be altered during its transmission from the sender to the recipient.
  • Non-repudiation – It specifies that the sender of a message cannot be refused having sent it, later on, in the case of a dispute.

Cryptography System
image

@anitsh
Copy link
Owner Author

anitsh commented Jul 24, 2020

Types Of Cryptography

Simple Codes

This category is any way of writing a message by side that it is difficult for anyone else to read. That involves writing stuff in another alphabet. Here we can see that Icelandic runes and IPA, as well as another niche, built alphabets such as the Deseret Alphabet.

image
In this, we can use language to code. We have looked into the creation of created languages such as Elvish and Esperanto.
Chester Naz and Judith Schiess Avila’s book Code Talker is a book that explains how the Navajo language had been used as a code in the Second World War and never was cracked into extremely intense conditions.
If Navajo had no words for a particular notion, the code speakers chose a term instead. The Navajo word for ‘ hummingbird, ‘ for example, had become a fighter plane, and ‘ iron hat ‘ was Germany.

Symmetric Encryption

Symmetrical encryption is a type of encryption that is used for the encryption and decryption of electronic data by just one key (a secret key). Substitution ciphers are symmetrical encryption techniques, but modern symmetric encryption can be much more complicated.
Data are converted to a method that cannot be understood by anyone without a secret key to decrypt it using symmetrical encryption algorithms.
Symmetric encryption is an old algorithm but it is faster and efficient than asymmetric encryption. Because of great performance and fast speed of symmetric as compare to asymmetric encryption.
Whereas Symmetric key cryptography involves the usage of the same key for encryption and decryption. While Asymmetric key cryptography involves the usage of one key for encryption and another different key for decryption.
Symmetric encryption is typical for big quantities of information, e.g. for database encryption, in bulk encryption. In the case of a database, the secret key can only be encrypted or decrypted by the database itself.

We can see the working of Symmetric encryption in the picture given below:
image
image

Two kinds of symmetrical encryption algorithms are available:

  • Block Algorithm
    The set of bits is encoded with a specific secret key in electronic data blocks. The system keeps the data in its memory while it waiting to get complete blocks when the data are encrypted. Some important Block cipher algorithms are DES, Triple DES, AES, etc.
  • Stream Cipher Algorithm
    In this, Plain text numbers or characters are combined with pseudorandom cipher digit stream. Some important Stream cipher algorithms are RC4, A5, BLOWFISH, etc. In symmetric key encryption, The encryption code can be cracked if someone finds out the symmetric key. But this problem can be overcome with the Diffie-Hellman algorithm. In the Diffie-Hellman key exchange or agreement algorithm, the sender and receiver must agree on a symmetric key using this technique. This key can then be used for an encryption or decryption purpose.

Asymmetric Encryption

Asymmetric encryption is also called public-key cryptography. Asymmetric key encryption helps to resolve a key exchange problem of symmetric key Cryptography. In Asymmetric encryption, Two keys are used to encrypt plain text in asymmetrical encryption. Through the internet or big network, the secret keys are exchanged. It is necessary to notice that anyone with a secret key can decrypt the message, so asymmetric encryption is using two corresponding keys to increase safety.
Anyone who wishes to send you a message will have a public key freely accessible but the second private key is held the secret for you to understand you only. A message encrypted with a public key can be decoded with a private key. A message encrypted with a private key can also be decrypted with a public key.

We can see the working of Asymmetric encryption in the picture given below:
image
image

Steganography

Steganography is a technique that facilitates the hiring of a message that is to be kept secret inside other messages. Earlier, people used methods to hide messages such as invisible ink, minute variations, etc.
But in an age of technology, Steganography is a technique to conceal data that can be the file, message, image, etc inside other files, message or images.

Hashing

Hashing is the cryptographic technique that converts data which can be any form into a unique string. Regardless of size or type, any data can be hashed using a hashing algorithm. It takes data of random length and converts it into fixed hashed value.
Hashing is different from other encryption methods because, in hashing, encryption cannot be reversed that is cannot be decrypted using keys. MD5, SHA1, SHA 256 are the widely used hashing algorithms.

@anitsh
Copy link
Owner Author

anitsh commented Jul 24, 2020

Differences Between Cryptography and Encryption

  • Cryptography is the study of concepts like Encryption, Decryption, used to provide secure communication whereas Encryption is the process of encoding a message with an algorithm.
  • Cryptography can be considered as a field of study, which encompasses a whole lot of techniques and technologies whereas Encryption is more of a mathematical and algorithmic in nature.
  • Cryptography, being a field of study has broader categories and ranges, encryption is one such technique whereas Encryption is one of the aspects of Cryptography can encode communication process efficiently.
  • Cryptography is more generic in nature uses digital signature and another mode of techniques to provide security for digital data whereas Encryption is being utilized with a set of algorithms widely known as a cipher to encrypt the digital data.
  • Cryptography has a symmetric and asymmetric version, with a concept of shared and non-shared key whereas Encryption follows the same approach with some specific terms like ciphertext, plaintext, and cipher.
  • Cryptography involves working with algorithms with basic cryptographic properties whereas Encryption is one of the subsets of Cryptography uses mathematical algorithms called cipher.
  • Cryptography has its application which is wide and ranging from digital data to the classical cryptography whereas Encryption is utilized to encode the data in transit over a computer network.
  • Cryptography’s fields include computer programming, algorithm, mathematics, information theory, transmission technology whereas Encryption is more of digitalized in nature, since the modern-era.
  • Cryptography involves two major components called Encryption and Decryption whereas Encryption is a process of safeguarding an information to prevent unauthorized and illegal usage.
  • Cryptography act as a superset of Encryption, i.e. every process and terms used for Encryption can be said to be a part of Cryptography whereas Encryption being a subset has its own specific terms and processes.

@anitsh anitsh changed the title - Cryptography Jul 24, 2020
@anitsh anitsh added cryptography Cryptography cybersec Cybersecurity wip Work In Progress, On Going, Doing and removed css CSS frontend Frontend web Web backlog Backlog labels Jul 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cryptography Cryptography cybersec Cybersecurity wip Work In Progress, On Going, Doing
Projects
None yet
Development

No branches or pull requests

1 participant