Как проверить подпись ECDSA (на p-256), используя открытый ключ из сертификата

У меня есть сертификат и подпись ECDSA (на p-256). Теперь я хочу проверить эту подпись, используя предоставленный сертификат. Я использую c ++ (на Windows). Управляемый код (.NET) не может быть использован. Я обнаружил, что CryptoAPI не поддерживает ECDSA, поэтому я должен использовать CryptoAPI NG (CNG). Однако я не могу найти, как импортировать открытый ключ из сертификата в КПГ.

Можете ли вы помочь с моей проблемой?
Спасибо

0

Решение

Проблема была решена. Я использую OpenSSL для этой цели.

0

Другие решения

« CryptImportPublicKeyInfoEx2 функция импортирует открытый ключ в асимметричный провайдер CNG … »

Мой C может быть немного выключен, но я считаю, что это что-то вроде

BCRYPT_KEY_HANDLE hKey;
BOOL imported = CryptImportPublicKeyInfoEx2(
X509_ASN_ENCODING,
&(pCertContext->pCertInfo->SubjectPublicKeyInfo),
0,
NULL,
&hKey);

if (!imported)
goto :err;
0

По вопросам рекламы [email protected]