Показать/Скрыть содержание

    Данные о подписываемом/расшифровываемом документе (Document)

    Данные для подписания, усовершенствования, расшифрования или зашифрования документа передаются в структуре Document в метод /documents

    Поле Тип Описание
    Content string Документ (в кодировке Base64)
    Name string Название документа
    Signature DocumentSignature Информация о подписи документа.
    Encryption DocumentEncryption Информация о параметрах шифрования документа.
    Decryption DocumentDecryption Информация о параметрах расшифрования документа.
    Hash DocumentHash Информация о параметрах хэширования документа.

    Параметры подписи (DocumentSignature)

    Поле Тип Описание
    Type SignatureType Тип подписи
    Parameters Dictionary<SignatureParams, string> Дополнительные параметры подписи
    CertificateId int Идентификатор сертификата
    PinCode string Пин-код для доступа к закрытому ключу сертификата

    Параметры зашифрования (DocumentEncryption)

    Поле Тип Описание
    Type EncryptionType Тип шифрования.
    Parameters Dictionary<string, string> Дополнительные параметры шифрования. Список доступных параметров можно найти здесь.
    Certificates List<byte[]> Список сертификатов получателей.

    Параметры расшифрования (DocumentDecryption)

    Поле Тип Описание
    Type EncryptionType Тип шифрования.
    CertificateId int Идентификатор сертификата получателя.
    PinCode string ПИН-код для доступа к закрытому ключу сертификата.

    Параметры хэширования (DocumentHash)

    Поле Тип Описание
    Parameters Dictionary<SignatureParams, string> Параметры хэширования

    В словаре необходимо передать значение ключа HashAlgorithm, которое может принимать значения:

    • GOST R 34.11-94
    • GR 34.11-2012 256
    • GR 34.11-2012 512
    • SHA-1
    • SHA-256
    • SHA-384
    • SHA-512
    • MD5

    Параметры подписи документа


    Имя Значение Описание
    SignatureType (r) CAdES Подпись формата CAdES-BES, CAdES-T, CAdES-X Long Type 1
    CMS Подпись формата CAdES-BES
    PDF Подпись PDF документов
    XMLDSig Подпись документа в формате XMLDSig (XAdES)
    GOST3410 Электронная подпись по ГОСТ Р 34.10 - 2001 или ГОСТ Р 34.10 - 2012
    CertificateId (r) Идентификатор сертификата подписи
    DocumentInfo (o) Сведения о документе. Например, имя файла
    DocumentType (o) Тип документа. Параметр используется для визуализации документа

    Типы подписи

    Имя Код Значение
    XMLDSig 0 Подпись документа в формате XMLDSig (XAdES)
    GOST3410 1 Электронная подпись по ГОСТ Р 34.10 - 2001 или ГОСТ Р 34.10 - 2012
    CAdES 2 Подпись формата CAdES-BES, CAdES-T, CAdES-X Long Type 1
    PDF 3 Подпись PDF документов
    CMS 5 Подпись формата CAdES-BES

    Обычно в параметре DocumentType указывают расширение подписываемого файла. Допустим также любой другой строковый идентификатор. С данным идентификатором должен быть связан плагин для отображения документов на сервере.

    В зависимости от выбранного формата подписи необходимо указать сопутствующие параметры. При подписи без подтверждения вторым фактором аутентификации параметры передаются в поле Parameters структуры Document.

    Внимание!

    Имена параметров, которые передаются в поле Parameters регистрозависимы.

    Подпись формата CAdES или CMS

    Имя Значение Описание
    CADESType BES (0) Подпись в формате CAdES-BES
    T (2) Подпись в формате CAdES-T
    XLT1 (1) Подпись в формате CAdES-X Long Type 1
    IsDetached (o) true/false Отделенная/присоединенная подпись.
    По умолчанию false
    TSPAddress (r) Адрес TSP службы (используется только для формата T, XLT1)
    Hash (o) true/false Подпись значения хэш-функции ГОСТ Р 34.11 - 94
    В поле Content должно быть передано значение хэш-функции от документа.
    CmsSignatureType (o) sign Подпись документа
    cosign Соподпись документа
    counterSign Заверяющая подпись документа
    ContentEncoding (o) base64 Содержимое документа закодировано в Base64
    binary Содержимое документа в двоичном представлении
    OriginalDocument (o) Содержимое исходного документа (используется при соподписи подписи).
    При создании пакетной отделенной соподписи (как самого документа, так и его хэш-значения) содержимое исходного документа (или его хэш-значение) передается через структуру DocumentContent (в поле OriginalContent), параметр OriginalDocument не используется.
    SignatureIndex (o) Индекс подписи, для которой создается заверяющая подпись
    AuthenticatedAttributes (o) Аутентифицированные атрибуты CMS подписи.
    Значение закодированный в Base64 JSON-словарь строка-строка. Ключ словаря - OID атрибута Значение ключа - закодированное в Base64 значение атрибута.
    IncludeCertChain (o) true/false Значение, показывающее, необходимо ли прикладывать цепочку сертификатов для сертификата подписи к подписанному документу
    IncludeDocumentName (o) true/false Значение, показывающее, необходимо ли включить атрибут с именем файла
    HashAlgorithm (o) int Идентификатор алгоритма хэширования. Используется только при подписи по хэш-значению (Hash=true).

    Список поддерживаемых алгоритмов хэширования

    Имя Значение Описание
    GOST R 34.11-94 32798 Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-94.
    GR 34.11-2012 256 32801 Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-2012, длина выхода 256 бит.
    GR 34.11-2012 512 32802 Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-2012, длина выхода 512 бит.
    SHA1 32772 Идентификатор алгоритма хэширования SHA-1, длина выхода 160 бит.
    SHA256 32780 Идентификатор алгоритма хэширования SHA-256, длина выхода 256 бит.
    SHA384 32781 Идентификатор алгоритма хэширования SHA-384, длина выхода 384 бит.
    SHA512 32782 Идентификатор алгоритма хэширования SHA-512, длина выхода 512 бит.

    В случае отсутствия параметра IncludeCertChain в запросе на подпись используется значение этого параметра по-умолчанию, которое может быть назначено при помощи командлета Set-SignProperties.

    Параметр IncludeDocumentName со значением true добавляет в подписанные атрибуты CMS подписи атрибут с именем файла. Идентификатор атрибута - 1.3.6.1.4.1.311.88.2.1. Значение атрибута берется из данных указанных при загрузке документа (параметр filename).

    Подпись формата PDF

    Имя Значение Описание
    PDFFormat CMS (2) Подпись PDF документов с использованием формата PKCS7
    CAdEST (0) Подпись PDF документов с использованием формата CAdES-T
    CAdES (1) Подпись PDF документов с использованием формата CAdES-X Long Type 1
    PDFReason (r) Цель подписания документа
    PDFLocation (r) Место подписания документа
    PdfSignatureAppearance (o) Строковое представление шаблона видимой (отображаемой) PDF-подписи
    PdfSignatureTemplateId (o) 1 Идентификатор шаблона видимой (отображаемой) PDF-подписи
    Простой текстовый шаблон
    2 Идентификатор шаблона видимой (отображаемой) PDF-подписи
    Шаблон с логотипом и текстом
    3 Идентификатор шаблона видимой (отображаемой) PDF-подписи
    Шаблон в виде изображения
    PDFCertificationLevel(o) Уровень сертификации подписи. Описывает, в зависимости от уровня, тип изменений, которые можно вносить в документ. Возможные значение описаны ниже

    PDFCertificationLevel

    NOT_CERTIFIED Подпись для утверждения
    CERTIFIED_NO_CHANGES_ALLOWED Сертифицирующая подпись, после сертификации изменения запрещены
    CERTIFIED_FORM_FILLING Сертифицирующая подпись, после сертифкации разрешено заполнение полей форм и использование цифровых подписей
    CERTIFIED_FORM_FILLING_AND_ANNOTATIONS Сертифицирующая подпись, после сертификации разрешены комментарии, заполнение полей форм и использование цифровых подписей

    Примечание

    При создании видимой (отображаемой) подписи необходимо указание параметров PdfSignatureTemplateId и PdfSignatureAppearance

    Подпись XML-документов

    Имя Значение Описание
    XMLDSigType (r) XMLEnveloped (0) Вложенная подпись XMLDSig
    XMLEnveloping (1) Присоединенная подпись XMLDSig
    XMLTemplate (2) XMLDSig-подпись по шаблону
    XAdESType (o) None (0) XAdES не используется, будет создана подпись с указанным значением параметра XMLDSigType
    BES (1) Подпись формата XAdES-BES
    T (2) Подпись формата XAdES-T. Если на сервисе зарегистрировано более одной службы TSP, требуется наличие параметра TSPAddress
    FTSSignature (o) true/false Подпись документов ФТС (см. соответствующий раздел в REST API Сервиса Подписи).
    Используется только при XMLDSigType=XMLTemplate
    TspAddress (o) string Адрес TSP-службы. Необходимость явно задавать адрес TSP-службы при создании подписи XAdES-T зависит от настроек Сервиса Подписи.

    Подпись формата ГОСТ Р 34.10

    Имя Значение Описание
    Hash true/false Подпись значения хэш-функции ГОСТ Р 34.11
    В поле документ должно быть передано значение хэш-функции от документа
    HashAlgorithm int Идентификатор алгоритма хэширования.
    В начало © ООО "КРИПТО-ПРО", 2000–2025