openssl: Разрешить использование небезопасных клиентских сертификатов

У меня есть приложение, которое было распространено очень давно. Это приложение предлагает интерфейс https для клиентов с аутентификацией сертификата клиента. К моменту выпуска приложения предоставление сертификатов с длиной ключа 1024 бита, вероятно, было нормальным. Хотя мы всегда предлагали клиентам обновить сертификат по умолчанию с помощью их собственной PKI, большинство из них просто используют сертификат по умолчанию, поэтому у меня тысячи экземпляров работают таким образом. Теперь мне нужно написать клиента (на Python) для запроса этого приложения. Этот клиент будет работать в более современных дистрибутивах Linux, где библиотеки и клиентские приложения скомпилированы с использованием openssl 1.1.1a. В результате я всегда получаю сообщение об ошибке при попытке доступа к интерфейсу https с использованием слабого сертификата клиента по умолчанию: Ошибка OpenSSL:

140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small

выполнение того же кода на старых дистрибутивах (со старым openssl) или использование приложения, скомпилированного для gnutls, работает нормально.

Несколько вопросов:

  • Правильно ли я думаю, что это ограничение введено в целях безопасности в openssl?
  • Если да, то когда это было введено?
  • Есть ли способ отключить эту проверку? (желательно без перекомпиляции клиентских библиотек)
1
задан 12 March 2019 в 17:41
1 ответ
  1. Да
  2. ] 1.1.1 ~~ pre9-1 (скрыто) Debian /etc/ssl/openssl.cnf https://wiki.debian.org/ContinuousIntegration/TriagingTips/openssl-1.1.1

SECLEVEL 2 установка уровень безопасности до 112 бит

SECLEVEL 1 был значением по умолчанию в предыдущих версиях и составляет 80 бит

2
ответ дан 3 December 2019 в 20:09

Теги

Похожие вопросы