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
BIP-374 離散対数の等価性証明
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
shigeyuki azuchi
May 06, 2025
Technology
81
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
BIP-374 離散対数の等価性証明
GBECの解説動画の資料です。
https://goblockchain.network/2025/05/bip-374-dleq/
shigeyuki azuchi
May 06, 2025
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Hyper Tree
azuchi
0
16
FORS
azuchi
0
27
クラスターmempool
azuchi
0
40
W-OTS+
azuchi
0
46
Shorのアルゴリズム
azuchi
0
66
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
53
Fiat-Shamir変換と注意点
azuchi
0
250
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
64
BIP-353 DNS Payment Instructions
azuchi
0
100
Other Decks in Technology
See All in Technology
AI時代のデータ基盤を考える問い
pacocat
0
800
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
180
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
530
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
490
Claude Teamプランの コスト最適化を考える
rfdnxbro
2
870
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
240
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
100
分割40%キーボードにスムーズに入門するには
hoto17296
1
210
bet_ai_day_2026_session02
agenticsec
1
660
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
77k
生成AI時代の クレデンシャルとパーミッション設計
nrinetcom
PRO
2
200
Master Dataグループ紹介資料
sansan33
PRO
1
4.9k
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Technical Leadership for Architectural Decision Making
baasie
3
550
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
390
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
260
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
RailsConf 2023
tenderlove
30
1.5k
Mobile First: as difficult as doing things right
swwweet
225
10k
Scaling GitHub
holman
464
140k
We Have a Design System, Now What?
morganepeng
55
8.3k
How to make the Groovebox
asonas
2
2.4k
Transcript
BIP-374 離散対数の等価性証明
1 BIP-374 https://github.com/bitcoin/bips/blob/master/bip-0374.mediawiki ベースポイント=Gと別の点Bに対して A = xG、C =
xB という2つの点が、同じ離散対数xを元に導出されたことを証明するスキーム • サイレントペイメントでの利用を想定した提案 https://goblockchain.network/2023/03/silent-payment/ • 似たようなスキームPoDLE UTXOを明かすことなくUTXOの所有を証明する https://goblockchain.network/2020/08/podle/
2 サイレントペイメント Tx In UTXO(公開鍵B=bG) Out サイレントペイメントアドレス • スキャン用公開鍵
• 支払い用公開鍵 支払先アドレス 共有シークレット ① 受取人のスキャン公開鍵と支払人の秘密鍵でECDHにより 共有シークレットを導出 ※ サイレントペイメントの詳細な仕様については https://techmedia-think.hatenablog.com/entry/2024/07/29/194501 ②共有シークレットを加工した点+ 支払い用の公開鍵で 支払先のアドレスを導出 ※ 署名に使用された秘密鍵bを使って、正しく支払先のアドレスが導出されていないと 受取人は受け取ったコインを受け取れない
3 複数の参加者がいるサイレントペイメント Tx In UTXO(公開鍵B=bG) Out 支払先アドレス UTXO(公開鍵C=cG) スキャン用の鍵A
= aG 共有シークレット= (b + c)・h・A b・h・A c・h・A ※ 署名者が複数人いる場合、自分が正しく計算していても、 他の参加者が別の鍵で共有シークレットを導出していた場合、 誤った支払先アドレスが導出されてしまう UTXOの秘密鍵と同じ鍵を使って共有シークレットが導出されたことを証明したい
4 DLEQ(Discrete Log Equality Proofs) ベースポイント=Gと別の点Bに対して A = xG、C
= xB という2つの点が、同じ離散対数 xを元に導出されたことを証明する 【証明者】 1. ランダムな値kを選択 2. R1 = kGを計算 3. R2 = kBを計算 4. e = H(R1 || R2) とする 5. s = k + exを計算 6. e || s がプルーフ ※ 補助ランダムデータやオプションメッセージなど詳細はBIP-374参照 【A, B, Cとプルーフ(e || s)を受け取った受信者】 1. R1 = sG - eA を計算 = (k + ex)G - eA = kG + eA - eA = kG 2. R2 = sB - eC を計算 = (k + ex)B - eC = kB + eC - eC = kB 3. e = H(R1 || R2) を検証