Проблема такова - открываю с помощью PEM_read_PrivateKey (OpenSSL API) ключ RSA, зашифрованный. Получаю сообщение об ошибке с кодом 114, "Unsupported Encryption". При этом echo "GoodPassword" | openssl rsa -in KEY -noout -check -passin stdin читает ключ нормально. Я для теста вместо задания callback-а в нуль поставил там функцию для проверки - оказывается, она просто ни разу не вызывается. Какова может быть причина? Ниже полный листинг...
#include <stdio.h> #include <openssl/pem.h> #include <openssl/err.h>
int main( void) { ERR_load_crypto_strings(void)
FILE *kfile = fopen("KEY", "rb"); EVP_PKEY *key = PEM_read_PrivateKey(kfile, NULL, NULL, "GoodPassword"); if(key == NULL) { ERR_print_errors(stderr); } }