Member-only story
The Wonderful World of Hashing … Some Biba, Entropy Calculations, and Virtually Every Hashing Method Under The Sun
At the core of cybersecurity is … trust. This can be human trust within a system, such as seeing that there’s a green bar on an HTTPs URL, or that a user is reassured by fingerprint recognition on their banking app. But human trust is only part of it, as we need digital trust. For this, we need to make sure that our data is what it should be and that no one has changed it from the state that it is meant to be in. And for this, we turn to one magical method .. hashing.
With hashing we want to build in some form of integrity, and where we can check that the data has not been modified. This might relate to a file that you want to download, a driver on your system, or in the text in an email. At the core of this checking is a simple hashing function.
With hashing we perform a one-way function, that takes us from the data, and then produces a hashed value. We should be able to mathematically do the reverse, as we don’t want someone to reverse our hashes. But, at times, Eve can actually reverse the hash if she has already computed the match between the data and the generated hash. And so we also add a bit of salt, and where the salt value changes the hash for a given input.