ZkSNARK 26

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску

Протоколы доказательств с нулевым разглашением

Весенний курс по выбору для студентов 4 курса ПМИ ФКН ВШЭ.

Команда курса

Лектор: Павел Соколов aka @TurtlePU.

Семинарист: Кирилл Сизов aka @kirillsizov.

Ссылки

Канал в телеграм: https://t.me/+Lo01TtiDATcyODYy

Чат в телеграм: https://t.me/+ndaHNUszEFRiMDdi

Зум: https://us06web.zoom.us/j/84188907802?pwd=tpDbXaPZUxwAzc1eGHN8tqZJR7b2mb.1

Записи лекций и семинаров: https://disk.yandex.ru/d/mzXlT0U3MzEZkQ/%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

Материалы семинаров: https://github.com/sizovk/zk-seminars

Таблица с оценками: TBA

План курса

Лекции и семинары

  • Лекция I (20 янв). Определение zkSNARK. Задание вычислений многочленами над полем остатков Zp. Конспект. Запись.
  • Семинар I (20 янв). Определение R1CS, QAP. Внутреннее устройство протокола groth16. Слайды. Запись.
  • Лекция II (27 янв). Algebra recap: конечные группы и поля. Задача DLOG. Гостевая лекция Димы Трушина: проективные пространства. Запись.
  • Семинар II (27 янв). Фреймворк Circom: установка, принципы работы, примеры. Материалы. Запись.
  • Лекция III (3 фев). Гостевая лекция Димы Трушина: определение и внутреннее устройство эллиптических кривых над полем. [ Запись].
  • Семинар III (3 фев). Работа во фреймворке Circom, часть II. Материалы. [ Запись].
  • Лекция IV (10 фев). Гостевая лекция Димы Трушина: TBA. [ Запись].
  • Семинар IV (10 фев). TBA. [ Слайды]. [ Запись].
  • Лекция V (17 фев). TBA. [ Конспект]. [ Запись].
  • Семинар V (17 фев). TBA. [ Слайды]. [ Запись].
  • Лекция VI (24 фев). TBA. [ Конспект]. [ Запись].
  • Семинар VI (24 фев). TBA. [ Слайды]. [ Запись].
  • Лекция VII (3 мар). TBA. [ Конспект]. [ Запись].
  • Семинар VII (3 мар). TBA. [ Слайды]. [ Запись].
  • Лекция VIII (10 мар). TBA. [ Конспект]. [ Запись].
  • Семинар VIII (10 мар). TBA. [ Слайды]. [ Запись].

Домашние задания

  • [ Домашнее задание 1]. Дедлайн TBA.
  • [ Домашнее задание 2]. Дедлайн TBA.
  • [ Домашнее задание 3]. Дедлайн TBA.
  • [ Домашнее задание 4]. Дедлайн TBA.
  • [ Домашнее задание 5]. Дедлайн TBA.

Оценивание

Итог = Округление(1/5 * ДЗ-1 + 1/5 * ДЗ-2 + 1/5 * ДЗ-3 + 1/5 * ДЗ-4 + 1/5 * ДЗ-5),

где ДЗ-n – оценка за домашнее задание n.

Округление арифметическое.

Литература

Основная литература

  1. Maksym Petkus – Why and How zk-SNARK Works: Definitive Explanation
  2. 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
  3. Ariel Gabizon, Zachary J. Williamson, Oana Ciobotaru – PlonK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge
  4. Benedikt Bünz, Binyi Chen – Protostar: Generic Efficient Accumulation/Folding for Special-sound Protocols

Дополнительная литература

  1. Tim Dokchitser, Alexandr Bulkin – Zero Knowledge Virtual Machine step by step
  2. Dong Pyo Chi, Jeong Woon Choi, Jeong San Kim and Taewan Kim – Lattice Based Cryptography for Beginners
  3. 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
  4. Rosario Gennaro, Michele Minelli, Anca Nitulescu, and Michele Orrù – Lattice-Based zk-SNARKs from Square Span Programs
  5. Yuval Ishai, Hang Su, David J. Wu – Shorter and Faster Post-Quantum Designated-Verifier zkSNARKs from Lattices