Возобновление сеанса TLS - PullRequest
       98

Возобновление сеанса TLS

1 голос
/ 05 февраля 2020

Я использую Caddy (веб-сервер, написанный на GO), у меня разрешен TLS 1.0-TLS 1.2, а GO поддерживает только вариант билетов для возобновления сеанса (данные сеанса TLS хранятся на стороне клиента).

Теперь я не совсем уверен, когда должно произойти возобновление TLS. Независимо от срока действия билета (который, я думаю, по умолчанию составляет неделю) и ключа шифрования билета сеанса (который поворачивается каждые 10 часов, и Caddy «запоминает» последние 4), поэтому проблема не в этом.

Насколько я понимаю, возобновление сеанса должно происходить всякий раз, когда билет остается в силе и браузер не перезапускается, а это означает, что даже если я изменил свой IP-адрес, билет TLS все равно должен работать. Но это не так для меня; когда я получаю доступ к веб-серверу (используя Chrome и Firefox), я получаю билет TLS, который остается действительным во время серфинга к этому веб-серверу, но когда я меняю свой IP-адрес (либо через прокси, либо с помощью WIFI), билет не принят на стороне сервера, и выполняется полное подтверждение связи TLS, при котором я получаю новый билет.

Поэтому мой главный вопрос: возобновление сеанса TLS работает только в рамках сеанса TCP и всякий раз, когда начинается новый сеанс TCP прежний билет TLS становится недействительным?

1 Ответ

0 голосов
/ 05 февраля 2020

... возобновление сеанса TLS работает только в сеансе TCP

Учитывая, что в соединении TCP почти всегда есть только одно подтверждение TLS, которое не имеет особого смысла.

Возобновление сеанса с билетами работает до тех пор, пока клиент отправляет билет сеанса, а у сервера есть необходимые секреты для извлечения информации из билета. Сервер может реализовать дополнительные ограничения, такие как кодирование IP-адреса клиента в заявке и проверка, не изменился ли он.

...