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
x-only Public Key
Search
shigeyuki azuchi
September 08, 2021
Technology
0
87
x-only Public Key
GBECの解説動画の資料です:
https://goblockchain.network/2021/09/x-only-public-key/
shigeyuki azuchi
September 08, 2021
Tweet
Share
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
BIP-374 離散対数の等価性証明
azuchi
0
13
BIP-353 DNS Payment Instructions
azuchi
0
31
OP_CAT and Schnorr Trick
azuchi
0
24
Pay to Anchorと1P1Cリレー
azuchi
0
26
プロアクティブ秘密分散法
azuchi
0
42
v3トランザクションリレー
azuchi
0
41
ランポート署名
azuchi
0
82
BitVM
azuchi
0
82
Replacement Cycling Attack
azuchi
0
75
Other Decks in Technology
See All in Technology
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
900
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
2
430
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
150
Clineを含めたAIエージェントを 大規模組織に導入し、投資対効果を考える / Introducing AI agents into your organization
i35_267
4
1.4k
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
820
Model Mondays S2E02: Model Context Protocol
nitya
0
200
菸酒生在 LINE Taiwan 的後端雙刀流
line_developers_tw
PRO
0
1.1k
Create a Rails8 responsive app with Gemini and RubyLLM
palladius
0
140
Agentic DevOps時代の生存戦略
kkamegawa
0
1k
Кто отправит outbox? Валентин Удальцов, автор канала Пых
lamodatech
0
300
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
140
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
390
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
940
Done Done
chrislema
184
16k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Designing Experiences People Love
moore
142
24k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Into the Great Unknown - MozCon
thekraken
39
1.9k
The Invisible Side of Design
smashingmag
299
51k
4 Signs Your Business is Dying
shpigford
184
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Optimizing for Happiness
mojombo
379
70k
Raft: Consensus for Rubyists
vanstee
140
7k
Transcript
x-only Public Key
1 楕円曲線暗号の公開鍵 【秘密鍵】 secp256k1の場合、256 bitのランダム値 【公開鍵】 xを秘密鍵とした場合、楕円曲線のベースポイントGに対して P =
xGを計算したPが公開鍵 楕円曲線の点は、その(x, y)座標がy2 = x3 + ax + bを満たす (secp256k1の場合、 a = 0, b = 7、つまりy2 = x3 + 7)
2 公開鍵の表現方法 公開鍵 P = xGの(x, y)座標の値はそれぞれ32バイト=合計64バイト • 非圧縮公開鍵:65バイト
04 || x座標 || y座標 • 圧縮公開鍵:33バイト x座標が分かると、y2 = x3 + ax + b (mod p)からy座標が計算できる ◦ y座標が偶数の場合 02 || x座標 ◦ y座標が奇数の場合 03 || x座標 Segwit v0まではデータスペースの観点から圧縮公開鍵の使用が主流
3 x-only Public Key とは? x座標のみで表現される公開鍵で、圧縮公開鍵より1バイト小さい TaprootやLN Offerなどで採用 •
x座標のみだと、y座標が偶奇どちらか特定できないんじゃ? y座標が偶数の鍵を使用する • P = xGのy座標が奇数の場合、秘密鍵はどうする? 変換後の秘密鍵x’ = 曲線の位数n - x (n = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 )