Lesson plan

Cryptographic hash function

) at work. A small change in the input (in the word "over") drastically changes the output (digest). This is called the avalanche effect. A cryptographic hash function (CHF) is a hash algorithm (a map of an arbitrary binary string to a binary string with a fixed size of n bits) that has special properties desirable for cryptographic applications. Hashing is a one-directional mathematical operation which is quick to calculate, yet hard to reverse. Common uses include password storage and digital signatures. Even a small change in the input results in a very different hash, meaning that it functions as an efficient and consistent way to check if two copies of data or software match. Typically, the operation works on a block of input data; the hash output is then hashed with the next block, creating a new hash reflecting everything to that point; this action is repeated until the hash reflects everything through the final block. More technically: * the probability of a particular n -bit output result (hash value) for a random input string ("message") is 2^{-n} (as for any good hash), so the hash value can be used as a representative of the message; * finding an input string that matches a given hash value (a pre-image) is infeasible, assuming all input strings are equally likely.…

Back to article

Article summary

) at work. A small change in the input (in the word "over") drastically changes the output (digest). This is called the avalanche effect. A cryptographic hash function (CHF) is a hash algorithm (a map of an arbitrary binary string to a binary string with a fixed size of n bits) that has special properties desirable for cryptographic applications. Hashing is a one-directional mathematical operation which is quick to calculate, yet hard to reverse. Common uses include password storage and digital signatures. Even a small change in the input results in a very different hash, meaning that it functions as an efficient and consistent way to check if two copies of data or software match. Typically, the operation works on a block of input data; the hash output is then hashed with the next block, creating a new hash reflecting everything to that point; this action is repeated until the hash reflects everything through the final block. More technically: * the probability of a particular n -bit output result (hash value) for a random input string ("message") is 2^{-n} (as for any good hash), so the hash value can be used as a representative of the message; * finding an input string that matches a given hash value (a pre-image) is infeasible, assuming all input strings are equally likely.…

Key claims

No claims recorded.

Discussion questions

  1. Summarise the article in your own words. Which single claim would you verify first, and why?
  2. Which claim in this article is most likely to be revised as the sources update? How would you check its current status?
  3. If two sources disagreed about one of these facts, what would you need in order to trust one over the other?

Bibliography

No sources recorded.

Key claims and bibliography are generated from the same tracked claims and sources as the article page.