| ||||
| ||||
не удаеться даже получить длинну ключа, хотя он создаеться! if (!::CryptAcquireContext(&o->hCryptProv, 0, "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider", 75, 0)) { int ers = ::GetLastError(); DWORD err = ::GetLastError(); if (!::CryptAcquireContext(&o->hCryptProv, 0, "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider", 75, CRYPT_NEWKEYSET)) { int erd = ::GetLastError(); DWORD err = ::GetLastError(); throw CCC_CertificateError(CCC_CertificateError::ContextError, err, L"Error CryptAcquireContext", L"CCC_PrivateKeyCreator::CCC_PrivateKeyCreator" ); } } // // AT_SIGNATURE - ROOT AT_KEYEXCHANGE - client MyCryptoHandle =(int)&hCryptProv; // if (!::CryptGenKey(o->hCryptProv, AT_SIGNATURE, cryptlen << 16 | CRYPT_EXPORTABLE, &o->Keys)) { ::CryptReleaseContext(o->hCryptProv, 0); DWORD err = ::GetLastError(); throw CCC_CertificateError(CCC_CertificateError::ContextError, err, L"Error CryptGenKey", L"CCC_PrivateKeyCreator::CCC_PrivateKeyCreator" ); } PrivateKeySize = 0; if (!::CryptExportKey(o->Keys, 0, PRIVATEKEYBLOB, 0, 0, &PrivateKeySize)) { DWORD err = ::GetLastError(); throw CCC_CertificateError(CCC_CertificateError::ContextError, err, L"Error CryptExportKey", L"CCC_PrivateKeyCreator::CCC_PrivateKeyCreator" ); } PrivateKey = (BYTE *) _alloca(PrivateKeySize); if (PrivateKey == NULL) { DWORD err = ::GetLastError(); throw CCC_CertificateError(CCC_CertificateError::MemoryFault, err, L"Error _alloca PrivateKey", L"CCC_PrivateKeyCreator::CCC_PrivateKeyCreator" ); } if (!::CryptExportKey(o->Keys, 0, PRIVATEKEYBLOB, 0, PrivateKey, &PrivateKeySize)) { DWORD err = ::GetLastError(); throw CCC_CertificateError(CCC_CertificateError::ContextError, err, L"Error CryptExportKey", L"CCC_PrivateKeyCreator::CCC_PrivateKeyCreator" ); } | ||||
Ответы: | ||||
| ||||
Естественно. Воспользуйтесь поиском: http://www.cryptopro.ru/cryptopro/forum/view.asp?q=1334 "Экспорт секретного ключа, как и сессионного ключа, возможен только на ключе парной связи (Диффи-Хеллмана)." | ||||
| ||||
кирил спасибо за ответ, толька я чесно не понял, какие там заголовочные файлы подключать.....? | ||||