Encoding is the process of transforming data in to a different format using a method that is publicly available. The purpose of this transformation is to increase the usability of data especially in different systems. Encryption is also a process of transforming data that is used in cryptography. It converts the original data in to a format that can only be understood by a party that possesses a special piece of information (called a key). The goal of encryption is to keep information hidden from parties who do not have permission to view the information.
What is Encoding?
Transforming data in to a more usable format by different systems, using a method available publicly is called encoding. Most of the time, the converted format is a standard format that is widely used. For example, in ASCII (American Standard Code for Information Interchange) characters are encoded using numbers. ‘A’ is represented using number 65, ‘B’ by number 66, etc. These numbers are referred to as the ‘code’. Similarly, encoding systems such as DBCS, EBCDIC, Unicode, etc. are also used to encode characters. Compressing data can also be seen as an encoding process. Encoding techniques are also used when transporting data. For example, Binary Coded Decimal (BCD) encoding system uses four bits to represent a decimal number and Manchester Phase Encoding (MPE) is used by Ethernet to encode bits. Encoded data can be easily decoded using standard methods.
What is Encryption?
Encryption is a method of transforming data with the intension of keeping it a secret. Encryption uses an algorithm called a cipher to encrypt data and it can be decrypted only using a special key. Encrypted information is known as ciphertext and the process of obtaining the original information (plaintext) from the ciphertext is known as decryption. Encryption is specially required when communicating over an untrusted medium such as internet, where information needs to be protected from other third parties. Modern encryption methods focus on developing encryption algorithms (ciphers) that are hard to break by an adversary due to the computational hardness (therefore could not be broken by a practical means). Two of the widely used encryption methods are Symmetric key encryption and Public-key encryption. In Symmetric key encryption, both the sender and the receiver share the same key used to encrypt the data. In Public-key encryption, two different but mathematically related keys are used.
What is the difference between Encoding and Encryption?
Even though both encoding and encryption are methods that transform data in to a different formats, the goals tried to achieve by them are different. Encoding is done with the intension of increasing the usability of data in different systems and to reduce the space required for storage, while encryption is done to keep the data secret from third parties. Encoding is done using publicly available methods and it can be easily reversed. But encrypted data cannot be decrypted easily. It requires the possession of special piece of information called a key.