Hashes

Cryptographic hashes are used in a variety of security functions for their ability to represent an arbitrarily large message with a small sized, unique thumbprint (the hash). They have the following properties:

  • They are designed not to disclose any information about the original data that was hashed (this is called resistance to first pre-image attacks)
  • They are designed not to allow two different messages to have the same hash (this is called resistance to second pre-image attacks and collisions)
  • They produce a very random-looking value (the hash)

The following image denotes an arbitrary chunk of data D being hashed into H(D). H(D) is a small, fixed size (depending on the algorithm in use); from it, one cannot (or should not be ...

Get Practical Internet of Things Security - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.