Принципиально последовательное доказательство выполнения работы (проект)
Ментор | Янович Юрий |
Учебный семестр | Осень 2017 |
Учебный курс | 2-й курс |
Проект можно развивать на летней практике | |
Максимальное количество студентов, выбравших проект: 5 | |
Что это за проект?
В пиринговых (одноранговых) сетях (torrent, tor, bitcoin) важную роль играет доказательство выполнения работы (Proof-of-Work, PoW). Оно используется для подтверждения затраты вычислительных ресурсов, которая часто подменяет затрату времени. Однако, популярные реализации PoW являются распараллеливаемыми, что, например, увеличивает разрыв между вычислительными возможностями злоумышленниками, задумавшими DoS атаку на приложение, и обычными пользователям, желающими воспользоваться услугами приложения. Сократить подобный зазор способны принципиально нераспараллеливамые реализации PoW-алгоритмов -- Time-lock puzzles -- реализацией которых для случая разделяемого проверочного секрета и посвящен проект.
Предполагаемые результаты: - программа для отгадки "головоломок", требующая известное число (входной параметр) вычислительных операций на решение; - программа для проверки решений "головоломок", гарантирующая, что отгадывающий затратил на решение заданное число тактов последовательной архитектуры.
Чему вы научитесь?
Криптография с открытым ключом, blockchain, hash-деревья
Какие начальные требования?
начальные навыки Python
Какие будут использоваться технологии?
Git, (*) Rust
Темы вводных занятий
Криптография с открытым ключом. Доказательство выполнения работы. Технология blockchain
Направления развития
- сделать красивый, удобный интерфейс
- создать peer-to-peer приложение
- написать научную статью
Критерии оценки
Критерии успешности:
- реализованы обе программы в предположении единственного проверяющего (4-5)
- в проверяющем приложении поддерживается разделение секрета между несколькими проверяющими (6-7)
- проведены численные эксперименты по замерам времен работы приложений на различных конфигурациях (8-10)
Ориентировочное расписание занятий
ПН, ПТ: 10-15; ВТ, СБ: 10-20