Level 4
1 day < 1 min
LeaderboardGuest · Log in
Key point 4 of 8 · Cryptography and Secure Communications
Estimated reading time: 4 min

Hashing, Signatures, and PKI

A cryptographic hash function takes an input of arbitrary length and produces a fixed-length output, called a digest or hash, with several properties that distinguish it from an ordinary checksum. It should be deterministic, always producing the same output for the same input; efficient to compute; and effectively one-way, meaning that recovering the original input from its digest, known as preimage resistance, should be computationally infeasible. It must also exhibit second-preimage resistance, making it infeasible to find a different input producing the same digest as a given one, and collision resistance, making it infeasible to find any two distinct inputs that happen to produce the same digest at all. A well-designed hash function also displays the avalanche effect, whereby changing even a single bit of the input produces a digest that differs unpredictably in roughly half of its bits. These properties make hash functions foundational building blocks throughout cryptography and computing: they are used to verify file and software integrity, to store password verification data without keeping the passwords themselves, to build digital signatures, to link blocks together in blockchains, and to construct message authentication codes that confirm a message was neither altered nor forged.

Food for thought

Why do you think "Hashing, Signatures, and PKI" was significant in this period?