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
OP_CTV(BIP-119)
Search
shigeyuki azuchi
July 06, 2022
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OP_CTV(BIP-119)
GBECの解説動画の資料です。
https://goblockchain.network/2022/07/op_cvt/
shigeyuki azuchi
July 06, 2022
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
FORS
azuchi
0
15
クラスターmempool
azuchi
0
36
W-OTS+
azuchi
0
39
Shorのアルゴリズム
azuchi
0
64
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
48
Fiat-Shamir変換と注意点
azuchi
0
240
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
60
BIP-374 離散対数の等価性証明
azuchi
0
77
BIP-353 DNS Payment Instructions
azuchi
0
96
Other Decks in Technology
See All in Technology
もう一度考える SRE チームの作り方・育て方 / Rethinking SRE #1: Building and Growing SRE Teams
rrreeeyyy
6
1k
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
200
PLATEAU で バーチャル花火大会
tatsuya1970
0
110
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
220
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
220
関東Kaggler会発表資料
takoi
1
200
DatadogのBits Chatが開発組織にもたらしたもの / What Bits Chat Has Brought Us
sms_tech
1
130
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.6k
モバイルアプリ開発概論2026
recruitengineers
PRO
5
510
強化学習「理論」入門
enakai00
3
3.6k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
240
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
310
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Exploring anti-patterns in Rails
aemeredith
3
460
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
490
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Fireside Chat
paigeccino
42
4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Producing Creativity
orderedlist
PRO
348
40k
Statistics for Hackers
jakevdp
799
230k
What's in a price? How to price your products and services
michaelherold
247
13k
The browser strikes back
jonoalderson
0
1.5k
Transcript
OP_CTV (BIP-0119)
1 OP_CTV (BIP-0119) コインの使用方法を制限できるようにする新しい opcode OP_CHECKTEMPLATEVERIFY (OP_CTV)の提案 https://github.com/bitcoin/bips/blob/master/bip-0119.mediawiki
【従来のBitcoin Script】 Parent Tx In Out ロック条件 Prev UTXO Child Tx In Out Parent TxのUTXO ロック条件 アンロック要素 UTXOのscriptPubkeyにロックされたコインは、 それをアンロック可能な要素(署名など)を 提供することで、そのUTXOのコインを使用可能になる アンロックしたコインをどう使うか(どこに送金するか)は、 ユーザーが自由に決められる OP_CTVは、この送金先(アウトプット)の制御を可能にする
2 OP_CTVの仕様 OP_CHECKTEMPLATEVERIFYは、既存の予約opcode OP_NOP4を置き換える ※ 新しいsegwit versionを導入することなく、従来のBitcoin Scriptでも利用可能 OP_CTVの挙動:
1. スタック上に少なくとも1つの要素があることをチェック 2. スタック上の最上位の要素が32バイトかどうかチェック 3. 実行中のインプットにおいて、トランザクションのハッシュ値が スタック上の要素と一致するかチェック Child Tx In Out アンロック要素 ロック条件 Hash(Child Tx)がxxxと一致することを検証 つまり、OP_CTVを利用する際は、そのUTXOを作成する段階で、 子Txの構成を定める必要がある。 将来のTxにコミットしたアウトプット Parent Tx In Out xxx OP_CTV … Prev UTXO
3 OP_CTVのユースケース例 • 輻輳制御 取引所が多くのユーザーに対して一括して出金する際の、手数料効率の向上
• Vault Withdraw Tx In Out xxx OP_CTV … 取引所のUTXO Child Tx In Out アンロック要素 ユーザーAへの出金 ユーザーBへの出金 ユーザーZへの出金 ︙ • Withdraw Txはサイズが小さいため低手数料で素早く承認 • 各ユーザーへの出金はChild Txで ◦ 手数料市場が安くなった際にチェーンに取り込まれる ◦ OP_CTVによりコミットされているため、 Withdraw Txがチェーンに入れば二重使用リスクはなくなる Vault Tx In Out 【Vault Script】 xxx OP_CTV … 入金するコイン Unvault Tx In Out • x日後に入手可能 OR • 【To cold Script】 xxx OP_CTV … Vault UTXO ToCold Tx In Out To cold pubkey Unvault UTXO 出金方法にルールのある金庫の実現 • タイムロック付きのホットウォレット • コールドウォレット