Homework on Hash Functions - Questions

  1. Hash functions are one way functions which transform some input to unique output.
  2. By creating addresses, private and public keys. Transforming transactions which can be recorded as hashes in a ledger.
  3. Each input is transformed to unique output and probability
    of two different inputs transforming to same output is infeasible if not impossible.
1 Like
  1. Describe hash functions with your own words
  • Hash functions are are functions in which each input gives a unique output. Hash functions can almost be labeled as 1 way functions in the sense that you can go from input to output but not output to input. An example of so would be f(x) = x + 1.
  1. How are hash functions used in cryptocurrencies like bitcoin? (Try to research this on your own, we will cover this later in the course but challenge yourself and see if you can find information on this already now).
  • Hash functions are used in cryptocurrencies like bitcoin to take a transaction as a unique input and receiving a unique output of a fixed length.
  1. What does it mean when we say that hash functions need to be collision resistant? (We didn’t use the term “collision resistant” in the lecture, but you will easily find this on Google, we add this question intentionally to make you research information on your own, that’s how you learn best).
  • Hash functions need to be collision resistant in order to be efficient. The term collision resistant refers to the assurance that no 2 inputs will create the same output. Each unique input gives unique output simply said.
1 Like
  1. Describe hash functions with your own words
    Given an input of virtually any size, compute a fingerprint that is statistically improbable to recreate from a different input. The more “bits” in the fingerprint, the less possible it would be to accidentally find an input to match to the same hash value as a different input. Cracking a hash is not reversing it. That’s physically impossible in any case where the input is larger than the hash. If you have a document of a mllion bits, and you hash it down to a sha256 which only has 256 bits, the information is lost, completely, utterly and not even God could recover the initial input. Cracking a hash function means you found a way to easily find alternate inputs that can generate the same hash, meaning you know can alter data and have the altered version have the same hash value as the original, breaking the entire purpose of a hash algorithm: To ensure data is not changed.

  2. How are hash functions used in cryptocurrencies like bitcoin? (Try to research this on your own, we will cover this later in the course but challenge yourself and see if you can find information on this already now).

Hash values are computed for blocks, then that hash value is used in the next block. There is no way to alter the previous block because you would alter its hash value and later blocks would detect that by seeing the hash doesn’t match.

  1. What does it mean when we say that hash functions need to be collision resistant? (We didn’t use the term “collision resistant” in the lecture, but you will easily find this on Google, we add this question intentionally to make you research information on your own, that’s how you learn best).

Collision is two inputs generating the same output. Obviously that needs to be highly improbable for a hash function to be useful. You could generate a huge hash that would be exponentially harder to find collisions for, but to be useful in the real world hash functions must be FAST. For example when making an HTTPS (secure web) connection, hashes are used. You don’t want a user waiting for data just to calculate a hash.

1 Like

HTTPS uses PK cryptography, not sha256. SHA256 can be used to store user passwords. :slight_smile:

  1. Describe hash functions with your own words

Hash function is uniqe fingerprint in whole system that can provide infromation for other members
You can input some information and it will have a unique code.

  1. How are hash functions used in cryptocurrencies like bitcoin? (Try to research this on your own, we will cover this later in the course but challenge yourself and see if you can find information on this already now).
    In my opinion, hash function uses in bitcoin between all miners to send infromation about transaction, and by the end, making new block with all infromation involved before

  2. What does it mean when we say that hash functions need to be collision resistant? (We didn’t use the term “collision resistant” in the lecture, but you will easily find this on Google, we add this question intentionally to make you research information on your own, that’s how you learn best).

It’s means thah this function may use some inputs but it needs to be protected, users can not be able to find it for reason to change

1 Like
  1. Hash functions are functions that created a unique digital fingerprint of a given input.
    1. SHA-256 is used in the creation of bitcoin addresses to improve security and privacy.
  2. it means that the hash function is resistant of creating the same hash output or different inputs.
1 Like

Hash function is used to give a certain input to produce a certain output or code. Going “one way” only.
Change one little letter or komma and the whole output/code changes. Ideal for crypthogrphy.

In the bitcoin protocol, hash functions are part of the block hashing algorithm which is used to write new transactions into the blockchain through the mining process.
Through the SHA 256 it keeps the system safe from tampering, by keep adding more data on top.

Collision resistant… Meaning two different inputs should not give the same output. It is a property of cryptographic hash function . You also talk about the pigeonhole principle
This means that no two input hashes should map to the same output hash .
You also talk of weak, and strong collision.

1 Like
Describe hash functions with your own words

Each unique input gives a unique output when you have a hash function and its not possible to go from output to input. Furthermore there are nearly unlimited possibilities if you want to brute force it because a small input can change the output completely.

How are hash functions used in cryptocurrencies like bitcoin? (Try to research this on your own, we will cover this later in the course but challenge yourself and see if you can find information on this already now).

They are used f.e. to get an output from the input of block 1 in cryptography, we have the hash value h(B1). This output combined with the input of block 2 gets us to the hash value h(B2). This continues through all the blocks.
What does it mean when we say that hash functions need to be collision resistant? (We didn’t use the term “collision resistant” in the lecture, but you will easily find this on Google, we add this question intentionally to make you research information on your own, that’s how you learn best).
A hash function is collision resistant if it is hard to find two inputs that hash to the same output.

1 Like
  1. Hash functions takes a value and processes it into a new string.

  2. It is used to secure the transactions through mining.

  3. That no two different inputs can result in the same output. Solved by having long inputs, minimizes the risk of collision.

1 Like
  1. Describe hash functions with your own words
    A. A mathematical operation which modifies any given input into a scrambled output of fixed length. Given the output the input cannot be determined. Any two identical inputs produce the same output.
  2. How are hash functions used in cryptocurrencies like bitcoin? (Try to research this on your own, we will cover this later in the course but challenge yourself and see if you can find information on this already now).
    A. Hash functions are used in BTC to slow the rate of BTC mining. A miner uses a list of unconfirmed transactions together with time stamps and previous block history to create a hash output which is impended onto the blockchain.
  3. What does it mean when we say that hash functions need to be collision resistant? (We didn’t use the term “collision resistant” in the lecture, but you will easily find this on Google, we add this question intentionally to make you research information on your own, that’s how you learn best).
    A. collisions occur when two distinct inputs correspond to the same output when applied to the same hashing function. This must be avoided otherwise it creates conflict in the network. This is avoided in SHA256 by having ridiculously high number of possible output hashes that for someone to have a collision is ridiculously improbable given todays technology.
1 Like

Hash functions are different from normal functions in the sense that they are not reverse engineerable. You can INPUT -> OUTPUT but you cant go OUTPUT -> INPUT. It is also creating a unique fingerprint in that process wich basically lets you know if the slightest detail got changed. The output will be completely different.

Because the unique fingerprint that gets generated in the output from any given input. It is essential to have hash functions in the blockchain. It makes it safe.

It’s important that hash functions are collision resistant so that its hard to find two inputs that have the same output. If it would be easy to find inputs that give the same output it would be easy for potential attacks.

1 Like
  1. Describe hash functions with your own words
    Hash functions is a one way function that creates a unique output for each unique input.
  2. How are hash functions used in cryptocurrencies like bitcoin? Hash functions are used in BTC for private and public keys and transactions
  3. What does it mean when we say that hash functions need to be collision resistant?
    Each input creates a unique output
1 Like

1- Hash functions is a function that gives a unique code/finger print to a input data.

2- The transactions in the BTC BC are the input and the output is the transaction run trough that hash function in a form of unique code. Than this code needs to be verified by the miners for your transaction to be successful.

3- Collision is when 2 different inputs get the same output, the collision resistance in the SHA-256 function prevents this because of it’s complexity.

1 Like
  1. A hash function is a unique input that generates a unique output , likea digital fingerprint .
  2. Hash functions used in mining blocks and eventually verify new transactions in bitcoin.
  3. Collision resistant means it is statistically impossible to generate the same hash for a different input.
1 Like
  1. Hash functions produce unique outputs from unique inputs. The same input will always produce the same output. You can’t however trace back an input from the output. It is designed to be a one way mechanism.

  2. Hash functions are an essential measure for informational security. In bitcoin hash functions are used as part of the blockchain algorithm, which is used to write new transactions into the blockchain through the mining process.

  3. Hash functions need to be collision resistant because we can’t have two inputs that create the same output happening regularly. They need to be hard to find to be classified as collision resistant.
    SHA-256 is an example of a collision resistant hash function.

1 Like
  1. Hash functions are a one way function that output a unique digital fingerprint.

  2. Hash functions in bitcoin are used in the mining of new transactions on the blockchain.

3.Collision resistant meaning that it would be almost impossible to find two colliding inputs

1 Like
  1. Hash functions are functions which genereate a unique fingerprint (output) from any unique input. the function only works from input to output.

  2. Hash functions are used in Bitcoin in order to write new transactions which are verified by miners and then added to the blockchain. The characteristics of hash functions make transactions secure

  3. It means that a hash function must not be able to generate the same fingerprint out of more than on unique input. Or it must at least be extremely hard.

1 Like
  1. A hash function is basically converts input data into a unique output key that cannot be reversed to find the original input data.

  2. Hash functions are used in Bitcoin to prevent people from essentially creating there own Bitcoin(s). The way each hash block connects to the next on chain means any false data is treated as such and transactions are not completed.

  3. When we say that hash functions need to be collision resistant we mean that it is very difficult to to find two inputs that will produce the same output hash function. We use resistant instead of of proof as it is mathematically possible although very very unlikely.

1 Like
  1. Hash function is a uni-directional function, where the it determines a particular output for a given input, but the input cannot be determined from the only having the output
  2. Hash functions are used to combine block header data with a nonce to output a value below the target. The target is computationally set among nodes through out the blockchain, to ensure blocks are mined ever 10 min. This target is set at every 2016 blocks mined
  3. Collision resistant means there is little chance of finding two or more differing inputs that would give the exact same hash output. It is possible for this to happen, but it is very unlikely for it to happen within a time frame that would make it threatening to the network secured by the hash function
1 Like
  1. A hash function is a unique outcome that impossible to reverse

  2. Hash functions are used to write new blocks

  3. It means that the output of 2 hash functions can nearly never be the same (mathematically it can but basically its in possible)

1 Like