Неверный контекст проверки сертификата при вызове X509_verify_cert в openSSLC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Неверный контекст проверки сертификата при вызове X509_verify_cert в openSSL

Сообщение Anonymous »

Я пытаюсь проверить одноранговый сертификат на сервере с помощью списка crl в tls, но получаю «неверный контекст проверки сертификата» при вызове X509_verify_cert. Я настроил свой TLS-сервер, как показано ниже. Почему мне выдает эту ошибку?
OpenSSL_add_all_algorithms();
ERR_load_crypto_strings();
FILE *fp = fopen(crlPath.c_str(), "r");
crl = PEM_read_X509_CRL(fp, NULL, NULL, NULL);
store = X509_STORE_new();
X509_STORE_load_file(store, caCertPath.c_str());
X509_STORE_add_crl(store, crl);

const SSL_METHOD *method;
SSL_CTX *sslCtx;
method = TLS_server_method());
sslCtx = SSL_CTX_new(method);

SSL_CTX_use_certificate_file(sslCtx, serverCertPath.c_str(), SSL_FILETYPE_PEM);
SSL_CTX_use_PrivateKey_file(sslCtx, serverKeyPath.c_str(), SSL_FILETYPE_PEM);

struct sockaddr_in cli;
len = sizeof(cli);
int conn_fd = accept(serv_fd, (struct sockaddr*)&cli, &len);

ssl = SSL_new(sslCtx);
SSL_set_fd(ssl, conn_fd);

SSL_accept(ssl);
X509 * peerCert = SSL_get1_peer_certificate(ssl);
storeCtx = X509_STORE_CTX_new();
X509_STORE_CTX_init(storeCtx, store, peerCert, NULL);
int res = 0;
if((res = X509_verify_cert(storeCtx))

Подробнее здесь: https://stackoverflow.com/questions/791 ... -in-openss
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»