SSL рукопожатие с разъяснением PrivateKey - PullRequest
0 голосов
/ 19 ноября 2018

Я думаю, что у меня есть ошибка в моем понимании SSL рукопожатия, но могу ли я?

Мое приложение не может проверить себя на API.После некоторого копания с wireshark я заметил, что нет никакого шага "проверки сертификата", и мой сертификат закрытого ключа не подписан ни с одним из доверенных органов, поэтому моя первая мысль была такой.Подвох заключается в следующем: если я добавляю тот же сертификат в свой браузер (firefox) и вызываю API, я получаю всплывающее окно для выбора сертификата, и оно действительно работает.

Разве оно не должно принимать только сертификаты, перечисленные вВыдающиеся имена?Или это требуется только для открытого ключа и частного не обязательно?Что Firefox на самом деле делает в фоновом режиме, когда появляется всплывающее окно, создает пользовательскую цепочку сертификатов?

Настройка выполняется следующим образом:

  • API находится под https: somerandomurl

  • API-сервер интегрировал наш сертификат для аутентификации (насколько я знаю) (этот сертификат фактически является сертификатом для https: someotherurl)

  • Клиентимеет хранилище доверенных сертификатов с сертификатом для somerandomurl

  • У клиента есть хранилище ключей с сертификатом PKCS # 12

Я предполагаю, что в моем приложении неправильно / нет цепочки сертификатовпотому что, насколько я знаю, сертификат PKCS # 12 содержит паб и закрытый ключ, НО паб не для "somerandomurl", а "someotherurl".Но это только предположение, может быть, это просто доверенные авторы

...