#hkdf — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #hkdf, aggregated by home.social.
-
Я открыл боевую базу своего clipboard-sync, чтобы показать, что он знает о вашем пароле. Ответ: ничего
Скопировали пароль от прода и синхронизировали его между ноутбуком и телефоном. Где он теперь лежит и кто может его прочитать? Я сделал сервис, где честный ответ — «нигде в открытом виде и никто, включая меня». И сейчас покажу строку из живой базы, чтобы это доказать. Это первая статья про Copy Sync — приватный кроссплатформенный обмен буфером обмена. Я не собираюсь его вам продавать. Я хочу разобрать одну инженерную задачу: как построить сервер, которому физически нечего у вас украсть , даже если им завладеет кто-то злой — включая меня самого. Весь крипто-код открыт, и проверить меня можно по ~70 строкам, а не по обещаниям.
https://habr.com/ru/articles/1044494/
#endtoend_шифрование #E2EE #zeroknowledge #X25519 #AESGCM #HKDF #Web_Crypto_API #синхронизация_буфера_обмена #NestJS #приватность
-
Я реализовал Double Ratchet в React Native мессенджере. Разбор протокола и кода
В прошлой статье про трёхуровневый кэш сообщений я уже упоминал, что делаю мессенджер ONEMIX на React Native. Базовое E2E у меня было простое: ECDH P-256 для обмена ключами при первом контакте, AES-GCM для шифрования каждого сообщения общим секретом. Это работает, но имеет одну проблему: общий секрет один на всю переписку . Если у одной из сторон скомпрометируют приватный ключ — все сообщения за всё время превращаются в открытый текст. Это называется отсутствием Perfect Forward Secrecy (PFS). И это значит, что человек, к которому в руки попадёт твой телефон через год, может прочитать переписку из прошлого года. WhatsApp, Signal, и серьёзные части Telegram давно используют другую схему — Double Ratchet — которая ключи переизбретает заново на каждом сообщении. Так делают потому, что любой ключ компрометируется в один момент времени, и компрометация не должна давать доступа ни к прошлому, ни к будущему. Я реализовал Double Ratchet с нуля для ONEMIX. В этой статье разберу:
https://habr.com/ru/articles/1033830/
#double_ratchet #signal_protocol #e2e #endtoend_encryption #react_native #криптография #мессенджер #ecdh #hkdf #web_crypto_api
-
Китайская криптография. Анализ проприетарного протокола MMTLS из WeChat
Изображение из документации протокола MMTLS Академическая исследовательская группа Citizen Lab из университета Торонто провела первый публичный анализ протокола шифрования MMTLS на предмет безопасности и конфиденциальности. Это основной протокол приложения WeChat , которым пользуется более 1,2 млрд человек ( 34% мобильного трафика в Китае в 2018 году). Как выяснилось, MMTLS представляет собой модифицированную версию TLS 1.3, причём многие изменения, внесённые разработчиками, привели к появлению слабых мест. Более того, в дополнение к MMTLS используется ешё менее безопасный, тоже проприетарный протокол, содержащий множество уязвимостей, в том числе детерминированные векторы инициализации в AES-GCM и отсутствие прямой секретности. Ниже он упоминается под названием Business-layer encryption.
https://habr.com/ru/companies/globalsign/articles/862300/
#TLS #MMTLS #WeChat #DH #AESGCM #AESCBC #MD5 #HKDF #шифрование #векторы_инициализации
-
wooohooo there is a new libsodium out! finally with HKDF support! been years without a proper release. kudos to @jedisct1 <3
https://github.com/jedisct1/libsodium/releases/tag/1.0.19-RELEASE
i love this part:
> libsodium can now be added as a dependency to Zig projects. -
What is the impact of leaving a salt used in HKDF open to attacker control?
https://crypto.stackexchange.com/questions/105812/what-is-the-impact-of-leaving-a-salt-used-in-hkdf-open-to-attacker-control
#randomoraclemodel #keyderivation #salt #hkdf -
HKDF is commonly used to derive key material just in time for its application. However, as a cryptography tool, HKDF is severely under documented and lacks prescriptive examples for intended use.
A large-tech blog shared their HKDF application and I identify several issues with its implementation. Inside is an anonymized version with critiques and improvements.