ZkSNARK 25 — различия между версиями
Материал из Wiki - Факультет компьютерных наук
TurtlePU (обсуждение | вклад) (→Домашние задания) |
TurtlePU (обсуждение | вклад) (→Лекции) |
||
(не показана одна промежуточная версия этого же участника) | |||
Строка 30: | Строка 30: | ||
* '''Лекция II''' (10 фев). Параметры протокола zkPoly. Пейринг. Эллиптические кривые. [ Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%20%D1%81%20%D0%BD%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D0%BC%20%D1%80%D0%B0%D0%B7%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%2B%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-02-10T11-38-46Z.mp4 Запись]. | * '''Лекция II''' (10 фев). Параметры протокола zkPoly. Пейринг. Эллиптические кривые. [ Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%20%D1%81%20%D0%BD%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D0%BC%20%D1%80%D0%B0%D0%B7%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%2B%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-02-10T11-38-46Z.mp4 Запись]. | ||
* '''Лекция III''' (17 фев). Арифметические цепи. R1CS. zkSNARK решения R1CS с публичным входом. Универсальные и не универсальные zkSNARK для систем констрейнтов. Кодирование вычислений в R1CS. [ Конспект]. [https://miro.com/app/board/uXjVIefM6no=/?share_link_id=548051629442 Доска]. [ Запись]. | * '''Лекция III''' (17 фев). Арифметические цепи. R1CS. zkSNARK решения R1CS с публичным входом. Универсальные и не универсальные zkSNARK для систем констрейнтов. Кодирование вычислений в R1CS. [ Конспект]. [https://miro.com/app/board/uXjVIefM6no=/?share_link_id=548051629442 Доска]. [ Запись]. | ||
− | * '''Лекция IV''' (24 фев). | + | * '''Лекция IV''' (24 фев). Эмулирование машины Тьюринга. IVC. Folding Schemes. [ Конспект]. [ Запись]. |
* '''Лекция V''' (3 мар). TBA. [ Конспект]. [ Запись]. | * '''Лекция V''' (3 мар). TBA. [ Конспект]. [ Запись]. | ||
=== Домашние задания === | === Домашние задания === | ||
− | * [https://classroom.google.com/c/NzUxMDUxODAzOTM3?cjc=cca3jdc Домашнее задание 1]. Дедлайн ''' | + | * [https://classroom.google.com/c/NzUxMDUxODAzOTM3?cjc=cca3jdc Домашнее задание 1]. Дедлайн '''7 марта в 23:59'''. |
* [ Домашнее задание 2]. Дедлайн '''TBA'''. | * [ Домашнее задание 2]. Дедлайн '''TBA'''. | ||
* [ Домашнее задание 3]. Дедлайн '''TBA'''. | * [ Домашнее задание 3]. Дедлайн '''TBA'''. |
Текущая версия на 14:26, 3 марта 2025
Содержание
[убрать]Протоколы доказательств с нулевым разглашением
Весенний блендед-курс для студентов 4 курса ФКН ВШЭ.
Команда курса
Лектор: Павел Соколов aka @TurtlePU.
На подхвате: Кирилл Сизов aka @kirillsizov.
Ссылки
Канал в телеграм: https://t.me/+Lo01TtiDATcyODYy
Чат в телеграм: https://t.me/+ndaHNUszEFRiMDdi
Зум: https://us06web.zoom.us/j/83311903782?pwd=zWNtbbxfijWZAlijS40IKAF0rm2AxH.1
Конспекты лекций: TBD
Таблица с оценками: TBD
План курса
Лекции
- Лекция I (3 фев). Определение zkSNARK. zkSNARK многочлена, делящего данный (zkPoly). [ Конспект]. Запись.
- Лекция II (10 фев). Параметры протокола zkPoly. Пейринг. Эллиптические кривые. [ Конспект]. Запись.
- Лекция III (17 фев). Арифметические цепи. R1CS. zkSNARK решения R1CS с публичным входом. Универсальные и не универсальные zkSNARK для систем констрейнтов. Кодирование вычислений в R1CS. [ Конспект]. Доска. [ Запись].
- Лекция IV (24 фев). Эмулирование машины Тьюринга. IVC. Folding Schemes. [ Конспект]. [ Запись].
- Лекция V (3 мар). TBA. [ Конспект]. [ Запись].
Домашние задания
- Домашнее задание 1. Дедлайн 7 марта в 23:59.
- [ Домашнее задание 2]. Дедлайн TBA.
- [ Домашнее задание 3]. Дедлайн TBA.
Оценивание
Итог = Округление(1/3 * ДЗ-1 + 1/3 * ДЗ-2 + 1/3 * ДЗ-3),
где ДЗ-n – оценка за домашнее задание n.
Округление арифметическое.
Литература
Основная литература
- Maksym Petkus – Why and How zk-SNARK Works: Definitive Explanation
- Marta Bellés-Muñoz, Miguel Isabel, Jose Luis Muñoz-Tapia, Albert Rubio, and Jordi Baylina – CIRCOM: A Circuit Description Language for Building Zero-Knowledge Applications
- Ariel Gabizon, Zachary J. Williamson, Oana Ciobotaru – PlonK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge
- Benedikt Bünz, Binyi Chen – Protostar: Generic Efficient Accumulation/Folding for Special-sound Protocols
Дополнительная литература
- Tim Dokchitser, Alexandr Bulkin – Zero Knowledge Virtual Machine step by step
- Dong Pyo Chi, Jeong Woon Choi, Jeong San Kim and Taewan Kim – Lattice Based Cryptography for Beginners
- Martin R. Albrecht, Valerio Cini, Russell W. F. Lai, Giulio Malavolta and Sri Aravinda Krishnan Thyagarajan – Lattice-Based SNARKs: Publicly Verifiable, Preprocessing, and Recursively Composable
- Rosario Gennaro, Michele Minelli, Anca Nitulescu, and Michele Orrù – Lattice-Based zk-SNARKs from Square Span Programs
- Yuval Ishai, Hang Su, David J. Wu – Shorter and Faster Post-Quantum Designated-Verifier zkSNARKs from Lattices