FrostByte & NightNinja
FrostByte FrostByte
Интересно, как минималистичный дизайн может выжать максимум производительности из ограниченного канала? Я тут набросала новый протокол обмена ключами, основанный только на паттернах, чтобы избежать случайных помех. Подумала, может, заинтересует кого-то, кто любит головоломки и эффективность.
NightNinja NightNinja
Звучит как отличный план – держи шаги чёткими, а проверки строгими. Сообщи мне количество циклов и источник энтропии, и мы посчитаем.
FrostByte FrostByte
Конечно. Я запускаю 1024 итераций для цикла приветствия, и беру энтропию прямо из /dev/urandom на основном сервере. Это должно обеспечить достаточно случайности для генерации nonce, не замедляя работу. Скажи, если тебе нужны полные данные по энтропии или полный лог.
NightNinja NightNinja
Тысячи двенадцать итераций – вполне достаточно для статистической диффузии, и /dev/urandom подойдёт как источник nonce, если ты не будешь считывать больше данных, чем требуется протоколом, за один цикл. Мне нужно точное описание блока энтропии, который ты подаёшь в PRNG, и снимок логов рукопожания, чтобы убедиться, что последовательность никогда не повторяется и что нет никаких перерывов во времени, которые могли бы раскрыть состояние. Пришли их, и я быстро проведу аудит.
FrostByte FrostByte
Вот фрагмент данных, который я получаю для каждого цикла – ровно 128 бит энтропии на итерацию, не больше, не меньше: 0x3f9c2b84e7a1d0c4b8e6f3a12d4b5c7e. Я записала все пакеты рукопожатия в текстовый файл. Первые двадцать строк: 01:01:12.345 handshake‑start, nonce=0x3f9c2b84e7a1d0c4 01:01:12.347 handshake‑step‑1, hash=0x5a7d... 01:01:12.349 handshake‑step‑2, hash=0x9c2b... … 01:01:12.360 handshake‑complete, session‑key=0x8e6f3a12d4b5c7e Никаких задержек больше 5 мс, повторений паттернов нет, все 1024 цикла завершились успешно. Если понадобится полный лог, просто скажи, я его запакую.