Запрос служит для получения результата проверки ЭЦП. Запрос является блокирующим, то есть результат будет получен только после завершения процесса проверки ЭЦП, если такой был ранее запущен. Если ЭЦП действительна, будет возвращен Запит служить для отримання результату перевірки ЕП. Запит є блокуючим, тобто результат буде отримано лише після завершення процесу перевірки ЕП, якщо такий був раніше запущений. Якщо ЕП дійсний, то буде повернуто 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" : " |
Електронний |
підпис не |
дійсний.", |
...
Параметри JSON об'єкта відповіді
Параметр | Тип |
---|
даних |
---|
Опис | |
---|---|
message | String |
Опис результату проведення операції | |
failureCause | String |
Опис причини виникнення помилки, яка виникає при виконанні запиту на перевірку ЕП | |
verifyResults | Array |
Результати перевірки окремо по кожного ЕП |
Поля елемента масиву Поля элемента массива verifyResults
Поле | Тип |
---|
даних |
---|
Опис | ||
---|---|---|
status | String | "SUCCESS" - |
перевірка ЕП виконана без помилок "FAILURE" - в |
процесі перевірки ЕП виникли помилки | |
failureCause | String |
Опис причини виникнення помилки, яка виникла при безпосередній перевірці ЕП | |
signerInfo | Object |
Інформація з сертифікату власника ЕП | |
signingDateTime | String |
Час створення ЕП | |
isValid | Boolean |
false - ЭЦП недействительна
...
Для перевірки підпису використовувався час створення підпису, яке завірено електронною позначкою часу (ЕПЧ), чи у випадку відсутності ЕПЧ ЕП поточний час операційного оточення. true - ЕП дійсна false - ЕП недійсна | ||
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* | Посада |
Поля об'єкта
signerInfo.issuerCertificateInfo.value Anchor issuerCertificateInfo issuerCertificateInfo
Поле | Тип даних | Опис |
---|---|---|
issuerOrganization | Object* | Організація |
issuerDepartment | Object* | Підрозділ |
issuerFullName | Object* | Повне ім'я |
issuerCountry | Object* | Країна |
issuerRegion | Object* | Область |
issuerCity | Object* | Населений пункт |
issuerAddress | Object* | Поштова адреса |
issuerSerialNumber | Object* | Серійний номер видавця |
Поля об'єкта
signerInfo.publicKeyCertificateInfo.value Anchor publicKeyCertificateInfo publicKeyCertificateInfo
Поля об'єкта
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* | Реєстраційний номер облікової картки платників податків |
edrpou | Object* | Код ЄДРПОУ |
eddrun | Object* | Унікальний номер запису в ЕДДР |
Поля об'єкта типу
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
description | String | Опис поля на мові, яку обрано користувачем в Сервісі |
value | [Object, String, Boolean, Number, Array, null] | Значення поля |
Приклад об'єкта signerInfo
Code Block |
---|
{
"message": "Електронний підпис дійсний.",
"verifyResults": [
{
"status": "SUCCESS",
"failureCause": "",
"isValid": true,
"signingDateTime": "2020-03-05T13:25:36Z",
"contentTimestamp": {},
"signatureTimestamps": [
{
"isValid": true,
"isFailure": false,
"dateTime": "2020-03-05T13:25:39Z",
"tsaCertificateSerialNumber": "3DB73E7BF0D575B20200000001000000BB000000"
}
],
"signerInfo": {
"ownerCertificateInfo": {
"description": "Власник",
"value": {
"ownerSurname": {
"description": "Прізвище",
"value": "Боровіков"
},
"ownerGivenname": {
"description": "Імя по-батькові",
"value": "Олександр Михайлович"
},
"ownerFullName": {
"description": "Повне ім'я",
"value": "Боровіков Олександр Михайлович"
},
"ownerCountry": {
"description": "Країна",
"value": "UA"
},
"ownerRegion": {
"description": "Область",
"value": null
},
"ownerCity": {
"description": "Місто",
"value": "Київ"
},
"ownerAddress": {
"description": "Поштова адреса",
"value": null
},
"ownerSerialNumber": {
"description": "Серійний номер власника",
"value": "2423814"
},
"ownerPosition": {
"description": "Посада",
"value": null
},
"ownerOrganization": {
"description": "Організація",
"value": null
},
"ownerOrganizationUnit": {
"description": "Відділ (підрозділ)",
"value": null
}
}
},
"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": {
|
Поле | Тип данных | Описание |
---|---|---|
Получение результата проверки ЭЦП | Object* | Информация о владельце |
Получение результата проверки ЭЦП | Object* | Информация об издателе |
Получение результата проверки ЭЦП | Object* | Информация об открытом ключе |
certificateSerialNumber | Object* | Серийный номер сертификата |
notBefore | Object* | Начало действия |
notAfter | Object* | Окончание действия |
Получение результата проверки ЭЦП | Object* | Расширения |
...
Поле | Тип данных | Описание |
---|---|---|
ownerSurname | Object* | Фамилия |
ownerGivenname | Object* | Имя отчество |
ownerFullName | Object* | Полное имя |
ownerCountry | Object* | Страна |
ownerRegion | Object* | Область |
ownerCity | Object* | Город |
ownerAddress | Object* | Почтовый адрес |
ownerSerialNumber | Object* | Серийный номер владельца |
ownerPosition | Object* | Должность |
...
Поле | Тип данных | Описание |
---|---|---|
issuerOrganization | Object* | Организация |
issuerDepartment | Object* | Подразделение |
issuerFullName | Object* | Полное имя |
issuerCountry | Object* | Страна |
issuerRegion | Object* | Область |
issuerCity | Object* | Город |
issuerAddress | Object* | Почтовый адрес |
issuerSerialNumber | Object* | Серийный номер издателя |
...
...
Поле | Тип данных | Описание |
---|---|---|
Получение результата проверки ЭЦП | Object* | Персональные данные |
alternativeOwnerName | Object* | Альтернативное имя владельца |
subjectKeyId | Object* | Идентификатор ключа |
subjectOwnerId | Object* | Идентификатор владельца |
certificateProfile | Object* | Профиль сертификата |
keyUsage | Object* | Назначение сертификата |
isTemporary | Object* | Признак стартового сертификата |
isReinforced | Object* | Признак усиленного сертификата |
...
Поле | Тип данных | Описание |
---|---|---|
customId | Object* | Внешний идентификатор |
passport | Object* | Паспортные данные |
drfou | Object* | Регистрационный номер учетной карточки плательщика налогов |
edrpou | Object* | Код ЕДПРОУ |
eddrun | Object* | Уникальный номер записи в ЕГДР |
...
Поле | Тип данных | Описание |
---|---|---|
description | String | Описание поля на языке, который выбран пользователем в Сервисе |
value | [Object, String, Boolean, Number, Array, null] | Значение поля |
Пример объекта signerInfo
Code Block |
---|
"message": "Цифровая подпись действительна.", "verifyResults": [{ "status": "SUCCESS", "signerInfo": { "ownerCertificateInfo": { "description": "ВладелецЗовнішній ідентифікатор", "value": { "ownerSurname": {"description": "Фамилия", "value": "Горобець"},null "ownerGivenname": {"description": "Имя отчество", "value": "Сергій Миколайович"}, }, "ownerFullName": {"description": "Полное имя", "valuepassport": "Горобець Сергій Миколайович"},{ "ownerCountry": {"description": "Страна", "value": "UA"}, "ownerRegion": {"description": "Область",Паспортні "value": "Київська"}дані", "ownerCity": {"description": "Город", "value": "Київ"}, "ownerAddressvalue": {"description": "Почтовый адрес", "value": null}, null "ownerSerialNumber": {"description": "Серийный номер владельца", "value": "00"}, "ownerPosition": {"description": "Должность", "value": "Фізична особа"} "drfou": }{ }, "issuerCertificateInfo": { "description": "Издатель", Реєстраційний номер облікової картки платника податків", "value": { "issuerOrganization": {"description": "Организация", "value": "\"АТ \\\"ІІТ\\\"\""},2031914098" "issuerDepartment": {"description": "Подразделение", "value": "Тестовий ЦСК"}, }, "issuerFullName": {"description": "Полное имя", "value": "\"Тестовий ЦСК АТ \\\"ІІТ\\\"\""}, "issuerCountry": {"description": "Страна", "valueedrpou": "UA"},{ "issuerRegion": {"description": "Область", "value": "Харківська"}, "issuerCity": {"description": "ГородКод ЕДПРОУ", "value": "Харків"}, "issuerAddress": {"description": "Почтовый адрес", "value": null}, "issuerSerialNumber": {"description": "Серийный номер издателя", "value": "00"} }, } }, "publicKeyCertificateInfoeddrun": { "description": "Информация об открытом ключе", "valuedescription": { "Унікальний номер запису в ЄДДР", "publicKey": { "descriptionvalue": "Открытый ключ", null "value": "FF EF A8 08 00 31 E3 2A D7 D6 BB EF 9E D4 49 79 9D 88 F7 BB 22 23 8F 0C 8D 5E 9D A9 4A FA 24 9B 00" } } }, "dsAlgorism": {"description": "Алгоритм ЭЦП", "value": "ДСТУ 4145-2002, ПБ, little-endian"} }, } }, "certificateSerialNumberalternativeOwnerName": { "description": "СерийныйАльтернативне номерім'я сертификатавласника", "value": "5Bnull 63 D8 83 75 D9 20 18 04 00 00 00 25 07 00 00 77 10 00 00" }, "notBefore": {"description": "Начало действия", "value": "Fri Feb 05 00:00:00 EET 2016"}, "notAftersubjectKeyId": {"description": "Окончание действия", "value": "Mon Feb 05 00:00:00 EET 2018"}, "extensionsCertificateInfo": { "description": "РасширенияІдентифікатор ключа", "value": { "personalDatavalue": { "description": "Персональные данные", "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" "value": { }, "customIdissuerKeyId": {"description": "Внешний идентификатор", "value": null}, "passport": {"description": "ПаспортныеІдентифікатор ключа данныевидавця", "value": null}, "drfouvalue": { "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 "description": "Регистрационный номер учетной карточки плательщика налогов",37 0E 18 E5 76 D4 7F" }, "value": null "subjectOwnerId": { }, "edrpou": {"description": "КодІдентифікатор ЕДПРОУвласника", "value": null}, "eddrun": {"description": "Уникального номера записи в ЕГДР", "value": null}"00" }, }, "certificateProfile": { "alternativeOwnerName": { "description": "АльтернативноеПрофіль имя владельцасертифіката", "value": "sergey.gorobets@unity-bars.com"null }, }, "subjectKeyId": { "keyUsage": { "description": "Идентификатор ключа", "valuedescription": "Призначеня сертифіката"EF, E5 01 81 59 F6 F3 D2 FE E9 7B A7 42 77 69 93 87 20 D6 31 99 C8 59 D9 7C 28 7B D1 B5 D0 F4 0B" "value": "Електронний підпис, Невідрікаємість" }, }, "subjectOwnerId": {"description": "Идентификатор владельца", "value": "00"}, "certificateProfileisTemporary": {"description": "Профиль сертификата", "value": null}, "keyUsage": {"description": "Назначение сертификатаСтартовий", "value": "Цифровая подпись, Неотрекаемость"}, "isTemporary": {"description": "Стартовый", "value": "false"}, "isReinforced": {"description": "Усиленный", "value": "true"} }, } } },"isReinforced": { "signingDateTime": "Wed Dec 21 12:28:24 EET 2016", "isValid": true }] |
Пример кода на JavaScript + jQuery 2.2.4
Code Block | ||
---|---|---|
| ||
$.ajax({ url: "https://local.cipher.kiev.ua:9091/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/ds/verifier", type"description": "GETПосилений", dataType: "json", cache: false }).done(function (jsonResponse, textStatus, xhr) { message = jsonResponse.message;"value": "true" verifyResults = jsonResponse.verifyResults; }).fail(function (xhr) { try { var jsonResponse = JSON.parse(xhr.responseText); } message = jsonResponse.message; failureCause = jsonResponse.failureCause; } verifyResults = jsonResponse.verifyResults; } catch (e) {} message = (xhr.responseText == undefined)} ? "Ошибка при получении результата проверки ЭЦП." : xhr.responseText; } }] }) |