.. _Integration_CryptoApi_ValidatingSignature: Проверка подписи ################ | Запрос: ``POST /v3/validate`` | HTTP-заголовки: .. code-block:: Authorization: Bearer access_token Content-Type: application/json Accept: application/json Тело запроса: .. code-block:: JSON { "Content": "base64", // данные, для которых была сформирована подпись, в виде массива байт в Base64 "Signature": "base64", // сформированная подпись в виде массива байт в Base64 "DefaultOnFail": false, // признак того, что нужно вернуть пустое тело ответа, если подпись не пройдет проверку "VerifySignatureOnly": false // признак того, что нужно проверять только соответствие данных и подписи, без проверки цепочки сертификатов } Описание запроса **************** Запрос позволяет: * проверить сооветствие данных и сформированой ЭП; * проверить валидность сертификата и цепочки сертификатов; * получить дополнительные атрибуты CAdES-подписи, если передана подпись одного из поддерживаемых CAdES-типов. Данные передаются в поле ``Content``. Подпись передается в поле ``Signature``. И подпись, и данные передаются в виде массива байт в Base64. | Поле ``DefaultOnFail`` управляет поведением запроса в случае, если подпись не прошла проверку. | Если поле установлено в ``true`` и подпись не прошла проверку, то возвращается :ref:`HTTP-статус 204 (No Content) ` с пустым телом ответа. | Если поле установлено в ``false`` и подпись не прошла проверку, то возвращается :ref:`HTTP-статус 400 (Bad Request) ` с сообщением об ошибке. | Поле ``VerifySignatureOnly`` управляет полнотой проверки подписи. | Если поле установлено в ``true``, то проверяется только соответствие данных и подписи. Валидность сертификата и цепочки сертификатов не проверяется. | Если поле установлено в ``false``, то проверяется как соответствие данных и подписи, так и валидность сертификата и цепочки сертификатов. Ответ на запрос *************** В случае успешного выполнения возвращается JSON вида: .. code-block:: JSON { "Certificate": { // данные сертификата, с помощью которого была сделана подпись "Thumbprint": "string", // отпечаток сертификата "ValidFrom": "YYYY-MM-DDThh:mm:ss.fffZ", // дата и время, с которого действует сертификат "ValidTo": "YYYY-MM-DDThh:mm:ss.fffZ", // дата и время, по которое действует сертификат "RawData": "base64", // данные сертификата в виде массива байт в Base64 "PublicKeyRawData": "base64" // публичный ключ сертификата в виде массива байт в Base64 "SerialNumber": "string", // серийный номер сертификата "Surname": "string", // фамилия владельца сертификата "FirstName": "string", // имя владельца сертификата "MiddleName": "string", // отчество владельца сертификата "CommonName": "string", // общее имя владельца сертификата "Position": "string", // должность владельца сертификата "OrganizationName": "string", // наименование организации, в которой работает владелец сертификата "OrganizationInn": "string", // ИНН организации, в которой работает владелец сертификата "Inn": "string", // ИНН физического лица или ИП, которые владеют сертификатом "Snils": "string", // СНИЛС владельца сертификата "Email": "string", // e-mail владельца сертификата "Department": "string", // подразделение, в котором работает владелец сертификата "City": "string", // город (населенный пункт) организации, в которой работает владелец сертификата, или владельца сертификата "Street": "string", // улица и номер дома организации, в которой работает владелец сертификата, или владельца сертификата "Ogrn": "string", // ОГРН организации, в которой работает владелец сертификата "OrgnIp": "string", // ОГРНИП, в которой работает владелец сертификата "Region": "string", // регион организации, в которой работает владелец сертификата, или владельца сертификата "Locale": "string", // язык сертификата "RnsFss": "string", // регистрационный номер страхователя ФСС "IssuerSimpleName": "string", // простое имя издателя сертификата "CertificateType": 0 // тип сертификата }, "Attributes": { // дополнительные атрибуты CAdES-подписи "SigningTime": "YYYY-MM-DDThh:mm:ss.fffZ", // дата и время, когда подпись была сформирована "SignatureTimeStampTime": "YYYY-MM-DDThh:mm:ss.fffZ", // дата и время, когда подпись была заверена TSP-сервером "CadesType": "string" // распознанный тип CAdES-подписи } } В поле ``Certificate`` возвращаются данные сертификата, с помощью которого была сделана подпись. В поле ``Attributes`` возвращаются дополнительные атрибуты CAdES-подписи, если передана подпись одного из поддерживаемых CAdES-типов: * ``SigningTime`` - дата и время, когда подпись была сформирована. Атрибут присутствует для CAdES BES и выше. * ``SignatureTimeStampTime`` - дата и время, когда подпись была заверена TSP-сервером. Атрибут присутствует для CAdES-T и выше. * ``CadesType`` - распознанный тип CAdES-подписи. Возможные значения: * ``CAdES BES``; * ``CAdES-T``; * ``CAdES-X Long Type 1``.