- Learn Blockchain Programming with JavaScript
- Eric Traub
- 320字
- 2021-06-10 18:40:38
Understanding the SHA256 hashing function
The SHA256 hashing function takes in any string of text, hashes that text, and returns a fixed-length hashed string.
To get a better understanding of what hash data looks like, visit https://passwordsgenerator.net/sha256-hash-generator/. This is a hash generator. If you input any text into the text box, you will get hash data as the output.
For example, if we put CodingJavaScript into the textbox, the hash that is returned to us will look like the one highlighted in the following screenshot:
The output hash that we can observe in the preceding screenshot seems arbitrary, and thus helps in keeping the data safe. This is one of the reasons why SHA256 hashing is so secure.
Now, if we add another character to our input string or if we change our input string in any way, the entire output hash will change completely. For example, if we add an exclamation mark at the end of our input string, the output hash will entirely change. You can observe that in the following screenshot:
You can try experimenting by adding new characters at the end of the input string. You'll observe that as we add more or remove the characters, the entire output hash will change drastically every time, thus generating the new random patterns.
One other thing that you may want to observe related to SHA256 hashing is that with any given input, the output will always be the same. For example, for our input string, codingJavaScript!, you will always get the same hash output that was shown in the previous screenshot. This is another very important feature of SHA256 hashing. With any given input, the output or the hash that is returned from that input will always be the same.
So, this is how SHA256 hashing works. In the next section, we'll implement the SHA256 hashing function inside of our hashBlock method.
- 程序員面試白皮書
- Visual Studio 2012 Cookbook
- Oracle從新手到高手
- Dynamics 365 Application Development
- 深入淺出Java虛擬機:JVM原理與實戰(zhàn)
- PHP程序設計(慕課版)
- Reactive Programming with Swift
- C和C++安全編碼(原書第2版)
- Data Analysis with IBM SPSS Statistics
- PostgreSQL Replication(Second Edition)
- Android 應用案例開發(fā)大全(第3版)
- Node.js Design Patterns
- Learning Laravel's Eloquent
- 劍指大數(shù)據(jù):企業(yè)級數(shù)據(jù)倉庫項目實戰(zhàn)(在線教育版)
- Unity 2017 Game AI Programming(Third Edition)