Difference between Encryption, Encoding and Hashing

Key Difference: Encryption, encoding and hashing are techniques used for converting the format of data. Encryption is used for changing plain text into cipher text so that only authorized entities can understand it. Encoding is used for changing the data into a special format which makes it usable by external processes. In hashing, the data is converted to a message digest or hash, which is usually a number generated from a string of text. Hashing is not reversible as encryption and encoding.

Encryption, encoding and hashing are often regarded to be the same by a few people. However, there are few differences between them. Encryption deals with keys which are used to encrypt and decrypt the data. These keys are used to transform a simple text into a cypher text and the vice versa. Encryption is used for maintaining the confidentiality of sensitive data. Encryption transforms the form of data in order to keep it safe and secured from unauthorized entities.

Encoding also deals with changing the form of data. However unlike encryption, the intention of encoding is not related to security. The message is encoded by using an algorithm. However, there is one cipher text produced for each plaintext. Binary encoding of decimal numbers can be seen as an example of encoding.

The scheme used for transformation is not kept secret like in the case of encryption. It is generally publically available and thus, the encoded information can be easily decoded. The aim of encoding is the protection of integrity of data while moving over a communication network.

Like encoding and encryption, hashing is also a process of changing the form of data. The data is converted to a message digest or hash, which is usually a number generated from a string of text. These digests are important as one can easily match the hash of sent and received messages to ensure that both are the same and no tempering is done with the data.

Encryption and encoding are reversible by the knowledge of appropriate key or scheme. However, hashing is irreversible. One cannot reach to the original form of data by using a digest. Encryption and encoding also varies as encryption usually involves the use of keys and the keys are only known to authorized entities. In encoding, the algorithm which is used for encoding is publically known. Thus encryption, encoding and hashing are all methods of changing the form of data from one to another. However, they differ in the methods used for conversion and their prime purposes.

Comparison between Encryption, Encoding and Hashing:

 

Encryption

Encoding

Hashing

Meaning

Encryption deals with keys which are used to encrypt and decrypt the data. These keys are used to transform a simple text into a cypher text and the vice versa.

The message is encoded by using an algorithm in encoding. However, one cipher text is produced for each plaintext. The scheme used for transformation is not kept secret like in the case of encryption. It is generally publically available and thus, the encoded information can be easily decoded.

In hashing, the data is converted to a message digest or hash, which is a number generated from a string of text. These digests are important as one can easily match the hash of sent and received messages to ensure that both are the same and no tempering is done with the data.

Use of Keys

Yes

No

No

Pupose

Security of data

Protection of integrity of data

Verification of data

Uses

Many- like transfer of sensitive business information, corresponding by private emails, etc.

Many – like compression for saving memory or confirmation related to transfer of data

Many- Sending files, passwords, searching, encryption, etc.

Reversible to the original form

Yes, by using the appropriate key

Yes, by knowing the scheme used for encoding

The digest cannot be reversed back to its original form

Example

Common symmetric encryption algorithms include DES, 3DES, AES, and RC4.

Character encoding – Words and sentences in text are created from characters.

MD5 algorithm is used for creating a 128 bit message digest from data.

Image Courtesy: blog.witness.org, w3.org, unixwiz.net

Most Searched in Health Most Searched in Pregnancy and Parenting
Most Searched in Food and Drink Most Searched in Computers and Internets
DSL vs ADSL
Unlocking vs Jailbreaking an iPhone
Common Law vs Code Law
Transgender vs Hijra

Comments

Plz give full answer of this Comparison between Encryption, Encoding and Hashing:

Add new comment

Plain text

CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.