Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Section 2 (40 points) 1. In Bitcoin, In Bitcoin, a miner needs to solve a math puzzle before he/she can declare the success of
Section 2 (40 points) 1. In Bitcoin, In Bitcoin, a miner needs to solve a math puzzle before he/she can declare the success of forming a block. Let H() be the hash function used by bitcoin. This puzzle is to make the first k bits of Hiblock header) - 0. (a) in bitcoin, H() produces a result of 256 bits. If k-40, what is the ratio of (the total number of hash results that can meet the requirement) over (the total number of hashed values)? (4 points (b) In bitcoin, miners can change the "nonce" field in a block header to see if H(block header) can meet the requirement set in (a). Let p be the probability that we randomly select a nonce which can satisfy the requirement given above. Let Y be the number of tries required to produce a hash value that can meet the requirement as described above. It can be shown that the average value of Y is 1/p. Assume it takes x seconds for a computer to decide if a random guess is successful or not. Let Z be the average amount of time for a computer to find a nonce that can meet the requirement. Then Z-x/p. Computing power doubles every 18 months. That means x is reduced by half every 18 months. How should we change k if order to keep Z the same after 18 months? 14 points] 2. (a) Bitcoin uses the elliptic-curve public-key cipher. Compared with the RSA cipher, what is the main advantage of the elliptic-curve cipher? [4 points) (b) It is said that once a transaction is put inside a blockchain and accepted by the bitcoin system, changing the content of any transaction later can be detected immediately. Explain why this is true? 14 points 3. Each transaction in Bitcoin contains a number of inputs and outputs. Let H() be the hash function used by bitcoin. For the three transactions X, Y. and W shown below, H(X) H(Y) H(W) represent the transaction ID of each. In bitcoin, a user can be identified by a public key, or by H(public key). The latter is shorter. Eric wants to create a transaction W by using the money given to him in two previous transactions X and Y. Eric's (public, private) key pair is represented by (K,K). Transaction.X lapot Input 530 Oupa 530 (KT) Tag Ispar Cup 5.50 (K) Trimation V (a) If the outputs in X and Y use K as the identity of the recipient. What Eric needs to show in the Input 1 and Input 2 of W so that bitcoin miners can verify that he can legally use the money in the output of X and Y. 14 points] (b) Repeat (a) if H(K) is used as the recipient identity in the output of X and Y. [4 points]
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started