Запрос служит для получения результата проверки ЭЦП. Запрос является блокирующим, то есть результат будет получен только после завершения процесса проверки ЭЦП, если такой был ранее запущен. Если ЭЦП действительна, будет возвращен Запит служить для отримання результату перевірки ЕП. Запит є блокуючим, тобто результат буде отримано лише після завершення процесу перевірки ЕП, якщо такий був раніше запущений. Якщо ЕП дійсний, то буде повернуто HTTP статус код 200. Если в ЭЦП не действительна или в процессе ее непосредственной проверки возникли ошибки, будет возвращен HTTP Якщо ЕП недійсний чи в процессі безпосередньої перевірки виникли помилки, буде повернуто HTTP статус код 406. При возникновении других типов ошибок, возвращаются HTTP статус коды 503 или виникненні інших типів помилок, повертається HTTP статус код 503 чи 400.
URL-
...
адреса запиту
https://local.cipher.kiev.ua:9091/api/v1/ticket/{uuid}/ds/verifier
Метод
GET
...
Параметри запиту
uuid | String |
Ідентифікатор сесії |
...
Налаштовувані заголовки
...
запиту
ОтсутствуетВідсутні
...
Відповідь
Код |
---|
відповіді | Content-type |
---|
Допустимі параметри | Приклад вмісту | ||
---|---|---|---|
200 | application/json | message verifyResults | { |
Електронний |
підпис |
дійсний." |
}
, | |||
503 | application/json | message | { |
"message" : " |
Сервіс |
виконання |
криптографічних |
операцій не |
запущено." } | |||
400 | application/json | message | { |
"message" : " |
Сесія |
відсутня." } | |||
406 | application/json | message verifyResults failureCause | { |
"message" : " |
Електронний |
підпис не |
дійсний.", |
Array |
...
Параметри JSON об'єкта відповіді
Параметр | Тип |
---|
даних |
---|
Опис | |
---|---|
message | String |
Опис результату проведення операції | |
failureCause | String |
Опис причини виникнення помилки, яка виникає при виконанні запиту на перевірку ЕП | |
verifyResults | Array |
Результати перевірки окремо по кожного ЕП |
Поля елемента масиву Поля элемента массива verifyResults
Поле | Тип |
---|
даних |
---|
Опис | ||
---|---|---|
status | String | "SUCCESS" - |
перевірка ЕП виконана без помилок "FAILURE" - в |
процесі перевірки ЕП виникли помилки | |
failureCause | String |
Опис причини виникнення помилки, яка виникла при безпосередній перевірці ЕП | |
signerInfo | Object |
Інформація з сертифікату власника ЕП | |
signingDateTime | String |
Час створення ЕП | |
isValid | Boolean |
Для перевірки підпису використовувався час створення підпису, яке завірено електронною позначкою часу (ЕПЧ), чи у випадку відсутності ЕПЧ ЕП поточний час операційного оточення. true - ЕП дійсна false - |
Поля объекта signerInfo
Поле | Тип данных | Описание |
---|---|---|
Получение результата проверки ЭЦП | Object* | Информация о владельце |
Получение результата проверки ЭЦП | Object* | Информация об издателе |
Получение результата проверки ЭЦП | Object* | Информация об открытом ключе |
certificateSerialNumber | Object* | Серийный номер сертификата |
notBefore | Object* | Начало действия |
notAfter | Object* | Окончание действия |
Получение результата проверки ЭЦП | Object* | Расширения |
...
Поле | Тип данных | Описание |
---|---|---|
description | String | Описание поля на языке, который выбран пользователем в Сервисе |
value | [Object, String, Boolean, Number, Array] | Значение поля |
...
ЕП недійсна | ||
contentTimestamp | Object | Результат перевірки ЕПЧ даних, для яких було створено ЕП |
signatureTimestamps | Array | Результат перевірки ЕПЧ ЕП, для яких було створено ЕП |
isUntrustedValid | Boolean | Для перевірки підпису використовується час створення ЕП, яке не завірено ЕПЧ |
Поля об'єкта contentTimestamp, елемента масиву signatureTimestamps
Поле | Тип даних | Опис |
---|---|---|
isValid | Boolean | true - ЕПЧ дійсна false - ЕПЧ недійсна |
isFailure | Boolean | true - при перевірці ЕПЧ виникла помилка false - при перевірці ЕПЧ помилок не виникало |
dateTime | DateTime | Значення дати та часу в форматі ISO 8601, яке завірено ЕПЧ |
tsaCertificateSerialNumber | Object* | Серійний номер сертифікату TSP-сервера |
Поля об'єкта
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
ownerCertificateInfo | Object* | Інформація про власника |
issuerCertificateInfo | Object* | Інформація про видавця |
publicKeyCertificateInfo | Object* | Інформація про відкритий ключ |
certificateSerialNumber | Object* | Серійний номер сертифікату |
notBefore | Object* | Початок дії |
notAfter | Object* | Завершення дії |
extensionsCertificateInfo | Object* | Розширення |
Поля об'єкта
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
ownerSurname | Object* | Прізвище |
ownerGivenname | Object* | Ім'я, по батькові |
ownerFullName | Object* | Повне ім'я |
ownerCountry | Object* | Країна |
ownerRegion | Object* | Область |
ownerCity | Object* | Населений пункт |
ownerAddress | Object* | Поштова адреса |
ownerSerialNumber | Object* | Серійний номер власника |
ownerPosition | Object* | Посада |
Поля об'єкта Anchor issuerCertificateInfo issuerCertificateInfo
...
Поле | Тип данных | Описание |
---|---|---|
ownerSurname | Object* | Фамилия |
ownerGivenname | Object* | Имя отчество |
ownerFullName | Object* | Полное имя |
ownerCountry | Object* | Страна |
ownerRegion | Object* | Область |
ownerCity | Object* | Город |
ownerAddress | Object* | Почтовый адрес |
ownerSerialNumber | Object* | Серийный номер владельца |
ownerPosition | Object* | Должность |
Поля объекта Anchor issuerCertificateInfo issuerCertificateInfo signerInfo.issuerCertificateInfo.value
Поле | Тип |
---|
даних |
---|
Опис | |
---|---|
issuerOrganization | Object* |
Організація | |
issuerDepartment | Object* |
Підрозділ | |
issuerFullName | Object* |
Повне ім'я | |
issuerCountry | Object* |
Країна | ||
issuerRegion | Object* | Область |
issuerCity | Object* |
Населений пункт | |
issuerAddress | Object* |
Поштова адреса | |
issuerSerialNumber | Object* |
Серійний номер |
видавця |
Поля объектаоб'єкта
signerInfo.publicKeyCertificateInfo.value Anchor publicKeyCertificateInfo publicKeyCertificateInfo
Поле | Тип |
---|
даних |
---|
Опис | |
---|---|
publicKey | Object* |
Відкритий ключ | ||
dsAlgorism | Object* | Алгоритм |
ЕП |
Поля объектаоб'єкта
signerInfo.extensionsCertificateInfo.value Anchor extensionsCertificateInfo extensionsCertificateInfo
Поле | Тип |
---|
данх |
---|
Опис | |
---|---|
personalData | Object* |
Персональні дані | |
alternativeOwnerName | Object* |
Альтернативне ім'я власника | |
subjectKeyId | Object* |
Ідентифікатор ключа | ||
issuerKeyId | Object* | Ідентифікатор ключа власника |
subjectOwnerId | Object* |
Ідентифікатор власника | |
certificateProfile | Object* |
Профіль сертифікату | |
keyUsage | Object* |
Призначення сертифікату | |
isTemporary | Object* |
Ознака стартового |
сертифікату | |
isReinforced | Object* |
Ознака посиленого сертифікату |
Поля объектаоб'єкта
signerInfo.extensionsCertificateInfo.value.personalData.value Anchor personalData personalData
Поле | Тип |
---|
даних |
---|
Опис | |
---|---|
customId | Object* |
Зовнішній ідентифікатор | |
passport | Object* |
Паспортні дані | |
drfou | Object* |
Пример объекта signerInfo
Реєстраційний номер облікової картки платників податків | ||
edrpou | Object* | Код ЄДРПОУ |
eddrun | Object* | Унікальний номер запису в ЕДДР |
Поля об'єкта типу
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
description | String | Опис поля на мові, яку обрано користувачем в Сервісі |
value | [Object, String, Boolean, Number, Array, null] | Значення поля |
Приклад об'єкта signerInfo
Code Block |
---|
{
"message": "Електронний підпис дійсний. |
Code Block |
"message": "Цифровая подпись недействительна.", "verifyResults": [{ "status": "SUCCESS", "signerInfoverifyResults": {[ "ownerCertificateInfo": {{ "status": "SUCCESS", "descriptionfailureCause": "Владелец", "valueisValid": {true, "ownerSurnamesigningDateTime": {"description": "Фамилия", "value": "Стокипный""2020-03-05T13:25:36Z", "contentTimestamp": {}, "signatureTimestamps": [ "ownerGivenname": {"description": "Имя отчество", "value": "Александр Леонидович"}, { "ownerFullName": {"description": "Полное имя", "valueisValid": "Стокипный Александр Леонидович"}, true, "ownerCountry": {"descriptionisFailure": "Страна"false, "value": "ua"}, "ownerRegiondateTime": {"description": "Область", "value": "Харьковская"}"2020-03-05T13:25:39Z", "ownerCity": {"description": "Город", "value "tsaCertificateSerialNumber": "Харьков3DB73E7BF0D575B20200000001000000BB000000"}, "ownerAddress": {"description": "Почтовый адрес", "value": "вул.Харьковская 17"},} ], "signerInfo": { "ownerSerialNumberownerCertificateInfo": { "description": "Серийный номер владельцаВласник", "value": { "E7 49 6E 9F 33 07 6E 5B" },"ownerSurname": { "ownerPosition": {"description": "Должность", "value "description": "РазработчикПрізвище"}, } }, "issuerCertificateInfovalue": { "Боровіков" "description": "Издатель" }, "value "ownerGivenname": { "issuerOrganizationdescription": {"description": "Организация", "value": "\"ТОВ \\\"Сайфер БІС\\\"\""}, Імя по-батькові", "issuerDepartment": {"description": "Подразделение", "value": "ЦентрОлександр сертифікації ключівМихайлович"}, "issuerFullName": {"description": "Полное имя", "value": "\"ЦСК ТОВ \\\"Сайфер БІС\\\"\""}, "issuerCountry": {"description": "Страна", "value": "ua"}, "ownerFullName": { "issuerRegion": {"description": "Область", "value": null}, "issuerCity"description": {"description": "Город", "value": "Київ"}, Повне ім'я", "issuerAddress": {"description": "Почтовый адрес", "value": null}, "Боровіков Олександр Михайлович" "issuerSerialNumber": {"description": "Серийный номер издателя", "value": "E7 49 6E 9F 33 07 6E 5B"} }, "ownerCountry": }{ }, "publicKeyCertificateInfo": { "description": "Информация об открытом ключеКраїна", "value": { "publicKeyvalue": {"UA" "description": "Открытый ключ" }, "valueownerRegion": "01 BE 1F B1 6B 6E 82 9C 05 AF 2F EC 04 87 E2 3F 0E 35 A3 3C 3D D3 B5 D2 CF 07 CC 84 6F 2F AD 7C 29" { "description": "Область", }, "dsAlgorism": {"description": "Алгоритм ЭЦП", "value": "ДСТУ 4145-2002, ПБ, little-endian"} null } }, "certificateSerialNumber "ownerCity": { "description": "Серийный номер сертификата", "valuedescription": "8F 94 8F B8 95 EE 29 95" Місто", }, "notBeforevalue": {"descriptionКиїв": "Начало действия", "value": "Tue Jan 05 00:00:00 EET 2016"}, "notAfter": {"description": "Окончание действия", "value": "Wed Jan 04 00:00:00 EET 2017"}, "extensionsCertificateInfo": { "descriptionownerAddress": "Расширения",{ "value": { "personalDatadescription": { "Поштова адреса", "description "value": null "Персональные данные", "value": { }, "customIdownerSerialNumber": {"description": "Внешний идентификатор", "value": "014"}, "passport": {"description": "ПаспортныеСерійний данные", "value": "СФ000014"}номер власника", "drfou": {"description": "Индивидуальный налоговый номер", "value": "00000000142423814"} } }, }, "alternativeOwnerNameownerPosition": {"description": "Альтернативное имя владельца", "value": "test@cipher.com"}, "subjectKeyId": { "description": "Идентификатор ключаПосада", "value": "DE 69 69 50 3F 86 37 68 C8 58 13 94 DA F8 DF 1A B7 84 B8 12 55 2B AD A6 15 8E 00 F4 3A 31 19 A1" "value": null }, }, "ownerOrganization": { "subjectOwnerId": { "description": "Идентификатор владельцаОрганізація", "value": "E7 49 6E 9F 33 07 6E 5B"}, "certificateProfile": {"description": "Профиль сертификата", "value": "3"},null "keyUsage": {"description": "Назначение сертификата", "value": "Цифровая подпись, Неотрекаемость" }, "isTemporary": {"description": "Стартовый", "value": "false"}, "ownerOrganizationUnit": { "isReinforced": {"description": "Усиленный", "value": "false"} "description": "Відділ (підрозділ)", } } }, "signingDateTime": "Tue Nov 29 12:30:38 EET 2016", "isValidvalue": false }] |
Пример кода на JavaScript + jQuery 2.2.4
Code Block | ||
---|---|---|
| ||
$.ajax({ null url: "https://local.cipher.kiev.ua:9091/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/ts/verifier", type: "GET", dataType: "json", cache: false }).done(function (jsonResponse, textStatus, xhr) { message = jsonResponse.message; }).fail(function (xhr) { try { } } }, "issuerCertificateInfo": { "description": "Видавник", "value": { "issuerOrganization": { "description": "Організація", "value": "Інформаційно-довідковий департамент ДФС" }, "issuerDepartment": { "description": "Підрозділ", "value": "Управління (центр) сертифікації ключів ІДД ДФС" }, "issuerFullName": { "description": "Повне ім'я", "value": "Акредитований центр сертифікації ключів ІДД ДФС" }, "issuerCountry": { "description": "Країна", "value": "UA" }, "issuerRegion": { "description": "Область", "value": null }, "issuerCity": { "description": "Місто", "value": "Київ" }, "issuerAddress": { "description": "Поштова адреса", "value": null }, "issuerSerialNumber": { "description": "Серійний номер видавця", "value": "UA-39384476-2018" } } }, "publicKeyCertificateInfo": { "description": "Інформація про відкритий ключ", "value": { "publicKey": { "description": "Відкритий ключ", "value": "C4 39 B0 5D 95 8A 6D 95 0E 4D F4 71 2A 62 59 6B A1 55 C9 6A 91 99 21 01 8E D3 7B B4 72 11 E6 F9 00" }, "dsAlgorism": { "description": "Алгоритм ЕП", "value": "ДСТУ 4145-2002, ПБ, little-endian" } } }, "certificateSerialNumber": { "description": "Серійний номер сертифікату", "value": "20B4E4ED0D30998C0400000006FC24004DAD7500" }, "notBefore": { "description": "Початок дії", "value": "2019-06-10T21:00:00Z" }, "notAfter": { "description": "Закінчення дії", "value": "2021-06-10T21:00:00Z" }, "extensionsCertificateInfo": { "description": "Розширення", "value": { "personalData": { "description": "Персональні дані", "value": { "customId": { "description": "Зовнішній ідентифікатор", "value": null }, "passport": { "description": "Паспортні дані", "value": null }, "drfou": { "description": "Реєстраційний номер облікової картки платника податків", "value": "2031914098" }, "edrpou": { "description": "Код ЕДПРОУ", "value": null }, "eddrun": { "description": "Унікальний номер запису в ЄДДР", "value": null } } }, "alternativeOwnerName": { "description": "Альтернативне ім'я власника", "value": null }, "subjectKeyId": { "description": "Ідентифікатор ключа", "value": "9E 03 BA B2 24 4C 3D 02 09 41 08 8E 7E A3 E8 81 CD C6 90 58 B5 9B 38 1F 90 98 DC 5D F3 EF 61 8E" }, "issuerKeyId": { "description": "Ідентифікатор ключа видавця", "value": "20 B4 E4 ED 0D 30 99 8C BE 30 6A 07 7D 69 9A 32 73 23 8A E9 09 08 71 D6 16 37 0E 18 E5 76 D4 7F" }, "subjectOwnerId": { "description": "Ідентифікатор власника", "value": "00" }, "certificateProfile": { "description": "Профіль сертифіката", "value": null }, "keyUsage": { "description": "Призначеня сертифіката", "value": "Електронний підпис, Невідрікаємість" }, "isTemporary": { "description": "Стартовий", "value": "false" }, "isReinforced": { "description": "Посилений", "value": "true" } var jsonResponse = JSON.parse(xhr.responseText); message = jsonResponse.message; } failureCause = jsonResponse.failureCause; } catch (e) {} message = (xhr.responseText == undefined)} ? "Ошибка при получении результата проверки МВ." : xhr.responseText; } }] }) |