Принципиально последовательное доказательство выполнения работы (проект)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Ментор Янович Юрий
Учебный семестр Осень 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