Encryption and Hashing functions

The encryption functions use a password to transform data in a way that can be reversed using a decryption function along with the password. The output of an encryption function is always as large or larger than the original input. A hashing function transforms the data in a way which is not reversible and is generally much smaller than the original input. Many different inputs map to the same output for a hashing function, whereas all inputs to a encryption function generate a unique output for a given password.