Hashing
Hashing is a process of converting any length of text is into an array of numbers and letters through an algorithm. The message that you want to convert is called Input and the algorithm that are used to convert the message is called Hash Function, and the output is called Hash Value.
Hashing needs to have some qualities in order to determine that it is useful, here is some of the qualities of hashing:
1. Unique Hash Value: The same input should produce the same Hash Value
2. Hash Speed: The Hash Function should be quick to produce Hash Value
3. Secure Hash: It is impossible to determine the Input based from Hash Value alone, because a slight difference in an Input can drastically change the outcome of the Hash Value
Hashing in Blockchain
In Blockchain, Hashing are used to determine the state of the Blockchain.
For the most common known example that uses the Blockchain technology is Bitcoin Network. Each transaction requires one or more digital signatures. Signatures determine/make sure that the transaction is only made by the owner of the address and that it should be received by the designated recipient.
In a Blockchain, the hash of a previous block of a sequence is a protected sequence because as a function of the design, a hash is
very sensitive because of it's own qualities(Qualities of Hashing). So, to change any variable of any one of the hashes in a
given block would cause a domino effect, altering all of the previous
transactions in the block.
Here is a further explanation of what is Hashing and what is Blockchain.
Source: https://www.youtube.com/watch?v=2BldESGZKB8
Hash Tables
Hash Table is a structure of data that is used to store information. The information in Hash Tables has 2 components and that is Key and Value. It uses a hash function to convert an index into an array where the element will be searched or inserted.
Here is an example of a Hash Table
Source: https://www.youtube.com/watch?v=MfhjkfocRR0&t=145s