The Blockchain technology uses Cryptographic hashing techniques to secure all the data related to the transactions that happen on the blockchain network
Cryptographic Hash Functions
Cryptographic hash functions are mathematical functions that take inputs of variable length and give outputs of fixed lengths called hash value of the input.
Properties of Cryptographic hash functions
- The deterministic property of the cryptographic hash function gives the same hash value as output when the same message is given as input.
- The cryptographic hash function gives the hash output quickly for any given message.
- The message cannot be generated from the hash value unless all the messages are tried since the cryptographic hash functions are infeasible.
- Even if the contents of the message are slightly changed, the hash value of the message changes and the new hash value cannot be correlated with the old hash value.
- The hash value for each message is generated uniquely and no two messages have the same Hash Value.
Applications of the cryptographic hash function
- Verifying the integrity of messages and files: Cryptographic Hash functions are used to verify whether the message sent by the sender and the message received by the receiver are same and that no changes have been made in the message while transmission. This is done by comparing the hash digests before sending the message and after receiving the message. If the hash digests are the same at both ends, then the same message has been transmitted from sender to receiver without any changes. If the hash digests at both the ends are different, then the same message has not been transmitted from sender to receiver and the message has been changed while transmission.
- Signature generation and verification: Digital Signatures are generated by applying hash functions on the message. The authentication of these signatures is verified by comparing the hash digests of the signature before and after the transmission of the document. If the hash digests match at both ends, then the signature is authenticated and vice versa.
- Password Verification: The hash values of the Passwords are generated by the application of the cryptographic hash function algorithms and the same values are compared for the verification of a password.
- Proof of Work: Proof of Work uses HashCash like methods to verify that work or transaction has been successfully completed by a miner and to award him his reward which is due for successfully completing the transaction.
- File or Data identifier: One of the main applications of a cryptographic hash function is to allow the fast look up of data in a hash table which helps in faster identification of particular files in a huge storage of data.
Examples of Cryptographic hash functions: The following are the different types of cryptographic hash functions namely MD-5, SHA-1, SHA-2, SHA-3, RIPEMD-160, Whirlpool, BLAKE-2 etc.