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
FORS
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
shigeyuki azuchi
June 24, 2026
Technology
4
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FORS
GBECの解説動画の資料です。
https://goblockchain.network/2026/06/fors/
shigeyuki azuchi
June 24, 2026
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
クラスターmempool
azuchi
0
31
W-OTS+
azuchi
0
32
Shorのアルゴリズム
azuchi
0
55
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
42
Fiat-Shamir変換と注意点
azuchi
0
220
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
54
BIP-374 離散対数の等価性証明
azuchi
0
71
BIP-353 DNS Payment Instructions
azuchi
0
87
OP_CAT and Schnorr Trick
azuchi
0
86
Other Decks in Technology
See All in Technology
GitHub Copilot 最新アップデート – 「一歩先」の実践活用術
moulongzhang
5
1.5k
[チョークトーク資料]AWS DevOps Agent を使いこなす / AWS Dev Ops Agent Chalk Talk AWS Summit Japan 2026
kinunori
3
580
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
280
Flow 不死:AI 時代 DevOps 的不變本質
cheng_wei_chen
2
330
【Snowflake Summit 2026 Recap!!】Snowflake Summit Deep Dive: Security & Governance
civitaspo
1
270
200個のGitHubリポジトリを横断調査したかった
icck
0
140
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
680
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
300
Lightning近況報告
kozy4324
0
190
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
5
1.1k
アンオフィシャルな、オフィシャルからのお願い
wyamazak_devrel
0
140
AIのReact習熟度を測る
uhyo
2
650
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Why Our Code Smells
bkeepers
PRO
340
58k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Everyday Curiosity
cassininazir
0
230
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
850
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Amusing Abliteration
ianozsvald
1
210
Art, The Web, and Tiny UX
lynnandtonic
304
22k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
150
Transcript
FORS(Forest Of Random Subsets)
1 FORS FORS(Forest Of Random Subsets)は、1つの公開鍵/秘密鍵を用いて 数回(Few-Time)の署名が可能なデジタル署名スキーム SPHINCS+(SLH-DSA)の構成要素の1つで実際のメッセージに署名する 【パラメーター】 •
k:ツリーの個数 • t:各ツリーの高さ
2 鍵生成 1. マスターシードをランダムに選択 2. シードから擬似ランダム関数PRF(seed, i, j) を使ってk×2t個の秘密鍵を生成 iはツリーのインデックス、jはツリー内のリーフのインデックス
3. 各秘密鍵のハッシュ値をリーフとしてk個のツリーを構築 4. k個のツリーのルートr i を計算 5. k個のルートを連結して ハッシュした値が公開鍵 ※ シードだけあればすべて導出可能
3 署名 メッセージmに対して署名者は、以下の手順で署名を生成する 1. メッセージダイジェストH(m)を計算し 2. 1の結果をtビットずつk個のチャンクに分割する 各ツリーiにtビットのidx[i]が割り当てられる 3. k個の各ツリーに対して以下をピックアップしたのが署名
a. idx[i]に該当するリーフの秘密鍵 b. idx[i] のリーフからルートr i までの 経路で必要な兄弟ノード (マークルパス)
4 署名の検証 メッセージmと署名(k個の秘密鍵とそのマークルパス)を受け取った検証者は、 1. メッセージダイジェストH(m)を計算し 2. 1の結果をtビットずつk個のチャンクに分割する 各ツリーiにtビットのidx[i]が割り当てられる 3. k個の秘密鍵のハッシュ値を計算し、
4. 各ハッシュ値を各ツリーの idx[i]に割り当て、 5. マークルパスを使ってツリーのルートを計算し、 6. 全ルートのハッシュ値を計算し、 公開鍵と一致するか検証する
5 なぜFew-Timeなのか? Few-Time:何度かなら同じ鍵で署名しても安全だが、ある回数を超えると偽造可能性が無視できなくなる メッセージm、m’について同じFORS鍵で署名した場合 • ツリーiのidx[i] == idx’[i]の場合、新しく漏れる情報はなし • ツリーiのidx[i]
!= idx’[i]の場合、新しくidx’[i]の秘密鍵が漏れる ※ 同じ秘密鍵の漏洩には問題がない q回署名すると、各ツリーiで開示されたインデックスの集合S i ⊆{0,...2t-1}ができる(|S i | ≦ q) 多数のメッセージm*に対してハッシュを計算し、そのidxがすべて開示済みの集合内にあれば署名の偽造が成功する 計算困難なハッシュの計算量となるようqを設定する必要があり、 • 計算量は約(2t/q)k • 求める安全性をλビットとするとk⋅(t−log 2 q) ≥ λを満たすqを選択すること (128ビットだとパラメーターセットによってq=4〜7くらい)