Answer the questions below.
- What is the hashing algorithm called used in Bitcoin?
- Why is this hashing algorithm really hard (almost impossible) to brute-force?
Answer the questions below.
Bitcoin uses the SHA256 hashing algorithm.
It is hard to brute-force because what length of input data, you have same length of output data.
SHA-256
The technical reason it is hard to brute-force is because the process of solving the hashing algorithm is done entirely by random. In order for a miner to solve (brute-force) the algorithm, they need to take the hash of the block, concatenate it with the nonce, an arbitrary string of values, hash it again, and compare their results with the difficulty level. If their results are below the difficulty level, it is accepted and the new block is appended to the blockchain. If not, they take the hash again and repeat the process with a new nonce each time until the results are less than the difficulty level.
The practical reason the algorithm is really hard (almost impossible) to brute-force is because there is a specified hash rate for each block to be mined to maintain a specific and predictable supply of Bitcoin. Miners are have an incentive to mine more or less as the difficulty level rises or decreases, which is determined by the number of active miners participating to generate new blocks.
The algorithm utilizes components of math and game theory to achieve the desired result from participants.
SHA 256
Because SHA 256 hash has 2^256 different possibilities. 2^256 is a 78 digit number. Although no hash function is collision free, but this would take so long to find a collision.
The hashing algorithm that is used in Bitcoin is SHA-256. Regardless the input, the output will be 256 bits long and at the time of writing no collisions have been found (in contrast with other hash functions such as SHA-1 and md5)
SHA-256 is really hard to brute-force because it takes a lot of computational effort and resources. In order to find a collision you need to do approximately 2^128 computations (including the Birthday paradox theory) which is a really large number and takes centuries to compute.
You already received the answers from people who watched. But, I have a question. First setting the stage I guess.
A childhood friend of mine is a chief engineer, now for HP. He used to work for Convex which was bought out by HP and competed with Cray. He has access to the most powerful supercomputers in the world. I’m not talking about breaking into anything but, would there be a place for such power in computing in any of this. I haven’t gotten into any of the mining, so, I don’t know. I’m just curious.Also, I’m not talking about anything unethical. He wouldn’t do anything unethical. But, is there a way that the computing power could give an advantage.
1. What is the hashing algorithm called used in Bitcoin?
sha-256
2. Why is this hashing algorithm really hard (almost impossible) to brute-force?
It would take too much time to bruteforce it. (2^256 possibilities)
The hashing algorithm used in Bitcoin is SHA-256 (Secure Hashing Algorithm 256).
SHA-256 hashing algorithm is really hard to brute-force because no matter how big or small your input is, the output will always have a fixed 256-bits length. And when dealing with large amounts of data the chances of someone randomly matching both the input and output are astronomical with the possibility of it happening would take so long it doesn’t even matter.
2.When you insert an input into the hash function it produces a unique hash therefore any minimal changes in the input will cause a change in the hash so if someone doesn’t know the input it now becomes very hard to get the exact hash.