Implement the basic Merkle tree. (Use any programming language) Test Cases

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
leaves
v-Hash( s)
s, secret
Lab Task (1/3)
* Implement the basic Merkle tree. (Use any
programming language)
* Test Cases
• The reason we use Merkle trees to store
block data (ie. transactions) is that
verification is very efficient. This
verification is called a Merkle proof.
To
T
• Suppose we want to prove that
transaction D, was indeed in the block,
that formed the header shown in fig
T.
Ts
T6
Do D, D D D, DS DE D7
Lab Task (2/3)
* In addition to the transaction hash D;, we also need D, T(D. D,), and
T;(T(D,.D;).T(D.D,)) to form the proof. The verification itself performs the following
sieps on the proof:
• Hash D, and D, to produce T,(D,. D).
• Hash S(A,B) and S(C.D) to produce
S(S(A,B).S(C.D)
• Hash T,(T,(D,D,), T(D,, D,)) and
T;T(D,D,), T,(D, D,)) to produce the
T
root,
• Check that the root is the same as what
has been stored previously.
T4
TS
T6
Do D, D D
D. D, De D7
Lab Task (3/3)
Implement the Merkle proof functionality and to verify it.
Create a report to describe what you have done and your observations with
sereenshots.
Transcribed Image Text:leaves v-Hash( s) s, secret Lab Task (1/3) * Implement the basic Merkle tree. (Use any programming language) * Test Cases • The reason we use Merkle trees to store block data (ie. transactions) is that verification is very efficient. This verification is called a Merkle proof. To T • Suppose we want to prove that transaction D, was indeed in the block, that formed the header shown in fig T. Ts T6 Do D, D D D, DS DE D7 Lab Task (2/3) * In addition to the transaction hash D;, we also need D, T(D. D,), and T;(T(D,.D;).T(D.D,)) to form the proof. The verification itself performs the following sieps on the proof: • Hash D, and D, to produce T,(D,. D). • Hash S(A,B) and S(C.D) to produce S(S(A,B).S(C.D) • Hash T,(T,(D,D,), T(D,, D,)) and T;T(D,D,), T,(D, D,)) to produce the T root, • Check that the root is the same as what has been stored previously. T4 TS T6 Do D, D D D. D, De D7 Lab Task (3/3) Implement the Merkle proof functionality and to verify it. Create a report to describe what you have done and your observations with sereenshots.
Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Types of trees
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education