Skip to content

Exercise <Week 3>: ou-junya #92

Merged
SeiyaKobayashi merged 5 commits into
zk-tokyo:mainfrom
ou-junya:week3/exercises/YamadaJunya
Sep 22, 2025
Merged

Exercise <Week 3>: ou-junya #92
SeiyaKobayashi merged 5 commits into
zk-tokyo:mainfrom
ou-junya:week3/exercises/YamadaJunya

Conversation

@ou-junya
Copy link
Copy Markdown
Contributor

🎁 Deliverables

遅くなりすみません、Week3の回答です。

💬 Comments

@@ -0,0 +1,163 @@
## 1. SNARK とは … ARgument of Knowledge(p.7)を指しますが、なぜ「証明」であるのに “argument” と表現しているのでしょうか? ”proof” と “argument” の違いを調べて説明してみましょう。

SNARK の “argument” は、証明の正しさが計算量制限に依存する「計算的証明」を意味する。Proof は計算能力無制限でも成立する絶対的保証だが、Argument は有限計算力の前提でのみ成立する。SNARK は暗号的困難性を前提にしているため “proof” ではなく “argument” と呼ばれる。
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

「有限計算力」とありますが、コンピューターサイエンスの世界では「効率的な計算が可能 = 多項式時間アルゴリズムが存在する」ことになるので、厳密には「多項式時間という制約をもつ証明者のみに対する知識の健全性を仮定した証明システム = argument」となります。これは computational soundness とも呼ばれます。


## 2. p.21のKZGにおいて、コミットメントに秘匿性(i.e., ゼロ知識性)を与えるにはどうすれば良いでしょうか?具体的な構築方法を調べて説明してみましょう。

KZGにゼロ知識性を与えるには、ランダム性を混ぜる仕組みを導入する。
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

この回答の手法は pedersen commitment 形式の手法ですが、証明者がランダムな低次元多項式を生成して元の多項式に加算し、その多項式に対してコミットメントを生成するという別の手法もあるので、興味があれば調べてみることをお勧めします。
また、楕円曲線上では乗算ではなく加算のみが定義されているため、スライドのような加法表記(additive notation)を使うことも検討してみてください。


---

## 3. f(a, b) = 5 * (a * b - a) + 2 * b を PLONK が適用できる形(i.e., 複数の一変量多項式)に途中経過をわかりやすく明示しながら変換してみましょう。
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

良いですね!


---

## 4. p.52におけるパブリックインプット・アウトプットの証明をたった1つのKZG評価証明で行うにはどうすれば良いか、調べて説明してみましょう。 → ヒント: ゼロテスト(p.53~p.54)を用いる。
Copy link
Copy Markdown
Collaborator

@SeiyaKobayashi SeiyaKobayashi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@SeiyaKobayashi SeiyaKobayashi merged commit e2db870 into zk-tokyo:main Sep 22, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants