Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Fiat-Shamir変換と注意点
Search
shigeyuki azuchi
August 06, 2025
Technology
270
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Fiat-Shamir変換と注意点
GBECの解説動画の資料です。
https://goblockchain.network/2025/08/fiat-shamir/
shigeyuki azuchi
August 06, 2025
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
SLH-DSA (SPHINCS+)
azuchi
0
24
Hyper Tree
azuchi
0
23
FORS
azuchi
0
37
クラスターmempool
azuchi
0
45
W-OTS+
azuchi
0
52
Shorのアルゴリズム
azuchi
0
72
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
59
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
74
BIP-374 離散対数の等価性証明
azuchi
0
88
Other Decks in Technology
See All in Technology
Lint の層を組み直した話
bengo4com
2
290
FinOpsを導入してマルチプロダクトのコスト最適化を実現する
kworkdev
PRO
0
110
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
610
AI時代の開発はウォーターフォールに回帰する? / development-with-ai-back-to-wf
okamototakuyasr2
0
170
cdk deployとcdkd deploy、実際にデプロイして5倍速近くの差を実測した
yama3133
1
160
AIエージェント時代、Kaggleにどう取り組むか
takanao
2
470
Patterns in AI Driven Software Development
akosma
PRO
0
430
Don't write the architecture only in the prompt.
neohsu
0
290
アクセラレーターで実現するServiceNow活用の高速化 / ServiceNow World Forum 2026
visional_engineering_and_design
0
120
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
210
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
320
Content Mapper APIの応用例~CSS Modules、言語ファイル~
uhyo
2
490
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Leo the Paperboy
mayatellez
10
2.4k
The Limits of Empathy - UXLibs8
cassininazir
2
750
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
360
HDC tutorial
michielstock
2
990
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
450
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Transcript
Fiat-Shamir変換と注意点
1 Fiat-Shamir変換 対話型証明プロトコルをハッシュ関数を使って非対話型の証明プロトコルに変換する手法 【対話型証明】
例:Schnorrの非対話型ゼロ知識証明(RFC8235) https://techmedia-think.hatenablog.com/entry/2018/06/16/182735 コミットメントを送信 チャレンジを送信 チャレンジを加味した レスポンスを返信 証明者 検証者 チャレンジの値を検証者が提供するのではなく、 証明するステートメントの公開情報から計算した ハッシュ値に置き換えることで非対話型に変換する
2 Fiat-Shamir変換の注意点 【RFC8235の証明プロセス】 証明者のアリスは、P = aGとなるaの知識があることをボブに証明する場合 1.
アリスはランダムな値vを選択し、V = vGを計算する 2. アリスは、c = H(G || V || P || UserID || OtherInfo)を計算しチャレンジとし、 3. r = v - c * aを計算し、 4. (P, V, r)をボブに送る 5. ボブは、(P, V, r, UserID, OtherInfo)からcを計算してV = rG + cPが成立するかを検証する チャレンジの計算にVが含まれない場合 1. アリスは、c = H(G || P || UserID || OtherInfo)を計算しチャレンジとし、 2. rをランダムな値とし、 3. V = rG + cPを計算し、 4. (P, V, r)をボブに送る 5. ボブは、(P, V, r, UserID, OtherInfo)からcを計算してV = rG + cPが成立するかを検証する ※ rはaを使用することなく計算され、aの知識の証明にはならない。
3 Fiat-Shamir変換の注意点 証明時に公開する情報すべてをチャレンジの計算に含めること! 【脆弱性Frozen Heart 】 Fiat-Shamir変換の誤った実装により証明システムの健全性が損なわれ、証明の偽造が可能に
• Bulletproofs • Plonk • SnarkJS • grark • ckb-zkp • zk-paillier https://blog.trailofbits.com/2022/04/13/part-1-coordinated-disclosure-of-vulnerabilities-affecting-girault-bull etproofs-and-plonk/