СертификатКриптографии.ЗначениеПодписи

Свойства · SignatureValue

Тип: ДвоичныеДанные. Содержит данные самой электронной подписи.

Полное описание, параметры и ограничения

СертификатКриптографии.ЗначениеПодписи (CryptoCertificate.SignatureValue)

СертификатКриптографии (CryptoCertificate)

ЗначениеПодписи (SignatureValue)

Доступен, начиная с версии 8.3.27.

Использование:
Только чтение.
Описание:
Тип: ДвоичныеДанные.
Содержит данные самой электронной подписи.
Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.3.27.

Методическая информация

Практические примеры

Проверить отпечаток публичного образца и отличить его от подписи

Отпечаток, открытый ключ, серийный номер и подпись сертификата — разные двоичные поля. Сравниваем SHA-1-отпечаток с вычисленным для встроенных DER-байтов.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Используйте отдельную учебную базу. Фрагмент без директив вставьте в тело серверной процедуры ВыполнитьПример() Экспорт общего модуля УчебныеЗадачи.

  2. Все исходные байты создаются самим примером в памяти. Файлы, сеть, справочники и документы не нужны.

  3. Запускайте задачи отдельно. После закрытия ЧтениеДанных/ЗаписьДанных не используйте этот экземпляр повторно.

  4. В пример встроен отдельный публичный учебный X.509-сертификат Syntax Guide Training Only. Его закрытый ключ не сохранён, сертификат не установлен в хранилище ОС и не признан доверенным.

  5. Используйте Windows-клиент или Windows-сервер 1С 8.5.1.1343. Проверка других ОС, веб-клиента и расширений криптографии этим уроком не подтверждена.

  6. Не заменяйте учебный сертификат рабочим для первого запуска. Код ничего не подписывает, не импортирует в хранилища, не обращается к OCSP/CRL и не просит пароль.

ИсходныеДанные = Base64Значение("MIIC+jCCAeKgAwIBAgIBVTANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpTeW50YXggR3VpZGUgVHJhaW5pbmcgT25seTAeFw0yMDAxMDEwMDAwMDBaFw0zNTEyMzEwMDAwMDBaMCUxIzAhBgNVBAMMGlN5bnRheCBHdWlkZSBUcmFpbmluZyBPbmx5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkraGtF6mSMHQWI0lIdDxzNjLTB0VHmtLUYEIxXFFJepQtyMGWZ9rfpbTglFp8wpsw+Wc09FQyDFuKsNz3cBcBBx7fTmJVuYzfrXjhDECNqEoKMEf+Qrim3WsVKA/Qr8IMnzq1qdnA1pLgaaKyscfCJkw9W1yoTlLV3PmGs6h6gP1/KXwe+zKN5r3Jl0IVk8RXTLAeyqN01lCuyzaeSYm/v2YS88LdaJ/nkdFqy5QjRXfm7EOCW7eCZlCBwW0EvGhUarZxWlq04lPs9qu3aC3/6gY/scE2vY1jeZV2VpV0lLQpU5gVdjVGI4YQmfgkb8jYtV5U7FQ1KQ6Poji/ort6wIDAQABozUwMzAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDAjANBgkqhkiG9w0BAQsFAAOCAQEARoo1FJJKKkaZXyFl1tlYj8K7xvryXwhb+tCaFvdXuON27YC3/YIHLUT9sCF9o76VIT8dsVMpK0Qo+VV0FIvqRcB+u6SmyJ+Y7590mzd5P1CSt8Y/4BNV2LosYxhcdVczs26PWHL5GXyBMWRxtBjNsnTeMKh4/WIMrplAr0IOJCmjIeKhv0JbQacsNqhmpe7JdgtBYC4Rrn3ajdD99HZREmyLR/iJrh6W4IGqSN0MGT0xL/mLI0GsTp9JhHDF3o8bmC1yMDlLOoAZp7M072bzfDsKFPg4ATQp/hhbtsTdS/LXrd9cLehZ7ThH6ljL8y2JbALD+6HPnT6Sv+Mg0Wq0MA==");
Сертификат = Новый СертификатКриптографии(ИсходныеДанные);
Сообщить(Base64Строка(Сертификат.Отпечаток) = "tRDNiwoaiFssHhQqwyjWVlPLdns=");
Сообщить(Сертификат.ОткрытыйКлюч.Размер() > 0);
Сообщить(Сертификат.СерийныйНомер.Размер() > 0);
Сообщить(Сертификат.ЗначениеПодписи.Размер() > 0);
Сообщить("Серийный номер, двоичное представление Base64: " + Base64Строка(Сертификат.СерийныйНомер));

Разбор по шагам

  1. По справке Отпечаток вычисляется по SHA-1. Здесь он только идентификатор сравнения конкретного публичного образца.

  2. ОткрытыйКлюч — публичные байты, не пароль и не закрытый ключ.

  3. СерийныйНомер — двоичные данные. Не сравниваем их наугад с десятичной строкой 85: представление байтов требует отдельного преобразования.

  4. ЗначениеПодписи — подпись самого сертификата его издателем, не подпись нашего JSON или PDF.

Как проверить результат

  1. Четыре сравнения Истина; три двоичных поля непустые.

  2. Ни приватный ключ, ни пароль, ни данные хранилища ОС не выводятся.

Ожидаемый результат

Проверен конкретный публичный образец и различены его двоичные поля.

На что обратить внимание

  1. SHA-1 здесь не предлагается как алгоритм новой подписи: используется заданное платформой поле отпечатка.

  2. Совпавший отпечаток не заменяет проверку доверия, назначения и срока сертификата.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.