Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Не получается осуществить проверку подписи CRL. Накрапал код, но как-то странно он себя ведет...
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
как то не получается код добавить, ошибка сервера пишет при отправке, ща что-нить придумаю Вложение(я):  code.txt (2kb) загружен 35 раз(а).У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Все функции работают нормально, возвращают true, GetLastError() = 0. НО после CryptVerifyCertificateSignature, которая также возвращает true, GetLastError() говорит 0x0000007f, а это у нас "The specified procedure could not be found." Вопрос: что я делаю не так?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Вывод у программки такой: CryptQueryObject(CRL): dwError: 0 CryptQueryObject(CERT): dwError: 0 CryptVerifyCertificateSignatureEx: dwError: 127 Press any key to continue . . .
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Возможно дело во внутренней реализации CryptVerifyCertificateSignature. CryptVerifyCertificateSignatureEx себя также ведет? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Да абсолютно также, мне интересно, сам алгоритм я правильно выбрал, получая структуры CERT_PUBLIC_KEY_INFO и pCrlContext->pbCrlEncoded их не надо декодировать дополнительно, нужно прямо в таком виде использовать?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Чтобы продолжая свои эксперименты я был хотя бы уверен в исходных данных...
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Да, все правильно. Чтобы убедиться можете шестнадцатиричным редактором внутри CRL что-нибудь поменять, дату например и после этого проверить подпись. Или проверить подпись на другом ключе. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2009(UTC) Сообщений: 24  Откуда: Санкт-Петербург
|
Попробовал, выдает всё тот же код ошибки 0x0000007f "The specified procedure could not be found.". Однако, если заведомо ввести неверные данные, к примеру подсунуть неверный сертификат УЦ, то функция вполне адекватно возвращает false, а GetLastError() выдает 0x80090006 "Подпись не верна".
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close