Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Merkle Sum Sparse Merkle Tree
Search
shigeyuki azuchi
January 25, 2023
Technology
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Merkle Sum Sparse Merkle Tree
GBECの解説動画のスライドです。
https://goblockchain.network/2023/01/merkle-sum-sparse-merkle-tree/
shigeyuki azuchi
January 25, 2023
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Hyper Tree
azuchi
0
18
FORS
azuchi
0
30
クラスターmempool
azuchi
0
42
W-OTS+
azuchi
0
46
Shorのアルゴリズム
azuchi
0
69
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
54
Fiat-Shamir変換と注意点
azuchi
0
250
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
67
BIP-374 離散対数の等価性証明
azuchi
0
82
Other Decks in Technology
See All in Technology
SQL文一行も書けない人事がCortexもろもろを使って人事業務を楽にしてみる
ponponmikankan
1
210
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
260
AIオーケストレーションを活用した 開発ワークフローの設計と実践
bqnq
0
130
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
130
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
330
振り返りこそエンジニアの本領
negima
0
360
あるけみー式LTスライド作成術
alchemy1115
1
160
Snowflakeで実現する全社横断の顧客の声(VOC)分析・活用基盤@Snowflake World Tour Tokyo 2026
yuto16
0
160
Webとヘルスデータ
yukukotani
1
330
Screen Lens - 今見てる画面を翻訳する
komagata
0
220
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
150
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
310
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
490
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
The Curse of the Amulet
leimatthew05
2
14k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
How GitHub (no longer) Works
holman
316
150k
The Limits of Empathy - UXLibs8
cassininazir
1
650
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
Claude Code のすすめ
schroneko
67
230k
Transcript
Merkle Sum Sparse Merkle Tree (Taro Protocol)
1 Sparse Merkle Tree Key/Value形式のデータエンコードするマークルツリー ・・・ Key Keyの値からツリー内の
エントリーの位置が特定できるツリー TaroではKeyは256 bit Keyをビット列にし、 • 0であれば左の子ノード • 1であれば右の子ノード と順にツリーを下っていく 空のリーフノードの値を決めておくことで、 エントリーが空であることを空のリーフまでの マークルプルーフを提供することで証明できる
2 Merkle Sum Tree H(H(H(A) || H(B)) || H(H(C) ||
H(D))) H(H(A) || H(B)) H(A) H(B) H(H(C) || H(D)) H(C) H(D) 一般的なマークルツリーは、 左右の子ノードのハッシュ値を連結しハッシュ値を計算し、 それを親ノードのハッシュ値とする H(H(H(A) || H(B)) || H(H(C) || H(D)) || 80 + 82) H(H(A) || H(B) || 50 + 30) H(A), 50 H(B), 30 H(H(C) || H(D) || 15 + 67) H(C), 15 H(D), 67 Merkle Sum Treeは、各ノードが子ノードの数値の合計に コミットする。 親ノードのハッシュ値は、 • 左右の子ノードのハッシュ値 • 左右の子ノードの数値の合算値 を連結したハッシュ値
3 Merkle Sum Sparse Merkle Tree Sparse Merkle Tree とMerkle
Sum Treeを組み合わせたマークルツリー Taroでは2階層のMerkle Sum Sparse Merkle Tree を使用 https://github.com/Roasbeef/bips/blob/bip-taro/bip-taro-ms-smt.mediawiki Asset Tree Root 256 ・・・ Asset ID Tree Root ・・・ Asset ID Asset Script Key • 1階層めのツリーは、アセットIDをキーに対象アセットの エントリーを格納 • このツリーの全アセットの量にコミット Leaf:H(Taro version || Asset ID Tree Root || Asset Sum) • 2階層めのツリーは対象アセットについて、 各ユーザー(アカウント)が保持する アセットの量をコミット Leaf:H(Asset Leaf || Asset Sum) ※ Asset Leaf=アセットに関するTLVレコード 256 2256個のリーフノード