Статус: Новичок
Группы: Участники
Зарегистрирован: 16.10.2009(UTC) Сообщений: 2 Откуда: Москва
|
Здравствуйте! Изучал вашу тестовую утилиту csptest.exe на предмет шифрования и подписи (низкоуровневые команды lowsign и lowcrypt) Дешифрую и проверяю подпись так: Код:
csptest.exe -lowenc -decrypt -in %1.sign.p7b.enc -my "Мой субъект с ключем" -out %1.sign.p7b
csptest.exe -lowsign -verify -in %1.sign.p7b -out %1 -my "Субъект отправителя"
Обнаружил, что не проходит верификация с выдачей ошибки об отсутствии закрытого ключа пользователя. Но у меня и не может его быть, у меня сертификат без закрытого ключа присылающего. Покопался в исходниках и при верификации в исходниках просто отключил вызов CryptAcquireProvider в signlo.c. Все стало ОК Скажите, это просто ошибка в исходниках или для чего при проверке подписи нужен вызов CryptAcquireCertificatePrivateKey?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,732 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
В низкоуровневых функциях проверки инициализация провайдера происходит внутри них самих. Тот хэндл hCryptProv, который получается в результате CryptAcquireCertificatePrivateKey, далее нигде не используется - неточность в исходниках видимо. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 16.10.2009(UTC) Сообщений: 2 Откуда: Москва
|
Kirill Sobolev написал:В низкоуровневых функциях проверки инициализация провайдера происходит внутри них самих. Тот хэндл hCryptProv, который получается в результате CryptAcquireCertificatePrivateKey, далее нигде не используется - неточность в исходниках видимо. Спасибо. Сейчас посмотрел описание CryptMsgOpenToDecode, в MSDN написано, что hCryptProv рекомендуют ставить в 0 (Unless there is a strong reason for passing in a specific cryptographic provider in hCryptProv, set this parameter to NULL) Перекомпилировав и создание подписи без предварительного вызова CryptAcquireCertificatePrivateKey, подписать тоже получилось. Получается, что в примере просто проверяется заранее, имеется ли закрытый ключ для сертификата или нет
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close