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
Output Descriptor
Search
shigeyuki azuchi
March 31, 2021
Technology
0
53
Output Descriptor
GBECの解説動画の資料です。
https://goblockchain.network/2021/03/output-descriptor/
shigeyuki azuchi
March 31, 2021
Tweet
Share
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Fiat-Shamir変換と注意点
azuchi
0
17
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
5
BIP-374 離散対数の等価性証明
azuchi
0
21
BIP-353 DNS Payment Instructions
azuchi
0
37
OP_CAT and Schnorr Trick
azuchi
0
31
Pay to Anchorと1P1Cリレー
azuchi
0
36
プロアクティブ秘密分散法
azuchi
0
54
v3トランザクションリレー
azuchi
0
54
ランポート署名
azuchi
0
95
Other Decks in Technology
See All in Technology
見てわかるテスト駆動開発
recruitengineers
PRO
5
530
Gaze-LLE: Gaze Target Estimation via Large-Scale Learned Encoders
kzykmyzw
0
320
JOAI発表資料 @ 関東kaggler会
joai_committee
1
370
事業価値と Engineering
recruitengineers
PRO
2
380
TypeScript入門
recruitengineers
PRO
23
7.3k
Backboneとしてのtimm2025
yu4u
4
1.6k
「AI2027」を紐解く ― AGI・ASI・シンギュラリティ
masayamoriofficial
0
110
小さなチーム 大きな仕事 - 個人開発でAIをフル活用する
himaratsu
0
130
広島発!スタートアップ開発の裏側
tsankyo
0
250
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
ドキュメントはAIの味方!スタートアップのアジャイルを加速するADR
kawauso
3
390
DeNA での思い出 / Memories at DeNA
orgachem
PRO
3
1.6k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
431
65k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
How STYLIGHT went responsive
nonsquared
100
5.7k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
Balancing Empowerment & Direction
lara
2
590
Gamification - CAS2011
davidbonilla
81
5.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
A Tale of Four Properties
chriscoyier
160
23k
Designing for Performance
lara
610
69k
Transcript
Output Descriptor
1 Output Descriptorとは? Bitcoinのアウトプットスクリプト(scriptPubkey)を 人が理解しやすい文字列で表現する仕様 https://github.com/bitcoin/bitcoin/blob/master/doc/descriptors.md (例)P2PKH • scriptPubkey:
OP_DUP OP_HASH160 H(<公開鍵>) OP_EQUAL OP_CHECKSIG • Output Descriptor: pkh(<公開鍵>) ※鍵だけでは、どのようなscriptPubkeyが構成されたか分からない (P2PKH、P2WPKH、P2SH-P2WPKH、マルチシグなど)
2 Output Descriptor function Output Descriptorの記述タイプ • pk(KEY) • pkh(KEY)
• wpkh(KEY) • combo(KEY) → P2PK, P2PKH, P2WPKH, P2SH-P2WPKH • multi(k, KEY1, …, KEYn) • sortedmult(k, KEY1, …, KEYn) • sh(SCRIPT) • wsh(SCRIPT) wsh(multi(2, KEY1, KEY2, KEY3)) • addr(アドレス) • raw(Hex SCRIPT)
3 Output Descriptor function • KEYの形式 ◦ Hexエンコードされた公開鍵 ◦ WIFエンコードされた秘密鍵
◦ 拡張公開鍵(xpub) ◦ 拡張秘密鍵(xprv) ◦ オプション ▪ xpub/xprvにはBIP-32の導出パス(/1/2, /1’, /1/*) xpub...gGDnw/1/2 ▪ Key Origin Information([master fingerprint/path]) [d34db33f/44'/0'/0']xpub...RcEL/1/2 masterからxpubを導出した際の情報を付与 • チェックサム オプションで、アルファベット8文字のチェックサムがSuffixに。
4 Output Descriptorの採用 • Bitcoin Core v0.21.0から試験的にOutput Descriptorを使ったウォレットDescriptor Walletをサポート。 ◦
createwallet RPCのdescriptorsオプションをtrueに。 ◦ Descriptor WalletのDBはSQLiteに。 • Bitcoin Core v0.21.0でサポートされているOutput Descriptor関連のRPC ◦ scantxoutset ◦ getdescriptorinfo ◦ deriveaddresses ◦ listunspent ◦ getaddressinfo ◦ importmulti ◦ generatetodescriptor ◦ utxoupdatepsbt ◦ createmultisig ◦ addmultisigiaddress