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.4k
Quorumプライベートトランザクション
Quorumにおけるプライベートトランザクションの処理工程について
Akira
September 27, 2019
Tweet
Share
More Decks by Akira
See All by Akira
ENSの登録方法
akira_19
0
2.2k
Other Decks in Technology
See All in Technology
ここ一年のCCoEとしてのAWSコスト最適化を振り返る / CCoE AWS Cost Optimization devio2025
masahirokawahara
1
1.5k
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
2
420
生成AI時代のデータ基盤
shibuiwilliam
6
3.7k
AI エージェントとはそもそも何か? - 技術背景から Amazon Bedrock AgentCore での実装まで- / AI Agent Unicorn Day 2025
hariby
4
1.1k
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
110
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
320
Grafana Meetup Japan Vol. 6
kaedemalu
1
250
AWSで推進するデータマネジメント
kawanago
0
1.1k
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
350
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
190
AI時代にPdMとPMMはどう連携すべきか / PdM–PMM-collaboration-in-AI-era
rakus_dev
0
280
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
560
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
36
6.8k
A better future with KSS
kneath
239
17k
Fireside Chat
paigeccino
39
3.6k
Speed Design
sergeychernyshev
32
1.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
A Modern Web Designer's Workflow
chriscoyier
696
190k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
Facilitating Awesome Meetings
lara
55
6.5k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Designing Experiences People Love
moore
142
24k
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