SSL handshake тормозит
От: Sinclair Россия https://github.com/evilguest/
Дата: 20.07.16 05:34
Оценка:
Всем привет.
Имеем .Net приложение, которое подключается к серверу по локалке через HTTPS.
Имеем проблему на одной из инсталляций: установление соединения занимает три секунды.
Сто стороны сервера имеем self-signed сертификат (S1)
Со стороны клиента тоже имеем сертификат (S2).
Попытка потрассировать System.Net к особому успеху не привела.
Видим, что за, фактически, 0ms у нас происходит весь handshake с обменом сертификатами.
Потом — InitializeSecurityContext().

Следующая запись в логе уже на 3 секунды позже, и там собсно "вот сертификат, соединение установлено".
Следов того, чем System.Net занимается в эти три секунды, в логе нет.

Подключение к серверу браузером отрабатывает за 10-30ms (это без клиентского сертификата). То есть затык не на стороне сервера.
В чём тут может быть дело? Что ещё можно потрассировать?
Подключение идёт по IP адресу; subject сертификата, как видно из лога, произвольный (5c3d720e-2307-4573-9183-5ce5837e5bd5).

System.Net Information: 0 : [6608] InitializeSecurityContext(In-Buffers count=2, Out-Buffer length=0, returned code=OK).
    ProcessId=5744
    DateTime=2016-07-18T 11:45:11.9261348Z
System.Net Information: 0 : [6608] Remote certificate: [Version]
  V3

[Subject]
  CN=5c3d720e-2307-4573-9183-5ce5837e5bd5, OU=Controller, O=Parallels, C=RU
  Simple Name: 5c3d720e-2307-4573-9183-5ce5837e5bd5
  DNS Name: 5c3d720e-2307-4573-9183-5ce5837e5bd5

[Issuer]
  CN=5c3d720e-2307-4573-9183-5ce5837e5bd5, OU=Controller, O=Parallels, C=RU
  Simple Name: 5c3d720e-2307-4573-9183-5ce5837e5bd5
  DNS Name: 5c3d720e-2307-4573-9183-5ce5837e5bd5

[Serial Number]
  B7C7B6A6

[Not Before]
  27/08/2014 5:59:44

[Not After]
  23/08/2029 5:59:44

[Thumbprint]
  403269EB21359E618F617D3C866B2DF3065118E8

[Signature Algorithm]
  sha1RSA(1.2.840.113549.1.1.5)

[Public Key]
  Algorithm: RSA
  Length: 2048
  Key Blob: 30 82 01 0a 02 82 01 01 00 ....
    ProcessId=5744
    DateTime=2016-07-18T11:45:15.1085404Z
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.