Reading assignment: Hashing

  1. SHA 256
  2. It would take to much time to come to a correct outcome, infeasible.
1 Like
  • What is the hashing algorithm called used in Bitcoin?
    SHA 256, Secure Hashing Algorithm.

  • Why is this hashing algorithm really hard (almost impossible) to brute-force?
    The time it would take to brute-force would take a lifetime and be expensive.

1 Like

Q1A. SHA-256
Q2A. SHA-256 has so many possibilities that the chances of it being replicated are currently impossible.

1 Like

Hi,
Yes ofc. I was so into looking how high that first number is that i didnt realised i should put that you can hash text … :slight_smile: Thanks.

Regards,
Pavel

---------- PĹŻvodnĂ­ e-mail ----------

Od: Fabrice Manzo via ToshiTimes Crypto Forum [email protected]

Komu: [email protected]

Předmět: [ToshiTimes Crypto Forum] [Blockchain and Bitcoin 101] Reading
assignment: Hashing

1 Like
  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?
    as the process is random with so huge number of possibilities it is not possible for current computing power to find a solution in limited time block
1 Like
  1. Bitcoin uses the Secure Hashing Algorithm 256 (SHA-256). No matter how large or small the hash input is, the output will always be 256-bits length

  2. Cryptographic hash functions need to have special properties to make them secure. They must be deterministic, meaning that an input will have the same output no matter how many times you parse the data through the hash function. The computation process must also be quick in order to maintain efficiency. The hash function must also render efforts to determine the input from the output infeasible, known as pre-image resistance. A brute-force attack on 256-bits would require an astronomical number of random attempts to determine a matching input. A fourth property necessitates that even small changes to the input create substantial differences in the output. A cryptographic hash function should also be collision resistant, meaning that the hashes for inputs (A) and (B) will always be different and unique.

1 Like
  1. What is the hashing algorithm called used in Bitcoin?
    SHA-256 (Secure Hashing Algorithm 256).

  2. Why is this hashing algorithm really hard (almost impossible) to brute-force?
    with SHA-256 it is impossible to brute force because it is difficult to find 2 inputs to produce the same output in a hash function.

1.SHA-256
2. Because it’s impossible to find 2 inputs to produce the same outputs in a hash function

  1. SHA-256
  2. You’re have to pick up a random input, hash it and then compare the output with the target hash and repeat until you find a match. Trying to find 2 inputs that produce the same output for a hash function.
1 Like
  1. SHA256 = A “Secure Hashing Algorithm”, which generates a 256-bit Output for an input of any length
  2. Because you cannot retrieve the input value (number/text/content) from the 256-bit output (hash). You’d have to guess the input, hash it and compare the hash result to the original output. (“trial&error” approach). On average, you’d need 2^256/2 = 2^255 tried for a 256-bit hash algorithm. (Right)?

BTW: The article goes way beyond hashing, which I found confusing. Only the first section is relevant for the question. Maybe clarify this in the reading assignment or find some other source, as we’re only talking about hashing right now.

Bitcoin hash algorithm is SHA256
To break the hasing algorithm would have to recreate the complex hash input value.

1 Like
  1. Bitcoin uses the SHA-256 hashing algorithm.
  2. The difficulty in brute-forcing the SHA-256 hashing algorithm comes from the fact that by its own nature it is not possible to crack an hashed input starting from the output, so in order to find the input knowing its ouput the only possible approach is to randomly hash inputs looking to obtain the possessed output as a result. However, statistically speaking, it is very difficult to obtain the input in such way and it would be time-consuming as well as power-demanding. Its safety comes from the fact that, even if the appropriate input could be found, the odds are low and it would take so much time and computing power that it ends up being unprofitable.
1 Like

You’re describing a collision. Brute-forcing is try to keep try guessing the input and check if the hash is the same if that hash you want to brute force

You’re describing a collision, brute forcing means keep trying to guess the input from a given hash

don’t understand i though your trying to prevent a collision buy making a output function so large that it cannot be Brute-forced.

what am i misunderstanding?

SHA-256

The length of the hash functions is far too complex to brute force, as it is 256 digits.

What is the hashing algorithm called used in Bitcoin?

  1. SHA -256 (SHA=Secure Hashing Algorithm)

Why is this hashing algorithm really hard (almost impossible) to brute-force?
2. This is a cryptographic hashing algorithm. Because of pre-image resistance (see below), to use the brute-force method you would have to pick up a random input, hash it and then compare the output with the target hash, and repeat until you find a match. As the output is 256 bits in length this would take an average of 2^256/2= 2^255 times or 5.79 x 10^76 times to achieve - a huge number!
It also has to have the following 6 properties to be considered secure:

Deterministic: no matter how many times you hash the same input it will always lead to the same output
Quick computation: it must be quick
Pre-image resistant: it should be infeasible (not impossible) to determine the input data from the output
A small change in input data changes the whole output
Collision resistant:Given 2 inputs A and B it is infeasible that hash output H(A) will be the same as hash ouput H(B) - although not impossible, it would usually take so long with SHA-256 that it is safe to assume that if H(A) =H(B) then A=B.
Puzzle friendly: For every output Y, if k is chosen from a high min-entropy (eg randomly from 1-10,000) then it is infeasible to find an input x that k concatinates with x to =Y H(k|x)=Y

2 Likes

Correct,

but before, you answered the question about Brute-forcing that it’s impossible to find 2 different inputs to produce the same outputs in a hash function. This is about hash collisions.
Brute forcing is keep guessing the input from a given output. hash it, and check if the hash matches the hash you want to break (brute force)

1 Like
  1. The hashing algorithm in Bitcoin is called Sha-256.

  2. The hashing algorithm is almost impossible to brute force because once you start to add more than a few digits to the input, the difficulty of guessing the original input that led to the output you are looking for increases exponentially. It is not impossible to guess the original input, but it is so infeasible that you would guess correctly that it simply does not make it worth the infiltrators time to do so.

  1. SHA-256.

  2. The input value cannot be retrieved and would have to be guessed and the output compared to the hash result of the original. Through this trial and error process, this would be infeasible (although not impossible).