Детали сообщения обмена ключами TLS-сервера
По сути, это то же самое, что и мой другой вопрос о параметрах DH (на который не было получено никаких ответов), но я заинтересован в получении информации о сообщениях обмена ключами сервера TLS, которые отправляются во время рукопожатия TLS.
Являются ли эти сообщения - или информация, которая исходит от них, например согласованные эфемерные ключи, - вообще доступными через Java API? Я использую Java SSLSocketFactory
чтобы получить SSLSocket
а затем подключиться с помощью этого; нет никаких других API-интерфейсов, наложенных поверх него (таких как http-клиент Apache), которые мне нужно пробить, чтобы опуститься до этого уровня.
Я просто не уверен, что Java предоставляет эту информацию вообще. Я пытался с помощью HandshakeCompletedListener
но, похоже, это не дает мне никакой информации, которую я ищу.
Кто-нибудь знает, если / как это можно сделать?
1 ответ
Сообщения недоступны через API, однако вы можете использовать libpcap для перехвата пакетов, а затем проанализировать данные, полученные через него, и сохранить их в вашей программе.
По ссылке отсюда http://download.java.net/jdk7/archive/b123/docs/api/javax/net/ssl/SSLSocket.html Я не думаю, что можно вывести параметры DH из API.