Encryption, encoding, and hashing are quite confusing notions. Without digging very deep into the mathematical dimension, we will see the difference between all of these notions, keeping in mind that all of them transform data from one given format to another. The most important aspect to note is that the encryption and encoding functions are reversible but hashing is not.
Encryption is a method or a set of methods for scrambling data. The process of encrypting aims to transform plaintext information by means of a given algorithm, referred to as cipher, to produce obscure/scrambled data, referred to as ciphertext. The process of encryption requires the use of a key to both encrypt plaintext and to decrypt ciphertext. The main differences between encryption and hashing are the fact that in contrast to hashing algorithms, encryption algorithms do not produce fixed length outputs, and encrypted data can be reversed back into the original format...