Steemit Crypto Academy Contest / S1W3 – Blockchain through the Concepts by @warrior02
Hello steemians, I trust you all are having a good day. I am pleased to be engaging on this week's contest and today, am going to be writing on my favourite Blockchain Word and that word is Hash and Hash function. In this article, I will examine a Hash, Hash function, it's role play in Blockchain technology and it's importance.
1. Tell us about your favorite concept or term related to blockchain, try to be explanatory and make sure to give your opinion. (For example: Decentralized, Genesis Block, Hard Fork, Proof of Stake.)
What is a HASH?
A Hash refers to cryptographic function that transforms a given data into a format that only has unrepeatable and unique alphanumeric characters. Let us take an example to understand more. If we input a word like Mansion to be encoded via a hash function, then the result will be a set of alphanumeric characters and this generated result cannot tally with any other word.
The responsibility of transforming the informations which a block has and generating a hash for that block is carried out by the hash function. When a block is encoded via a hash function, very bulky information which is contained in the block is summarized into a few alphanumeric characters.
A hash function can be said to a function or a programed instruction that accepts input of arbitrary size and then fits it into a data structure whose number of characters is fixed.
History of Hash
The existence of hash functions can be traced back to 1961 and have continued to evolve till date.
Ronald Rivest developed Mesage Digest 2 (MD2) cryptographic hash in 1989. MD2 is a byte oriented hash function that generates upto 128-bit of hash character. It was built to be compatible with 8- bit computers and it's major application area is for digital signature. MD2 is currently out of use because of its shortcomings such as low security and longer computation time.
Message Digest 5 (MD5) was later developed as a one way hash function that will recieve input of any length and bring an output which will have a fixed length of characters. This output can then be used to authenticate a message for which it is meant for. The integrity of MD5 has depreciated as it is no longer widely used because of its insecurity. It was discovered that with special computers, it could generate the same hash for 2 different inputs hence causing a collision. Today, MD5 is used in ecosystems where security is not a fundamental.
RIPE is a hash function project that was designed by Europeans in 1992 with the core purpose of filling the space of MD4 then. RIPE has been certified a secure Hash function and comes in different versions such as RIPEMD-160, RIPEMD-256 and RIPEMD-320.
The SHA hash function was later developed in 1993 by the NSA. It is widely used today by many and its SHA-256 is the cryptographic hash function which the Bitcoin protocol uses today.
Characteristics of hashes
1. They are unrepeatable and Unique: It is not possible for two inputs to have the same hash result. Hence, all hashes are unique. That is to say that each input is assigned a unique hash. Any minimal change in the input will bring about a totally different hash output.
2. They are efficient:
Calculation power for the execution of hash functions are less.
3. They are irreversible:
To convert back a hash to the input that was used to generate it is impossible. That is to say that a hash cannot be used generate the input that created it.
4. fixed length:
For every hash that is generated, the length is usually equal. That is to say that the characters of the hash output are always of the same length. There are only 64 characters in a SHA-256 hash function.
2. Why do you think it is important in the blockchain?
In the Blockchain ecosystem, hash functions are important because of it's features and benefits. Hash function aids the Blockchain anonymity, security and privacy. Below are some of the uses of hash in Blockchain.
1. Cryptocurrency Mining:
In the process of mining, a good calculation is needed to produce a block. With the use of hash functions, the mining process is made easier.
Mining is the process of adding new blocks upon other existing blocks of a given protocol. Now, if all data on a block is being added to the Blockchain of a given protocol, it would make the mining process more complex but with the aid if hashes, blocks are summarized in a piece of alphanumeric characters and computation and confirmation of new blocks are made easier.
2. Generation of Cryptocurrency addresses and Keys:
Observe that the wallet addresses of each user is unique. That is to say that no two users have the same wallet address. This have been so far achieved by the cryptographic hash function. Wallet address are created using asymetric cryptography and hash functions.
3. Do you think that the existence of the blockchain would be possible without this concept? Is there an alternative or similar term?
The Blockchain technology entails some core things which include privacy, security, anonymity, and transaction throughput. All these features are being affected by the Hash function directly or indirectly. In the case of security, the hash plays a major role by ensuring that two user addresses does not tally and also the hash tries to make mining faster and smoother. Just imagine the time that would have been spent to generate a Bitcoin block without the hash function. So much time. But with the hash function comes ease and pace in pace in the mining process.
Without the hash and hash function, the Blockchain technology could not have achieved such maximum security and it's complementing features. I donnot think that their is an alternative to the work which the hash and hash function does in the Blockchain technology.
4. Do you think it is possible to improve this term in some way? Explain us how
We have seen many protocols get improved with time. Even on this article entails the stages which the hash functions had to pass to become a thing that can be used today with assured security.
I think that there is still room for improvement on what we know today to be the best cryptographic hash function. The main challenge which hash functions face is the collision problem. However, the recent hash standard which is the SHA-256 has been proven to be free from collision problem. I believe that more work could be done to ensure complete elimination of collision in the future.
Hash function is a function that accepts inputs of any size and encodes it to produce an output that will have a set alphanumeric characters.
Hash is the result obtained from a hash function. It is that fixed number of characters that is used to represent a given data (input).
The position of hashes and hash funtion cannot be underrated in the Blockchain technology as it is part of the building blocks and the reason for the successful operation of the Blockchain technology today.
Thank you for reading my post today.