Hashing or a hash function is a type of function or operation that takes in an arbitrary data input and maps it to an output of a fixed size, called a hash or a digest.
Two different inputs mapping to the same output.
MD5 is a popular and widely used hash function designed in the early 1990s as a cryptographic hashing function.
it was recommended to stop using MD5 for cryptographic applications by 2010.
SHA-1 is part of the secure hash algorithm suite of functions, designed by the NSA and published in 1995.
A MIC is essentially a hash digest of the message in question.
You can think of MICs as protecting against accidental corruption or loss, but not protecting against tampering or malicious actions.
These tables are used by bad actors to help speed up the process of recovering passwords from stolen password hashes.
A rainbow table is just a pre-computed table of all possible password values and their corresponding hashes.
A password salt is additional randomized data that's added into the hashing function to generate the hash that's unique to the password and salt combination.