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
Silent Payment
Search
shigeyuki azuchi
March 21, 2023
Technology
0
74
Silent Payment
GBECの解説動画の資料です。
https://goblockchain.network/2023/03/silent-payment/
shigeyuki azuchi
March 21, 2023
Tweet
Share
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Fiat-Shamir変換と注意点
azuchi
0
34
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
7
BIP-374 離散対数の等価性証明
azuchi
0
26
BIP-353 DNS Payment Instructions
azuchi
0
42
OP_CAT and Schnorr Trick
azuchi
0
38
Pay to Anchorと1P1Cリレー
azuchi
0
39
プロアクティブ秘密分散法
azuchi
0
58
v3トランザクションリレー
azuchi
0
58
ランポート署名
azuchi
0
100
Other Decks in Technology
See All in Technology
KMP の Swift export
kokihirokawa
0
330
LLM時代にデータエンジニアの役割はどう変わるか?
ikkimiyazaki
0
240
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
350
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
24
17k
実装で解き明かす並行処理の歴史
zozotech
PRO
1
340
SwiftUIのGeometryReaderとScrollViewを基礎から応用まで学び直す:設計と活用事例
fumiyasac0921
0
140
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
110
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
590
Green Tea Garbage Collector の今
zchee
PRO
2
390
Pure Goで体験するWasmの未来
askua
1
180
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
170
pprof vs runtime/trace (FlightRecorder)
task4233
0
170
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
139
7.1k
Writing Fast Ruby
sferik
629
62k
Fireside Chat
paigeccino
40
3.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Designing for Performance
lara
610
69k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
A Tale of Four Properties
chriscoyier
160
23k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Transcript
Silent Payment
1 Silent Payment Bitcoinのアドレスを公開する際の課題 • 公開アドレスに対して、誰もが支払いできるため、公開アドレスの総受取額が分かる • アドレスの再利用による、プライバシーのリーク(各支払いのリンク)
Silent Payment アドレスは公開するものの、そのアドレス宛の支払いを識別不能にするRuben Somsenの提案 https://gist.github.com/RubenSomsen/c43b79517e7cb701ebf77eec6dbb46b8
2 Silent Payment Address 公開アドレスを作成する受信者は、32バイトの公開鍵を Silent Payment Addressとして公開
P = xG 送信者は、 1. 支払いに使用するインプット(公開鍵 Q = yG)を選択 2. P' = H(yP)G + Pを導出し、この公開鍵宛に支払いを行う 受信者は、 1. ブロックチェーン上のトランザクションをスキャンし、 2. インプットの公開鍵に対してH(xQ)G + Pを計算し、 3. 計算結果の公開鍵がアウトプットにあれば、自身への支払いを検知 ※ ECDHによりyP = yxG = xQが成立 ※ インプットが違えば、異なるアドレスが導出される
3 Silent Paymentの利点と欠点 Silent Paymentの利点 • 送信者<->受信者間の対話が不要 • オンチェーンのフットプリントが通常の支払いと変わらない
ステルスアドレスやBIP-47(再利用可能なペイメントコード)では、 OP_RETURNや通知トランザクションなど、追加のフットプリントが発生する Silent Paymentの欠点 • UTXOセットのスキャン 現在のUTXOセットに対して、H(xQ)G + Xの計算がシングルコアで約220分 • フルノードが必要で、軽量クライアントでは利用できない。