В Win 2003 32 бит, я успешно экспортирую PRIVATEKEYBLOB
с вызовом CryptExportKey
(dwFlags = 0). Затем я пытаюсь импортировать ключевой блок на 64-битный Win Server 2008 с 64-разрядным исполняемым файлом, вызов CryptImportKey
с ошибкой NTE_BAD_DATA
.CryptoAPI - экспорт/импорт ключей между различными версиями Windows
В обоих случаях поставщик криптографических инициализируется вызовом
CryptAcquireContext (& hProv, szContainer, NULL, PROV_RSA_AES, CRYPT_MACHINE_KEYSET)
Пароли для экспорта/матч импорта , Открытый ключ основан на CryptDeriveKey
хэша md5 паролей, которые идентичны в их текстовой репрезентации. Я не уверен, что открытые ключи оказались равными в двух системах.
Являются ли различные типы систем (Win 2003 32 бит против Win 2008 64 бит) ожидаемой причиной отказа, и есть ли способ заставить это работать?