Как извлечь открытый ключ из закрытого ключа, используя openssl в C - PullRequest
0 голосов
/ 19 сентября 2018

Я знаю в командной строке, что, учитывая файл pem с закрытым ключом, вы можете извлечь из него открытый ключ.

Хотите знать, как подобная функция может быть достигнута с помощью библиотеки C openssl?

1 Ответ

0 голосов
/ 19 сентября 2018

Сначала прочитайте ключ:

EVP_PKEY *key;
FILE *fpkey;
OpenSSL_add_all_algorithms();
key = EVP_PKEY_new();
fpkey = fopen ("key.pem", "r");
PEM_read_PrivateKey(fpkey, &key, NULL, NULL);
fclose(fpkey);

Теперь, когда у вас есть структура EVP_PKEY, вы можете сохранить открытый ключ:

FILE* fppubkey = fopen("pubkey.pem", "wb");
PEM_write_PUBKEY(fppubkey, key);
fclose(fppubkey);

Обязательно добавьте проверку ошибок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...