What function does a hash algorithm perform in PGP?
The hash function is responsible for two primary tasks in PGP: • Creation of Digital Signatures. The message is passed through the hash function and the resulting hash value is signed with the users private key. • Whitening of the passphrase. Passphrases are passed through the hash algorithm to produce a “fingerprint” which is then used by the symmetric cipher to decrypt the private keyring. It is therefore important that the hash function has the following two characteristics: • The function is One Way – that is to say it should be “hard” to find a message that hashes to a pre-specified value. • The function is Collision Resistant – that is to say it should be “hard” to find two messages that hash to the same value.