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
v3トランザクションリレー
Search
shigeyuki azuchi
October 01, 2024
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
v3トランザクションリレー
GBECの解説動画の資料です。
https://goblockchain.network/2024/10/v3-transaction/
shigeyuki azuchi
October 01, 2024
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Hyper Tree
azuchi
0
10
FORS
azuchi
0
24
クラスターmempool
azuchi
0
39
W-OTS+
azuchi
0
44
Shorのアルゴリズム
azuchi
0
66
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
52
Fiat-Shamir変換と注意点
azuchi
0
250
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
63
BIP-374 離散対数の等価性証明
azuchi
0
81
Other Decks in Technology
See All in Technology
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
110
tamachi.go 誕生の裏側
rymiyamoto
1
210
internal/testlog で遊ぼう
rokuosan
0
230
アクセスキーが漏れた日にやるべきこと- 無効化の先にある本当の対応
kazzpapa3
0
330
AI時代のアウトプット――変わったこと、変わらないこと / Devsumi 2026 Kansai #devsumi
jnchito
0
580
「面白い!」を信じ抜け。激動の時代を貫く、オンリーワン・エンジニアの条件
kizawa2020
0
250
AI駆動開発を組織で促すために
lycorptech_jp
PRO
3
4.1k
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
3
470
マイナンバーカード本人確認の実装比較(OAuth/OIDC Numa (Immersion) Workshop 2026) / 20260825 numa-12
oidfj
PRO
0
280
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
54k
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
620
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Making Projects Easy
brettharned
120
6.7k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
470
Docker and Python
trallard
47
4.1k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
500
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Documentation Writing (for coders)
carmenintech
77
5.5k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
220
How to Ace a Technical Interview
jacobian
281
24k
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
v3トランザクションリレー
1 v3トランザクションリレー BIP-431 :Topologically Restricted Until Confirmation https://github.com/bitcoin/bips/blob/master/bip-0431.mediawiki
トランザクションが承認されるまでの間に、新たなトポロジー制限を加えることで、 Pinning攻撃を緩和する提案 https://techmedia-think.hatenablog.com/entry/2024/02/25/113939
2 mempoolの競合トランザクションの扱い mempool Tx A Tx A’
Tx内の一部のインプットが重複する競合Txに対するmempoolの動作 経済的なインセンティブが高い マイナーにより多くの手数料を与えるTxを選択する • RBF(Replace by Fee)によるTxの置換 より高い手数料を支払うことでTxを置換する https://goblockchain.network/2021/07/rbf/ 【Pinning 攻撃】 RBFの置換ポリシーには、インセンティブとDoS耐性のトレードオフによりいくつか制限があり、 悪意あるユーザーが、制限を悪用してTxの置換を防止する可能性がある (対象はLNなどのマルチパーティコントラクト)
【ルール3】置換する際は、元のすべてのTxの手数料より高額な手数料を支払う必要がある • 低手数料率の子を紐付け、アリスが通常より多額の手数料を支払わないとTxをmempoolに入れられないようにする 【ルール5】100件を超える削除が発生するような置換は行えない •
攻撃者が多数の子孫Txを紐付けることでアリスの置換を不可能にする 【子孫の制限によるCPFPの制限】 • 101KvBを超える or 25個を超える数になる場合、それ以上のCPFPができなくなる。 ◦ LNなどの二者間のプロトコルでこれを回避するために導入されたポリシーがCPFP Carve out https://goblockchain.network/2020/12/cpfp-carve-out/ (マルチパーティに拡張できない) ↑を悪用して、低手数料のTxをずっとmempool内に留めておく 3 トランザクションのPinning Tx B Tx A 競合関係 Tx B 低手数料の子Tx 別の低手数料の巨大Tx 高手数料の子Tx アリス 攻撃者
4 v3トランザクションリレー Pinning攻撃に対する手数料の引き上げをより堅牢にするための TRUC(Topologically Restricted Until Confirmation)ポリシーの導入
Tx version = 3 のTRUCトランザクションに対して以下のルールを適用する: • BIP-125(RBF)のシグナリングの有無関係なく置換可能なTxとする • TRUCトランザクションの未承認の親はすべてTRUCでなければならない • 未承認のTRUCトランザクションは未承認の親や子を1つしか持てない • CPFP Carve outはTRUCトランザクションには適用されない(複数の子を持てないので) • 未承認のTRUCトランザクションのサイズは10,000 vBを超えてはならない • 個々のTRUCトランザクションは、mempoolの手数料要件を満たすパッケージである場合、mempoolの最小 リレー手数料を下回ってもいい • mempoolには親子2つのTRUCトランザクションしか存在せず、RBFのルール3、5による Pinningを防止し、RBFによる置換をサポート • 最後のルールでmempool要件を満たさない低手数料の親子パッケージでリレー可能に