Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
При проверке подписи через CAPICOM не используется сертификат?
Статус: Новичок
Группы: Участники
Зарегистрирован: 27.07.2010(UTC) Сообщений: 9
|
Здравствуйте Для формирования ЭЦП и ее проверки я использую CAPICOM. Обратил внимание, что для проверки подписи не требуется Сертификат безопасности. Это штатный порядок работы или я что то не правильно делаю? Код взял из документации и адаптировал на C# (привожу его ниже). Если так и должно быть, то от куда берется public key для проверки подписи? Для формирования подписи использую следующий код: Код:
CAPICOM.Signer signer = new CAPICOM.Signer();
signer.Certificate = GetSignerCertificate("322A156F00010000060B"); // GetSignerCertificate - моя функция получения сертификата по серийному номеру
CAPICOM.SignedData signedData = new CAPICOM.SignedData();
signedData.Content = "Какое то сообщение";
string sign = signedData.Sign(signer, true, CAPICOM.CAPICOM_ENCODING_TYPE.CAPICOM_ENCODE_BASE64);
А для проверки подписи такой: Код:
CAPICOM.SignedData signedData = new CAPICOM.SignedData();
signedData.Content = "Какое то сообщение";
signedData.Verify(sign, true, CAPICOM.CAPICOM_SIGNED_DATA_VERIFY_FLAG.CAPICOM_VERIFY_SIGNATURE_ONLY); // где sign - это string с полученной подписью
P.S. При тестировании видно, что подпись действительно проверяется. Понятно, что если заменить флаг CAPICOM_VERIFY_SIGNATURE_ONLY на CAPICOM_VERIFY_SIGNATURE_AND_CERTIFICATE, то потребуется не только мой сертификат, но и все промежуточные, т.к. производится проверка на валидность сертификата.
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 27.07.2010(UTC) Сообщений: 9
|
Прочитал про PKCS7 envelope. Как понимаю, public key находится внутри подписи.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
CAPICOM при создании подписи кладет внутрь PKCS7 как минимум сертификат подписчика (а может и всю цепочку положить). Поэтому и при проверке он берет его оттуда. Убедиться в его наличии можно так - сохраните в файл с расширением p7b и просмотрите в Windows. |
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
При проверке подписи через CAPICOM не используется сертификат?
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close