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
97
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
FORS
azuchi
0
7
クラスターmempool
azuchi
0
31
W-OTS+
azuchi
0
32
Shorのアルゴリズム
azuchi
0
55
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
42
Fiat-Shamir変換と注意点
azuchi
0
220
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
54
BIP-374 離散対数の等価性証明
azuchi
0
71
BIP-353 DNS Payment Instructions
azuchi
0
87
Other Decks in Technology
See All in Technology
Claude Codeをどのように キャッチアップしているか
oikon48
13
8.7k
生成 AI 実践ガイド (概略版) AIガバナンス編
asei
0
170
2026年6月23日 Syncable Tech + Start Python Club にて
hamukazu
0
140
AIが自律的に回る開発ループを設計してチーム開発に組み込む
nekorush14
0
110
秘密度ラベル初心者が第1歩でつまづかないための「設計・運用」ポイント
seafay
PRO
1
440
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
180
不要なレビューをAIにまかせて AIコーディングの環境改善を加速した
shoota
1
250
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
450
iAEONの段階的リアーキテクト戦略 / iAEON's_Gradual_Re-architecture_Strategy
aeonpeople
0
250
ぼっちではじめた登壇が「51名」「241件」の発信に化けた
subroh0508
1
300
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
640
コミットの「なぜ」を読む
ota1022
0
110
Featured
See All Featured
Docker and Python
trallard
47
3.9k
Leo the Paperboy
mayatellez
7
1.9k
The Curious Case for Waylosing
cassininazir
1
400
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
230
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Are puppies a ranking factor?
jonoalderson
1
3.6k
Making Projects Easy
brettharned
120
6.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Test your architecture with Archunit
thirion
1
2.3k
So, you think you're a good person
axbom
PRO
2
2.1k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
250
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要件を満たさない低手数料の親子パッケージでリレー可能に