Поэтому я пытаюсь изменить третью сторону (libtorrent), чтобы она принимала только протокол TLS 1.2.
Часть настройки контекста SSL:
boost::shared_ptr<context> ctx = boost::make_shared<context>(boost::ref(m_ses.get_io_service()), context::tlsv12)
ctx->set_options(context::default_workarounds
| boost::asio::ssl::context::no_sslv2
| boost::asio::ssl::context::no_sslv3
| boost::asio::ssl::context::no_tlsv1
| boost::asio::ssl::context::no_tlsv1_1
| boost::asio::ssl::context::single_dh_use);
Однако, когда я тестирую свое соединение с OpenSSL s_client, кажется, что оно все еще принимает соединение tls 1.0 и tls 1.1.
Есть ли что-то, что я делаю неправильно?
РЕДАКТИРОВАТЬ: добавлено "| boost::asio::ssl::context::no_tlsv1_1" в параметры. Я понял, что имел в виду старое справочное руководство по бустингу. Однако это ничего не изменило.
РЕДАКТИРОВАТЬ: я просто понимаю, что я не упомянул, что это соединение является двусторонним/взаимным соединением аутентификации. Не уверен, что это что-то меняет.
ctx
модифицируете существующий код библиотеки или библиотека вызывает take ctx? Есть ли образец, на который можно дать ссылку? - person sehe   schedule 23.06.2015s_client
или сервером, который заставляет вас полагать, что любая версия TLS принята (пожалуйста, простите мое невежество). - person jww   schedule 24.06.2015