Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Запрос служит для получения информации о ключах, которые содержит ключевой контейнер. Ключевой контейнер может содержать ключи ЭП, ключи согласования ключей или оба типа ключей одновременно.
Запрос также инициирует, в случае необходимости, диалоговую процедуру смены стартовых или действующих ключейЗапит використовується для отримання інформації про ключі, які містять ключовий контейнер. Ключовий контейнер може містити ключі електронного підпису, ключі шифрування чи обидва типи ключів одночасно. Запит також ініціює, у випадку необхідності, діалогову процедуру зміни стартових чи діючих ключів.

Note
titleДилоговая Діалогова процедура смены ключей

Для выполнения диалоговой процедуры смены ключей путь к ключевому контейнеру должен быть загружен с помощью специального запроса

...

зміни ключів

Для виконання діалогової процедури зміни ключів шлях до ключового контейнеру має бути завантажено за допомогою спеціального запиту

URL-адреса запиту

https://local.cipher.kiev.ua:9090/api/v1/ticket/{uuid}/keyStore/verifier

Метод

PUT

...

Параметри запиту
uuidStringІдентифікатор сесії
Налаштовувані заголовки запиту
Content-Typeapplication/json

...

Параметри JSON

...

обʼєкта запиту
ИмяІмʼя
Тип
ОписаниеОпис
Допустимые значенияДопустимі значення

keyStorePassword

StringПароль к ключевому до ключового контейнеру сесиисесіїСтрока, которая представляет собой пароль для доступа к ключевому контейнеру сессии. Ключевой контейнер сессии должен быть ранее загружен с помощью специального запроса.
Ответ
Рядок, який представляє собою пароль для доступу до ключового контейнеру сесії. Ключовий контейнер сесії має бути раніше завантажений за допомогою спеціального запиту.
Відповідь
Код відповідіКод ответаContent-typeДопустимые параметрыДопустимі параметриПриклад вмістуПример содержимого
200application/jsonkeyAgreement
signature

503application/jsonmessage
{
       "message" : "СервисСервіс хранениязберігання данныхданих не запущензапущено."
}
500application/jsonmessage


{
       "message" : "Помилка завантаження ключового контейнера: Невірний пароль до ключового контейнера або порушено його цілісність."
}

...

Параметри JSON

...

обʼєкта відповіді
ПараметрТип данныхданихОписаниеОпис
messageStringОписание результата проведения операцииОпис результату проведення операції
 signatureПолучение данных о ключевом контейнереKeyUsageInfoІнформація про можливість використання ключа ЕПИнформация о возможности использовании ключа ЭП
 keyAgreementПолучение данных о ключевом контейнереИнформация о возможности использовании ключа согласования ключейKeyUsageInfoІнформація про можливість використання ключа шифрування

Поля обʼєкта Поля объекта

Anchor
KeyUsageInfo
KeyUsageInfo
KeyUsageInfo

ПолеТип данныхданихОписаниеОпис
canBeUsedBooleanКлюч присутствует в ключевом контейнере и нет ограничений на его использованиеприсутній в ключовому контейнері та немає обмежень на його застосування
messageStringЕсли Якщо canBeUsed=false, то message содержит описание причины, по которой ключ не может быть использован.
Если містить опис причини, за якою ключ не може бути використаний.
Якщо canBeUsed=false, а message не содержит значениямістить значення, то указанній ключ ключа отсутствует в ключевом контейнеревказаний ключ відсутній у ключовому контейнері.
Если Якщо canBeUsed=true, то message может содержать предупреждение, например, о том, что до окончания срока действия ключей осталось менее 14 дней, или о наличии в контейнере ранее сформированного запроса на смену ключей и т.п.
certificateInfoПолучение данных о ключевом контейнереДанные из сертификата ключа
може містити попередження, наприклад, про те, що до завершення строку дії ключів залишилося менше 14 днів, чи за наявності в контейнері раніше сформованого запиту на зміну ключів та ін.
certificateInfoCertificateInfoДані із сертифікату ключа

Поля обʼєкта Поля объекта

Anchor
CertificateInfo
CertificateInfo
CertificateInfo

ПолеТип данныхданихОписаниеОпис
ownerCertificateInfoПолучение данных о ключевом контейнереObject*Інформація про власника
issuerCertificateInfoИнформация о владельцеПолучение данных о ключевом контейнереObject*Інформація про видавця
publicKeyCertificateInfoИнформация об издателеПолучение данных о ключевом контейнереObject*Информация об открытом ключеІнформація про відкритий ключ
certificateSerialNumberObject*Серийный Серійний номер сертификатасертифікату
notBeforeObject*Начало действияПочаток дії
notAfterObject*Окончание действияЗавершення дії
extensionsCertificateInfoПолучение данных о ключевом контейнереObject*РасширенияРозширення

Поля объекта обʼєкта

Anchor
ownerCertificateInfo
ownerCertificateInfo
 ownerCertificateInfo.value

ПолеТип данныхданихОписаниеОпис
ownerSurnameObject*ФамилияПрізвище
ownerGivennameObject*Имя отчествоІмʼя та по батькові
ownerFullNameObject*Полное имяПовне імʼя
ownerCountryObject*СтранаКраїна
ownerRegionObject*Область
ownerCityObject*ГородНаселений пункт
ownerAddressObject*Почтовый адресПоштова адреса
ownerSerialNumberObject*Серийный Серійний номер владельцавласника
ownerPositionObject*ДолжностьПосада

Поля объектаобʼєкта  

Anchor
issuerCertificateInfo
issuerCertificateInfo
 issuerCertificateInfo.value

ПолеТип данныхданихОписаниеОпис
issuerOrganizationObject*ОрганизацияОрганізація
issuerDepartmentObject*ПодразделениеПідрозділ
issuerFullNameObject*Полное имяПовне імʼя
issuerCountryObject*СтранаКраїна
issuerRegionObject*Область
issuerCityObject*ГородНаселений пункт
issuerAddressObject*Почтовый адресПоштова адреса
issuerSerialNumberObject*Серийный Серійний номер издателявидавця

Поля объектаобʼєкта  

Anchor
publicKeyCertificateInfo
publicKeyCertificateInfo
 publicKeyCertificateInfo.value

ПолеТип данныхданихОписаниеОпис
publicKeyObject*Открытый Відкритий ключ
dsAlgorismObject*Алгоритм ЭПЕП

Поля объектаобʼєкта  

Anchor
extensionsCertificateInfo
extensionsCertificateInfo
 signerInfo.extensionsCertificateInfo.value

ПолеТип данныхданихОписаниеОпис
personalDataПолучение данных о ключевом контейнереObject*Персональные данныеПерсональні дані
alternativeOwnerNameObject*Альтернативное имя владельцаАльтернативне імʼя власника
subjectKeyIdObject*Идентификатор Ідентифікатор ключа
subjectOwnerIdObject*Идентификатор владельцаІдентифікатор власника
certificateProfileObject*Профиль сертификатаПрофіль сертифікату
keyUsageObject*Назначение сертификатаПризначення сертифікату
isTemporaryObject*Признак Ознака стартового сертификатасертифікату
isReinforcedObject*Признак усиленного сертификатаОзнака посиленого сертифікату
isQualifiedObject*Признак квалифицированного сертификатаОзнака кваліфікованого сертифікату
isPrivateKeyOnQSCDObject*Признак средства КЭПОзнака засобу КЕП
qscdTypeNameObject*Тип средства КЭПзасобу КЕП
isElectronicStampObject*Признак электронной печатиОзнака електронної печатки

Поля объектаобʼєкта  

Anchor
personalData
personalData
 Получение данных о ключевом контейнереextensionsCertificateInfo.value.personalData.value   

ПолеТип данныхданихОписаниеОпис
customIdObject*Внешний идентификаторЗовнішній ідентифікатор
passportObject*Паспортные данныеПаспортні дані
drfouObject*Регистрационный номер учетной карточки плательщика налоговРеєстраційний номер облікової картки платника податків

edrpou

Object*Код ЕДПРОУЄДРПОУ

eddrun

Object*

Уникальный Унікальний номер записи запиту в ЕГДРЄДДР

Поля объекта типа обʼєкта типа

Anchor
CertObject
CertObject
Object* 

ПолеТип данныхданихОписаниеОпис
descriptionStringОписание Опис поля на языке, который выбран пользователем в Сервисемові, який обрано користувачем у Сервісі
value[Object, String, Boolean, Number, Array, null]Значение Значення поля

...

Приклад обʼєкта JSON відповіді
No Format
{
  "keyAgreement": {
    "canBeUsed": false,
    "certificateInfo": {},
    "message": ""
  },
  "signature": {
    "canBeUsed": true,
    "certificateInfo": {
      "ownerCertificateInfo": {
        "description": "Власник",
        "value": {
          "ownerSurname": {
            "description": "Прізвище",
            "value": "Коваль"
          },
          "ownerGivenname": {
            "description": "ІмяІм'я по-батькові",
            "value": "Кирило Кирилович"
          },
          "ownerFullName": {
            "description": "Повне ім'я",
            "value": "Співробітник банку"
          },
          "ownerCountry": {
            "description": "Країна",
            "value": "UA"
          },
          "ownerRegion": {
            "description": "Область",
            "value": "Харківська"
          },
          "ownerCity": {
            "description": "Місто",
            "value": "Харків"
          },
          "ownerAddress": {
            "description": "Поштова адреса",
            "value": null
          },
          "ownerSerialNumber": {
            "description": "Серійний номер власника",
            "value": "1AAAD3DEE6684A8F"
          },
          "ownerPosition": {
            "description": "Посада",
            "value": "Співробітник банку"
          },
          "ownerOrganization": {
            "description": "Організація",
            "value": "ПАТ "Кредобанк&quot"
          },
          "ownerOrganizationUnit": {
            "description": "Відділ (підрозділ)",
            "value": "Захисту інформації"
          }
        }
      },
      "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-33349855-0002"
          }
        }
      },
      "publicKeyCertificateInfo": {
        "description": "Інформація про відкритий ключ",
        "value": {
          "publicKey": {
            "description": "Відкритий ключ",
            "value": "86 CA 20 5C 1D CA 25 8E 56 80 26 15 D6 5F 26 E9 1B 2B B5 12 D6 FE 9B B0 28 4B F2 05 D7 7E 38 57 00"
          },
          "dsAlgorism": {
            "description": "Алгоритм ЕП",
            "value": "ДСТУ 4145-2002, ПБ, little-endian"
          }
        }
      },
      "certificateSerialNumber": {
        "description": "Серійний номер сертифікату",
        "value": "B8 BF CA F0 E1 7D B9 1C"
      },
      "notBefore": {
        "description": "Початок дії",
        "value": "2018-09-11T09:22:11Z"
      },
      "notAfter": {
        "description": "Закінчення дії",
        "value": "2018-09-21T21:00:00Z"
      },
      "extensionsCertificateInfo": {
        "description": "Розширення",
        "value": {
          "personalData": {
            "description": "Персональні дані",
            "value": {
              "customId": {
                "description": "Зовнішній ідентифікатор",
                "value": "001"
              },
              "passport": {
                "description": "Паспортні дані",
                "value": "000123456"
              },
              "drfou": {
                "description": "Реєстраційний номер облікової картки платника податків",
                "value": "1234567891"
              },
              "edrpou": {
                "description": "Код ЕДПРОУ",
                "value": null
              },
              "eddrun": {
                "description": "Унікальний номер запису в ЄДДР",
                "value": "01010101010115"
              }
            }
          },
          "alternativeOwnerName": {
            "description": "Альтернативне ім'я власника",
            "value": "test@cipher.com"
          },
          "subjectKeyId": {
            "description": "Ідентифікатор ключа",
            "value": "D7 AE 17 4E B0 2B 38 68 8F D9 17 22 67 D1 5B AF 36 A2 5A 62 76 AA 44 94 86 C8 D9 42 E1 86 E8 9D"
          },
          "subjectOwnerId": {
            "description": "Ідентифікатор власника",
            "value": "1A AA D3 DE E6 68 4A 8F"
          },
          "certificateProfile": {
            "description": "Профіль сертифіката",
            "value": "3"
          },
          "keyUsage": {
            "description": "ПризначеняПризначення сертифіката",
            "value": "Цифровий підпис"
          },
          "isTemporary": {
            "description": "Стартовий",
            "value": "false"
          },
          "isReinforced": {
            "description": "Посилений",
            "value": "false"
          },
          "isQualified": {
            "description": "Кваліфікований",
            "value": "false"
          },
          "isPrivateKeyOnQSCD": {
            "description": "Засіб КЕП",
            "value": "false"
          },
          "qscdTypeName": {
            "description": "Тип засобу КЕП",
            "value": null
          },
          "isElectronicStamp" : {
            "description": "Електронна печатка",
            "value": "false"
          }
        }
      }
    },
    "message": "До закінчення дії ключів залишилося менше 6 днів.Зверніться протягом 6 днів до центру реєстрації ключів для отримання нових ключів"
  }
}
Пример кода на JavaScript + jQuery 2.2.4
Code Block
languagejs
$.ajax({
    url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/{uuid}/keyStore/verifier",
    type: "PUT
            "description": "Тип засобу КЕП",
    dataType:        "jsonvalue",
	contentType: "application/json",null
    data: JSON.stringify({keyStorePassword : "12345678"})      },
    cache: false
}).done(function (jsonResponse, textStatus, xhr)      "isElectronicStamp" : {
    containerInfo  = jsonResponse;
}).fail(function (xhr) {
    try {"description": "Електронна печатка",
        var   jsonResponse = JSON.parse(xhr.responseText);"value": "false"
        message = jsonResponse.message;
}
        }
   failureCause = jsonResponse.failureCause; }
    },
 catch (e) {
 "message": "До закінчення дії ключів залишилося менше message = (xhr.responseText == undefined) ? "Ошибка при проверке ключевого контейнера." : xhr.responseText;
  6 днів. Зверніться протягом 6 днів до центру реєстрації ключів для отримання нових ключів"
  }
})