Search the Community
Showing results for tags 'cryptoapi'.
-
Столкнулся с проблемой. param := 'Infotecs Cryptographic Service Provider'; CryptAcquireContext(hProv, @Container, @param, 2, 0); pparam := '1.2.643.2.2.9'; CryptSetProvParam(phCryptProv, PP_HASHOID {92}, pParam, 0); Падает с ошибкой что неверный параметр, то есть код 92 не подходит, хотя во все документации где он встречается имеет именно такое значение. В чем может быть проблема? Почему то дефолтный протокол хеширования по госту 32798 выбирается '1.2.643.2.2.30.1', а в документации указаны другие.
-
Здравствуйте! Сейчас разбираюсь с работой VipNet через CryptoAPI. Хочу зашифровать какие-либо данные. Примерный порядок действий подсмотрел тут: https://habrahabr.ru/sandbox/22763/ //инициализирую контекст КП CryptAcquireContext(ref hProv, keyContainerFilePath, KeyContainer.ProviderName, KeyContainer.ProviderType, Constants.SilentMode) //генерирую сессионный ключ CryptoApi.CryptGenKey(hProv, CPCSP_ENCRYPT_ID, Constants.SilentMode, ref hSessionKey) //пытаюсь зашифровать данные CryptoApi.CryptEncrypt(hSessionKey, IntPtr.Zero, true, 0, byteData, ref dataLen, byteData.Length) При вызове CryptEncrypt получаю исключение: System.ComponentModel.Win32Exception : Плохой ключ Что я делаю не так? Примеров с vipnet больше не нашел. Документацию читал, там только описание функций. Подскажите, как правильно?