Шифрование метаданных в мессенджере: HMAC-SHA256 анонимные пары, timing obfuscation и отравление собственных логов
> «Мы знаем, что вы вчера в 23:47 переписывались с Алексеем 14 минут. О содержании разговора нам неизвестно.» > — Так выглядит мир, где сообщения зашифрованы, а метаданные — нет. Привет, Хабр! Я занимаюсь разработкой open-source мессенджера (проект Xipher, C++/Android), и один из компонентов, который пришлось проектировать с нуля — защита метаданных . Не содержимого сообщений (E2EE сейчас есть у всех), а информации о самом факте общения: кто с кем, когда, сколько раз. В этой статье я подробно разберу инженерные решения, к которым пришёл, — от криптографических примитивов до С++ кода и SQL-схемы. Все примеры — из реального работающего кода. В конце честно расскажу, где подход имеет ограничения и чем отличается от того, что делают Signal и Tor. Исходники проекта открыты — ссылка на GitHub в конце статьи, если захотите покопаться или раскритиковать.
https://habr.com/ru/articles/1002812/
#metadata_encryption #HMACSHA256 #E2EE #traffic_analysis #anonymous_messaging #C++ #информационная_безопасность #криптография #метаданные #open_source
Шифрование метаданных в мессенджере: HMAC-SHA256 анонимные пары, timing obfuscation и отравление собственных логов
> «Мы знаем, что вы вчера в 23:47 переписывались с Алексеем 14 минут. О содержании разговора нам неизвестно.» > — Так выглядит мир, где сообщения зашифрованы, а метаданные — нет. Привет, Хабр! Я...