Passwords and such small bits and pieces of information are generally stored in eeproms in digital systems. While developing such a system the general methodology is that the user is made to enter a predefined length of characters which is encrypted using an algorithm and a key. This encrypted password is then stored into the eeprom or similar memory.
The alternative approach is to use a hash function. The hash function converts the large data into a small datum and this value is called a hash value. Cryptographic hash has certain properties. The ideal cryptographic hash function has four main or significant properties:
- it is easy (but not necessarily quick) to compute the hash value for any given message
- it is infeasible to generate a message that has a given hash
- it is infeasible to modify a message without changing the hash
- it is infeasible to find two different messages with the same hash
A very popular example is the MD5 or Message Digest 5 hash. These are commonly used to verify the integrity of messages and even files.