A cryptographic hash function that generates a 256-bit signature for a text, used in Bitcoin proof-of-work (PoW).
Secure Hashing Algorithm (SHA) -256 is the hash function and mining algorithm of the Bitcoin protocol, referring to the cryptographic hash function that outputs a 256 bits long value. It moderates the creation and management of addresses, and is also used for transaction verification. Bitcoin uses double SHA-256, meaning that it applies the hash functions twice.
The algorithm is a variant of the SHA-2 (Secure Hash Algorithm 2), developed by the National Security Agency (NSA). SHA-256 is also used in popular encryption protocols such as SSL,TLS, SSH and open source operating systems such as Unix/Linux.
The hash algorithm is extremely secure and its workings aren’t known in the public domain. It’s used by the United States government to protect sensitive information, thanks to its ability to verify a content of data without revealing it due to the use of digital signatures. Furthermore, it is also utilized for password verification, since it conveniently does not require the storage of exact passwords, as the hash values can be stored and matched with the user entry to verify if it’s correct or not.
In fact, it is nearly impossible to reveal the initial data from a hash value itself. Moreover, a brute force attack is extremely unlikely to succeed thanks to the astronomical number of potential combinations. In addition, it’s also severely unlikely that two data values (known as collision) have the same hash.