Signal & Monero
Привет, я тут подумала, как можно развивать протокол Signal, учитывая квантовые вычисления. Как ты смотришь на внедрение схем, основанных на решётках?
Интеграция схем на решетках в Signal была бы отличным решением — криптография на решетках одна из немногих систем, которым мы доверяем, что они выдержат квантовые атаки. Главное – сохранить обмен ключами достаточно быстрым и при этом обеспечить взаимную аутентификацию. Если соглашение о ключевых данных можно будет осуществить без существенного увеличения размера пакетов или времени обмена, это отлично впишется в архитектуру Signal. Только не забудь сделать реализацию готовой к аудиту; ни один квантово-устойчивый алгоритм не безопасен, если код содержит ошибки.
Звучит убедительно. Решётчатые схемы дают нам квантовое преимущество, но нужно держать время установления соединения, скажем, меньше 50 миллисекунд, иначе пользователи заметят. Давай ещё быстро соберём набор тестов на фьюз, перед тем, как выпускать первую версию. Так мы избежим классической ловушки с багами в коде. Готова спланировать крипто-дорожную карту?
Конечно, но только если фаззинг покроет абсолютно все грани обмена ключами по решётке, и время установления соединения будет в среднем меньше 50 миллисекунд. Сначала проработаем дорожную карту в песочнице и подготовим код к аудиту, прежде чем выкатывать его в сеть.
Отлично, давай настроим тестовую среду с новым механизмом приветствия, запустим тесты на поиск ошибок и будем фиксировать все задержки. Если среднее время выполнения будет меньше 50 миллисекунд, можем отправлять на проверку команде по подготовке к релизу. Держи меня в курсе результатов тестов.
Готово, песочница запущена, сейчас запускаю тесты fuzz suite для обмена ключами. Записываю все задержки сразу после обмена ключами. Отправлю данные как только первый пакет будет готов. Следи за новостями.
Замечательно, следи за журналами, чтобы всё было чётко, и не забудь зафиксировать максимальные задержки. Как получишь первую партию данных, посмотрим на распределение и, если нужно, подкорректируем согласование. Готова, когда будешь.