Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Quorumプライベートトランザクション
Search
Akira
September 27, 2019
Technology
1
2.2k
Quorumプライベートトランザクション
Quorumにおけるプライベートトランザクションの処理工程について
Akira
September 27, 2019
Tweet
Share
More Decks by Akira
See All by Akira
ENSの登録方法
akira_19
0
2.1k
Other Decks in Technology
See All in Technology
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Musicを例に~
otanet
0
320
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.4k
Introduction to SwiftUI V2
pohjus
0
100
ルーターでプレゼンする
puhitaku
1
3.4k
同じ様なUIをiOS/Android間で合わせるヒントNo.2
fumiyasac0921
1
110
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
2
410
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
6
1.3k
Cracking the KubeCon CfP
inductor
2
280
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
190
One engineer company with Ruby on Rails
rstankov
2
460
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
7
1.4k
.NET Profiler in 2024.
kkamegawa
2
2.3k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Building Effective Engineering Teams - LeadDev
addyosmani
32
1.9k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
What the flash - Photography Introduction
edds
64
11k
The Invisible Side of Design
smashingmag
294
49k
The Cult of Friendly URLs
andyhume
74
5.7k
Navigating Team Friction
lara
179
13k
Teambox: Starting and Learning
jrom
128
8.4k
Design by the Numbers
sachag
274
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
12
1k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
Transcript
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 1 DappからNode AがPrivateの トランザクション(Tx AB) を受け取る。このトランザク ションはParty AとParty Bから
のみ⾒見見られる Quorum Githubより引⽤用 https://github.com/jpmorganchase/quorum
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 2 Transaction Manager AがTxを 受け取る。
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 3 Enclave AにてTxを対称鍵(S) で暗号化を⾏行行う(S(Tx))。 Private Party(AB)の公開鍵で 対称鍵を暗号化する(Pub(S)) ※最新版だと対称鍵ではなく別の暗号化を使って いますが、全体の流れは同じです。
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 4 S(Tx)とPub(S)を返し、 Transaction ManagerはS(Tx) とPub(S)を保存する。 4 5Y 1VC 4
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 5 Private PartyでS(Tx)とPub(S) を共有し、正常に共有できたら ハッシュ化を⾏行行う(H(S(Tx)) 4 5Y 1VC 4
) 4 5Y 4 5Y 1VC 4
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 6 H(S(Tx))をNode Aが受け取る。 4 5Y 1VC 4 ) 4
5Y 4 5Y 1VC 4 ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 7 通常のEthereumプロトコルで H(S(Tx))が伝播される 4 5Y 1VC 4 ) 4
5Y 4 5Y 1VC 4 ) 4 5Y ) 4 5Y ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 8 H(S(Tx))を含むブロックを各 ノードが受け取る 4 5Y 1VC 4 ) 4
5Y 4 5Y 1VC 4 ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 9 H(S(Tx))を含むブロックを各 ノードが受け取る 4 5Y 1VC 4 ) 4
5Y 4 5Y 1VC 4 ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 10 そのトランザクションが Private Partyに属するもので あれば、各Transaction Managerは各EnclaveにS(Tx) とPub(S)を渡す。 この例例ではParty CはPrivate
Partyに属していないので、当 該トランザクションは⾒見見つか らずこのトランザクションの 処理理をスキップする。 4 5Y 1VC 4 ) 4 5Y 4 5Y 1VC 4 ) 4 5Y ) 4 5Y ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 11 Enclaveは署名を確認し、問題 なければTxを返す 4 5Y 1VC 4 ) 4
5Y 5Y 4 5Y 1VC 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y
1SJWBUF5SBOTBDUJPOͷ࣮ߦ֓ཁ 12 Transaction Manager AとBは各 ノードにTxを渡して、各ノー ドがTxをEVMで実⾏行行する。こ のTxで更更新されるのはNode A とBのPrivate
State DBだけ。実 ⾏行行されたTxは直ちに破棄され て外からは⾒見見られない。 4 5Y 1VC 4 ) 4 5Y 5Y 4 5Y 1VC 4 5Y ) 4 5Y ) 4 5Y ) 4 5Y 5Y 5Y