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
shigeyuki azuchi
May 06, 2025
Technology
76
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
FORS
azuchi
0
14
クラスターmempool
azuchi
0
34
W-OTS+
azuchi
0
38
Shorのアルゴリズム
azuchi
0
60
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
44
Fiat-Shamir変換と注意点
azuchi
0
230
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
57
BIP-353 DNS Payment Instructions
azuchi
0
93
OP_CAT and Schnorr Trick
azuchi
0
95
Other Decks in Technology
See All in Technology
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
320
Amazon Bedrock Managed Knowledge BaseDive Deep
ren8k
0
390
ウォーターフォール開発案件のPMとしてAI活用を模索している話
hatahata021
3
310
取引先から届く 「セキュリティチェックシート」の読み解き方
kamadamakoto
0
110
QAタスクをスキル化したいときに考えること
aomoriringo
0
170
[MIRU26] To What Extent Does MLLM-as-a-Judge Exhibit Cross-Model Preference Bias?
keio_smilab
PRO
0
200
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
210
TypeScript入門 2026
recruitengineers
PRO
1
190
SnowflakeCoCoでデータエンジニアリング!
foursue
0
170
初めてのGitHub Actions / GitHub Actions at First
tooppoo
0
140
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
760
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
510
Amusing Abliteration
ianozsvald
1
240
Bash Introduction
62gerente
615
220k
Design in an AI World
tapps
1
270
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
Odyssey Design
rkendrick25
PRO
2
750
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
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) を検証