В протокол безопасности Signal добавили Post-Quantum Ratchets

Разработчики мессенджера Signal анонсировали внедрение Sparse Post Quantum Ratchet (SPQR) — нового компонента протокола постквантового шифрования. Он обеспечит надёжное шифрование всего сеанса общения.

Протокол Signal уже давно использует Double Ratchet для обеспечения защиты сообщений при компрометации (forward secrecy) и после неё (post-compromise security).

В 2023 году разработчики внедрили PQXDH — квантово-устойчивые секреты, которые добавили в начальный этап (handshake) сессии, чтобы защититься от атак «собирай сейчас — расшифруй позже» (harvest-now-decrypt-later).

В Double Ratchet используются квантово-безопасные хэш-функции, но механизм Elliptic Curve Diffie-Hellman (ECDH) для обмена ключами и обновлений, до последнего момента не был устойчивым к квантовым атакам. Таким образом, в будущем хакеры, имея в распоряжении квантовый компьютер, потенциально могли восстановить секреты, исходя из перехваченного трафика. 

SPQR добавили поверх и вместе с существующим Double Ratchet, чтобы создать гибридный механизм безопасности. Новая архитектура получила название Triple Ratchet. Теперь каждый раз, когда нужно выбрать ключ шифрования/дешифрования, обе системы (классическая и квантово-устойчивая) генерируют свои предложения, и они комбинируются через функцию извлечения ключа (Key Derivation Function, KDF). 

Такой подход делает ключ гибридным: чтобы атакующий смог расшифровать сообщение, ему нужно взломать обе системы — и ECDH, и используемый квантово-устойчивый механизм. 

Не все устройства получат поддержку SPQR, поэтому на начальный этапе протокол не будет работать, если один из участников не поддерживает его. 

Чтобы решить проблему, связанную с ростом объёма передаваемых для квантово-устойчивого обмена ключами данных, разработчики внедрили erasure codes — разбивку больших блоков ключей на мелкие фрагменты. Это снижает риск потери данных из-за потерь в сети или атак. 

При разработке SPQR Signal сотрудничал с исследователями из PQShield, AIST и NYU для анализа безопасности. Разработчики моделировали протоколы в ProVerif и затем реализовали их на Rust. Кроме того, использовался инструмент hax, который переводит Rust-код в язык F*, чтобы обнаруживать ошибки на уровне компиляции. 

В Signal отметили, что в конечном итоге все сеансы будут поддерживать Triple Ratchet с SPQR. 

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии