[О блоге]
[наверх]
[пред]
[2019-08-04 10:19:10+03:00]
[7b2ef1d249df7108d893980b93ed26e0ad2de0df]
Углубился в изучение TLS 1.3
Честно говоря, про старые версии я не много чего знаю. Видел какие они
переусложнённые, а до TLS 1.2 ещё и имеющие проблемы с безопасностью. Но
я вот почему-то раньше думал что для сериализации сообщений там
используется ASN.1. Сейчас, так как занимаюсь 1.3 реализацией, то
вынужден уже вникать во всё это.
TLS 1.3 мне нравится. Это действительно уже продуманный, вменяемый,
*существенно* более простой чем предшественники протокол. Из него
колоссальное количество всякого legacy и странностей выкинули. Его
требование просто и ясно использовать AEAD-ы прекрасно. Его ключевое
расписание использующее HKDF-ы с label-ами прекрасно и элегантно,
надёжно был лишнего выпендрежа в виде собственных KDF функций.
Продолжение сессий, в виде простого PSK, красиво и элегантно
вырабатывающегося и создающего аутентификационные MAC-ы тоже
понравилось. Отсутствуют места где потребляется рандом без существенной
на то причины. Нравится что X.509 не является must-have-ом и можно
передавать голые публичные ключи. Нравится что DHE не обязателен при
использовании PSK, позволяя продолжать сессии без использовать
асимметричной криптографии вообще.
Единственное что там неприятно бросается в глаза это всякие legacy
форматы различных расширений и форматов сообщений. Например есть
32-байтный session_id который в TLS 1.3 не должен заполнятся вообще. Но
ради обратной совместимости и возможности downgrade до TLS 1.2 можно и
потерпеть. Но этот протокол уже вполне себе хорош для использования.
Нет, я всё-равно за Noise, так как он и проще и гибче (а бывают нужды
когда это надо).
[оставить комментарий]