как я могу проверить самоподписанный сертификат с помощью библиотеки openssl на С++?

Мне нужно проверить сертификат X509 v3. Сертификат является самоподписанным, поэтому у меня есть закрытый ключ и открытый ключ.

Я пытался

ki=X509_verify(Cert,X509_get_pubkey(Cert));

я всегда получаю Ki = -1. может ли кто-нибудь сказать мне, как сделать эту проверку.


person Balamurugan    schedule 07.07.2011    source источник
comment
Следует отметить, что документация предполагает, что X509_verify должен возвращать 1 в случае успеха и 0 в случае ошибки. Следовательно, -1 — это «что-то совершенно неопределенное». Другими словами, проверка не сработала. (Не провалилось и не прошло)   -  person Arafangion    schedule 07.07.2011
comment
@Arafangion, тогда не могли бы вы подсказать мне, как выполнить проверку?   -  person Balamurugan    schedule 07.07.2011


Ответы (1)


Я отвечаю на свой вопрос. перед вызовом функции X509_verify(,)
OpenSSL_add_all_digests();
эта функция устанавливает алгоритм дайджестов в локальной таблице, которая используется для внутренней проверки.

person Balamurugan    schedule 21.07.2011