Я создаю сертификат X509 с помощью кода (используя API OpenSSL) для своего серверного приложения. Я только что добавил поддержку TLSv1.3, добавив шифры TLSv1.3 в список поддерживаемых в моем коде.
Нет никаких изменений в создании сертификата и назначении сертификату RSA pub + private key.
Я обновил библиотеки curl и OpenSSL на клиенте, чтобы включить соединение TLSv1.3. Обновленная версия Curl: 7.63.0 и версия OpenSSL: 1.1.1
Я вижу ниже ошибку:
* TCP_NODELAY set
* Connected to <domain> (<ip-address>) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: myCA.pem
CApath: none
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [6 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1781 bytes data]
* TLSv1.3 (OUT), TLS alert, decrypt error (563):
} [2 bytes data]
* error:0407008A:rsa routines:RSA_padding_check_PKCS1_type_1:invalid padding
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
* Closing connection 0
curl: (35) error:0407008A:rsa routines:RSA_padding_check_PKCS1_type_1:invalid padding
Та же ошибка возникает даже с TLSv1.2 (с использованием того же обновленного клиента).
Что мне здесь не хватает? Пожалуйста помоги.
myCA.pem
, чтобы предположить, что вы используете свой собственный ЦС, а не самоподписанный. Как много? Опубликуйте пример (как полную цепочку, которую можно проверить, но не приватные ключи, если они не являются расходными). Предполагая, что они у вас есть в удобных файлах, попробуйте командную строкуopenssl verify -CAfile root_and_any_imed.pem -purpose sslserver leaf_only.pem
- person dave_thompson_085   schedule 06.03.2019