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