cryptoktulhu 0 Report post Posted April 18, 2016 Доброго времени суток. В документации разработчика сказано, что есть возможность экспортировать с помощью VipNet CSP симметричные ключи в формате совместимом с КриптоПро CSP, использую идентификатор алгоритма CALG_PRO_EXPORT. Означает ли это, что функция CryptExportKey для VipNet CSP вернет в данном случае такую же структуру, как возвращает КриптоПро CSP (т.е. CRYPT_SIMPLEBLOB)? И соответственно потом можно этот блоб запихнуть в функцию CryptImportKey провайдера КриптоПро CSP или наоборот. Share this post Link to post Share on other sites
BRV 0 Report post Posted April 21, 2016 Добрый день! Комментарий наших разработчиков: "Означает ли это, что функция CryptExportKey для VipNet CSP вернет в данном случае такую же структуру, как возвращает КриптоПро CSP (т.е. CRYPT_SIMPLEBLOB" Да "И соответственно потом можно этот блоб запихнуть в функцию CryptImportKey провайдера КриптоПро CSP или наоборот". Да. Для этого необходимо на обоих концах иметь один и тот же ключ экспорта/импорта. Share this post Link to post Share on other sites
cryptoktulhu 0 Report post Posted May 6, 2016 Добрый день. В документации к VipNet CSP есть описание работы с функцией CryptImportKey. Возможно ли передавать в качестве блоба PRIVATEKEYBLOB такой же как используется у криптопро для импорта закрытого ключа? При попытке произвести такую операцию у меня выдается ошибка NTE_BAD_TYPE. В качестве константы magic использую (GR3410_1_MAGIC = 0x3147414D) из вашего заголовочного файла. В документации сказано, что ошибка NTE_BAD_TYPE выдается в случае, если "тип ключевого блоба не поддерживается этим криптопровайдером и, возможно, ошибочен". Если существует способ импорта закрытого ключа в провайдер, опишите формат блоба, а лучше дайте пример с распаковкой и упаковкой закрытого ключа из бинарного значения в блоб, т.к. SDK на сайте я не нашел. Share this post Link to post Share on other sites
BRV 0 Report post Posted May 11, 2016 Добрый день! Ответы на вопросы: 1) Возможно ли передавать в качестве блоба PRIVATEKEYBLOB такой же как используется у криптопро для импорта закрытого ключа? Нет. 2) Если существует способ импорта закрытого ключа в провайдер, опишите формат блоба, а лучше дайте пример с распаковкой и упаковкой закрытого ключа из бинарного значения в блоб, т.к. SDK на сайте я не нашел. Для этого существует PFX. https://msdn.microsoft.com/en-us/library/windows/desktop/aa387311(v=vs.85).aspx и аналогичные функции. Share this post Link to post Share on other sites