Всё-таки собрался написать свои впечатления от сегодняшней встречи рабочей группы tls.
Для тех, кто не в курсе, краткая предыстория.
- В криптографии существует такое понятие, как perfect forward secrecy (PFS -- на русский нет нормального перевода). Оно очень много крови выпило у многих вендоров security appliance'ов, потому что очень часто эти апплаенсы в инфраструктуре заказчика ставятся в SPAN и анализируют не сам трафик, а только его копию. PFS же не позволяет расшифровывать копию трафика даже при наличии приватного ключа.
Appliance в SPAN -- это обычное требование сетевиков, которые отвечают за непрерывность сетевого сервиса и в этом плане от всех этих апплаенсов наелись досыта. Однако вплоть до TLSv1.2 включительно PFS можно было отключить. Я сильно упрощаю, но в целом ситуация такая. - Одно из последствий работающего PFS, кстати -- невозможность практической реализации пакета Яровой в плане раскрытия приватных ключей шифрования. Их можно заставить отдать, но с их помощью нельзя будет расшифровать данные, собранные до этого. Транслировать или сохранять все сессионные ключи -- нереально. Понятно, что государствам PFS тоже не нравится -- в том числе поэтому его активно поддерживали и продвигали.
- В грядущем стандарте TLSv1.3 PFS стал фактически неотключаем.
- Около полугода назад в рассылке рабочей группы tls появились разнообразные личности и потребовали пересмотреть вопрос с PFS. Их предсказуемо послали, но они вернулись с подкреплением и добились того, что вопрос был вынесен на заседание рабочей группы на IETF 99 в Праге. Запрос к председателю рабочей группы "прикажите прекратить дискуссию и оставить PFS" был отклонён (кстати, зацените тред).
Когда я увидел этот запрос в почте, мне почему-то сразу пришла на ум ассоциация с прошедшими выборами президента США. Я был почти уверен, что а) противники PFS хорошо подготовятся к пленарной дискуссии, б) сторонники PFS, уверенные в твёрдости своей позиции просто по факту её внутренне осознаваемой разумности и адекватности, готовы не будут.
Заседание прошло сегодня. Со стороны противников PFS пришло
4 докладчика, включая Мэттью Грина и ещё одного мужика из NIST. Принесённый ими
черновик не требует изменений в самом протоколе, учитывает целый ряд ранее высказанных возражений и замечаний, носит статус informational, есть некое (
сомнительное, но) обоснование.
Сторонник PFS (Стивен Фаррелл) выступал один и даже презентацию не подготовил. В самом начале выступления он открыл браузер, зашёл на страницу
https://github.com/sftcd/tinfoil и натурально полчаса читал с листа 24 абзаца оттуда. Проектор добросовестно светил на полотно стену текста, набранного шрифтом 12 пунктов.
Этот репозиторий tinfoil -- вообще отдельная тема. В самом начале было сказано, что это такой brainstorming. В репозиторий нужно накидать все возможные возражения, а потом из них будет выбрано несколько убийственных аргументов, которые и будут в презентации. В итоге докладчик тупо читал вслух все, включая пункты очевидно неубедительные. Презентации вообще не было, никакой.
Сторонники, подходившие в секции обсуждения к микрофону, смотрелись просто потерянными. Там были очень разумные аргументы, но люди, их выражавшие, выглядели как пыльным мешком по голове ударенные. Со стороны противников подобрались натурально одни дипломаты, включая замечательную (без иронии) Dorothy Cooley из NSA.
Очередь на обсуждение:
В итоге никаких формальных противоречий с политиками IETF в предложении Грина найдено не было, было объявлено голосование. На голосовании голоса разделились 50 на 50. Дискуссия будет продолжаться как минимум до осеннего IETF 100, потому что TLSv1.3 всё равно оказался не готов: от 1% до 10% трафика в сети
теряется из-за каких-то миддлбоксов. Нужно исследовать и дорабатывать. У Грина сотоварищи тоже, понятно, есть всё это время.
Один и тот же вывод, снова и снова: если вам что-то кажется очевидным, и всем вашим друзьям это очевидно, и друзьям друзей -- это не значит, что это очевидно вообще всем. Выступать с позиции оскорблённой истины нельзя никогда. Нужно терпеливо объяснять и обосновывать любую ерунду, в которой кто-то сомневается, потому что иначе практически гарантирован проигрыш, это уже много раз было доказано практикой и будет практикой доказываться дальше. Дебаты там, где требуется диалог, -- это совершенно проигрышная стратегия.
Пойду пить пиво, в Праге с ним очень хорошо (кто бы сомневался).