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
74
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
プロアクティブ秘密分散法
azuchi
0
3
v3トランザクションリレー
azuchi
0
8
ランポート署名
azuchi
0
33
BitVM
azuchi
0
46
Replacement Cycling Attack
azuchi
0
44
Bitcoinのタイムロックの仕組み
azuchi
0
33
Inner Product Argument
azuchi
0
72
Codex32
azuchi
0
27
PSBT
azuchi
0
65
Other Decks in Technology
See All in Technology
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.2k
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
200
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
210
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
SSMRunbook作成の勘所_20241120
koichiotomo
2
130
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Site-Speed That Sticks
csswizardry
0
23
Build your cross-platform service in a week with App Engine
jlugia
229
18k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Ruby is Unlike a Banana
tanoku
97
11k
The Language of Interfaces
destraynor
154
24k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Embracing the Ebb and Flow
colly
84
4.5k
Code Reviewing Like a Champion
maltzj
520
39k
Building Adaptive Systems
keathley
38
2.3k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
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 )