Перейти к содержимому

Подпись и проверка подписи

USB-токены и смарт-карты JaCartaAPI и SDKUSB-токены и смарт-карты JaCarta

Описание и примеры представлены в разделе Работа с электронной подписью.

Посчитать хэш от данных, используя заданный алгоритм.

Если указан аргумент tokenID, то работает при любом состоянии аутентификации, в противном случае — выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Аргументы:

  • Тип: Array
  • Описание: Массив байт с данными для хэширования.
  • Тип: Integer
  • Описание: Идентификатор токена. Получается с помощью команды getAllSlots. Значение идентификатора не постоянно, но в рамках сессии не меняется.

algorithm (По умолчанию: JCWebClient2.Vars.DigestAlgorithm.GOST_94)

Заголовок раздела «algorithm (По умолчанию: JCWebClient2.Vars.DigestAlgorithm.GOST_94)»
  • Тип: String
  • Допустимые значения: JCWebClient2.Vars.DigestAlgorithm
  • Описание: Алгоритм вычисления хэш-функции.

Результат: Array — результаты работы хэш-функции.

Подписать данные.

Возвращает подпись в формате PKCS#7, закодированную в Base64.

Передавать на подпись можно либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать аргументы data и fileName, то fileName игнорируется.

При подписании данных можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Примеры в разделе Формирование электронной подписи.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Включать ли данные в подпись PKCS#7 (true — включать). Если установлен в true и подписываются данные из файла (аргумент fileName), то будет сгенерировано исключение. Если установлен аргумент signature, то значение attachedSignature игнорируется.
  • Тип: String
  • Описание: Данные для подписи в виде строки, закодированной в Base64.
  • Тип: String
  • Описание: Имя файла, содержимое которого требуется подписать. Если аргумент data установлен, то fileName игнорируется.
  • Тип: String
  • Описание: Подпись в формате PKCS#7, закодированная в Base64. Используется для создания множественной подписи. Если signature является отсоединенной подписью, то необходимо наличие аргументов data или fileName. Если signature является присоединенной подписью, то данные для подписи извлекаются из signature, если отсутствуют аргументы data или fileName.
  • Тип: Array
  • Описание: Список получаемых данных с пользовательского ПК, которые будут подписаны и войдут в результирующий PKCS#7 конверт. Массив должен содержать строки из JCWebClient2.Vars.UserHostData. Информация о системе представляет собой строку в формате JSON. Она добавляется в подпись как подписываемый атрибут (signed attribute). OID атрибута: 1.2.643.2.7.1.1.1.
  • Тип: Array

  • Описание: Массив с пользовательскими подписываемыми атрибутами. Каждый элемент массива является объектом с параметрами:

    • Тип: String
    • Описание: OID атрибута.
    • Тип: String
    • Описание: Значение атрибута.
  • Тип: Boolean
  • Описание: Включать в подпись время подписания. Время подписания добавляется в PKCS#7-контенер как атрибут с OID 1.2.840.113549.1.9.5. Если при подписи передаются подписываемые атрибуты (customSignedAttributes), то время подписания включается автоматически.
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат: String — подпись в формате PKCS#7, закодированная в Base64.

Подписать несколько пакетов данных.

Возвращает массив подписей в формате PKCS#7, закодированных в Base64.

Передавать на подпись можно либо массив данных (аргумент data), либо массив имён файлов (аргумент fileName). Если одновременно передать аргументы data и fileName, то fileName игнорируется.

При подписании данных можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Примеры в разделе Формирование электронной подписи.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Включать ли данные в подпись PKCS#7 (true — включать). Если установлен в true и подписываются данные из файла (аргумент fileName), то будет сгенерировано исключение. Если установлен аргумент signature, то значение attachedSignature игнорируется.
  • Тип: Array
  • Описание: Данные для подписи в виде массива строк, закодированных в Base64.
  • Тип: Array
  • Описание: Массив имён файлов, содержимое которых требуется подписать. Если аргумент data установлен, то fileName игнорируется.
  • Тип: String
  • Описание: Подпись в формате PKCS#7, закодированная в Base64. Используется для создания множественной подписи. Если signature является отсоединенной подписью, то необходимо наличие аргументов data или fileName. Если signature является присоединенной подписью, то данные для подписи извлекаются из signature, если отсутствуют аргументы data или fileName.
  • Тип: Array
  • Описание: Список получаемых данных с пользовательского ПК, которые будут подписаны и войдут в результирующий PKCS#7 конверт. Массив должен содержать строки из JCWebClient2.Vars.UserHostData. Информация о системе представляет собой строку в формате JSON. Она добавляется в подпись как подписываемый атрибут (signed attribute). OID атрибута: 1.2.643.2.7.1.1.1.
  • Тип: Array

  • Описание: Массив с пользовательскими подписываемыми атрибутами. Каждый элемент массива является объектом с параметрами:

    • Тип: String
    • Описание: OID атрибута.
    • Тип: String
    • Описание: Значение атрибута.
  • Тип: Boolean
  • Описание: Включать в подпись время подписания. Время подписания добавляется в PKCS#7-контенер как атрибут с OID 1.2.840.113549.1.9.5. Если при подписи передаются подписываемые атрибуты (customSignedAttributes), то время подписания включается автоматически.
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат: Array — массив подписей в формате PKCS#7, закодированных в Base64. Количество возвращаемых подписей и их порядок соответствуют количеству и порядку строк передаваемых данных (data) или имён файлов (fileName).

Подписать данные.

Возвращает подпись в формате PKCS#7.

Передавать на подпись можно либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать аргументы data и fileName, то fileName игнорируется.

При подписании данных можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Примеры в разделе Формирование электронной подписи.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Включать ли данные в подпись PKCS#7 (true — включать). Если установлен в true и подписываются данные из файла (аргумент fileName), то будет сгенерировано исключение. Если установлен аргумент signature, то значение attachedSignature игнорируется.
  • Тип: Array
  • Описание: Данные для подписи в виде массива байт.
  • Тип: String
  • Описание: Имя файла, содержимое которого требуется подписать. Если аргумент data установлен, то fileName игнорируется.
  • Тип: Array
  • Описание: Подпись в виде массива байт в формате PKCS#7. Используется для создания множественной подписи. Если signature является отсоединенной подписью, то необходимо наличие аргументов data или fileName. Если signature является присоединенной подписью, то данные для подписи извлекаются из signature, если отсутствуют аргументы data или fileName.
  • Тип: Array
  • Описание: Список получаемых данных с пользовательского ПК, которые будут подписаны и войдут в результирующий PKCS#7 конверт. Массив должен содержать строки из JCWebClient2.Vars.UserHostData. Информация о системе представляет собой строку в формате JSON. Она добавляется в подпись как подписываемый атрибут (signed attribute). OID атрибута: 1.2.643.2.7.1.1.1.
  • Тип: Array

  • Описание: Массив с пользовательскими подписываемыми атрибутами. Каждый элемент массива является объектом с параметрами:

    • Тип: String
    • Описание: OID атрибута.
    • Тип: String
    • Описание: Значение атрибута.
  • Тип: Boolean
  • Описание: Включать в подпись время подписания. Время подписания добавляется в PKCS#7-контенер как атрибут с OID 1.2.840.113549.1.9.5. Если при подписи передаются подписываемые атрибуты (customSignedAttributes), то время подписания включается автоматически.
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат: Array — массив байт с подписью в формате PKCS#7.

Подписать несколько пакетов данных.

Возвращает массив подписей в формате PKCS#7.

Передавать на подпись можно либо массив данных (аргумент data), либо массив имён файлов (аргумент fileName). Если одновременно передать аргументы data и fileName, то fileName игнорируется.

При подписании данных можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Примеры в разделе Формирование электронной подписи.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Включать ли данные в подпись PKCS#7 (true — включать). Если установлен в true и подписываются данные из файла (аргумент fileName), то будет сгенерировано исключение. Если установлен аргумент signature, то значение attachedSignature игнорируется.
  • Тип: Array
  • Описание: Данные для подписи в виде массива массивов байт.
  • Тип: Array
  • Описание: Массив имён файлов, содержимое которых требуется подписать. Если аргумент data установлен, то fileName игнорируется.
  • Тип: Array
  • Описание: Подпись в виде массива байт в формате PKCS#7. Используется для создания множественной подписи. Если signature является отсоединенной подписью, то необходимо наличие аргументов data или fileName. Если signature является присоединенной подписью, то данные для подписи извлекаются из signature, если отсутствуют аргументы data или fileName.
  • Тип: Array
  • Описание: Список получаемых данных с пользовательского ПК, которые будут подписаны и войдут в результирующий PKCS#7 конверт. Массив должен содержать строки из JCWebClient2.Vars.UserHostData. Информация о системе представляет собой строку в формате JSON. Она добавляется в подпись как подписываемый атрибут (signed attribute). OID атрибута: 1.2.643.2.7.1.1.1.
  • Тип: Array

  • Описание: Массив с пользовательскими подписываемыми атрибутами. Каждый элемент массива является объектом с параметрами:

    • Тип: String
    • Описание: OID атрибута.
    • Тип: String
    • Описание: Значение атрибута.
  • Тип: Boolean
  • Описание: Включать в подпись время подписания. Время подписания добавляется в PKCS#7-контенер как атрибут с OID 1.2.840.113549.1.9.5. Если при подписи передаются подписываемые атрибуты (customSignedAttributes), то время подписания включается автоматически.
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат: Array — массив массивов байт с подписями в формате PKCS#7. Количество возвращаемых подписей и их порядок соответствуют количеству и порядку массивов передаваемых данных (data) или имён файлов (fileName).

Подписать данные без хэширования (т.е. подписать хэш).

Возвращает подпись в формате PKCS#7.

При подписании хэша можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Array

  • Описание: Хэш в виде массива байт.

    Примечание: в зависимости от алгоритма ключа контейнера, длина должна быть равна:

    • ГОСТ Р 34.10-2001 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-94).
    • ГОСТ Р 34.10-2012 с длиной ключа 256 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 256).
    • ГОСТ Р 34.10-2012 с длиной ключа 512 — 64 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 512).
  • Тип: Boolean
  • Описание: Признак кодирования результата в Base64 (true — вернуть строку с подписью в формате PKCS#7, закодированную в Base64).
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат:

  • Если аргумент base64Encoded был равен true: String — строка с подписью в формате PKCS#7, закодированная в Base64.
  • Если аргумент base64Encoded был равен false: Array — массив байт с подписью в формате PKCS#7.

Подписать данные без хэширования (т.е. подписать хэш).

При подписании хэша можно предъявлять PIN-код подписи. Предъявить его можно одним из способов:

  • передав напрямую (аргумент signaturePin);
  • используя графический интерфейс приложения JC-WebClient (аргумент useUI);
  • используя Антифрод-терминал (аргумент antifraud).

Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded. Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.

Аргументы:

  • Тип: Integer
  • Описание: Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Array

  • Описание: Данные для подписи в виде массива байт.

    Примечание: в зависимости от алгоритма ключа контейнера, длина должна быть равна:

    • ГОСТ Р 34.10-2001 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-94).
    • ГОСТ Р 34.10-2012 с длиной ключа 256 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 256).
    • ГОСТ Р 34.10-2012 с длиной ключа 512 — 64 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 512).
  • Тип: String
  • Описание: PIN-код подписи.
  • Тип: Boolean
  • Описание: Признак использования графического интерфейса приложения JC-WebClient для предъявления PIN-кода подписи. Если равен true, то аргумент signaturePin игнорируется.

antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)

Заголовок раздела «antifraud [устаревшее] (Обязательный — для смарт-карты в Антифрод-терминале, в остальных случаях — Необязательный)»
  • Тип: PlainObject
  • Описание: Параметры для предъявления PIN-кода подписи с Антифрод-терминала. Если указан, то аргументы useUI и signaturePin игнорируются.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор Антифрод-терминала, работающего без смарт-карты. Получаются с помощью команды getAllSlots. Идентификатор игнорируется, если в tokenID передали идентификатор смарт-карты, подключенной к Антифрод-терминалу. Значения идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.AftLang
  • Описание: Идентификатор языка, используемого для отображения сообщений.

timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)

Заголовок раздела «timeout (По умолчанию: JCWebClient2.defaults().antifraud.timeout)»
  • Тип: Integer
  • Описание: Тайм-аут ожидания ввода от пользователя до отмены операции, в секундах.

Результат: Array — массив байт с подписью.

Проверить подпись PKCS#7 с данными и подписью, закодированными в Base64.

В случае отсоединенной подписи передавать на проверку необходимо либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать data и fileName, то fileName игнорируется.

Работает при любом состоянии аутентификации.

Примеры в разделе Проверка электронной подписи.

Аргументы:

  • Тип: String
  • Описание: Закодированная в Base64 подпись в формате PKCS#7.
  • Тип: String
  • Описание: Закодированные в Base64 данные, если используется PKCS#7 отсоединённая подпись (detached signature).
  • Тип: String
  • Описание: Имя файла, если используется PKCS#7 отсоединённая подпись (detached signature). Если аргумент data установлен, то fileName игнорируется.
  • Тип: PlainObject
  • Описание: Дополнительные параметры проверки на токене.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор токена. Получается с помощью команды getAllSlots. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Признак использования токена при проверке подписи.
  • Тип: PlainObject
  • Описание: Цепочка сертификатов от сертификата подписанта до доверенного открытого ключа, загруженного в доверенное хранилище в JaCarta-2 ГОСТ.

Параметры:

  • Тип: Boolean
  • Описание: Признак использования сертификатов на токене для установления доверия. Если передан аргумент certificates и текущий аргумент равен true, то для установки доверия используются в том числе сертификаты с токена.
  • Тип: Array
  • Описание: Массив из тел сертификатов в форматах DER или PEM для установления доверия.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.CheckCRLMode.None, JCWebClient2.Vars.CheckCRLMode.Mild или JCWebClient2.Vars.CheckCRLMode.Strong
  • Описание: Способ проверки списков отзыва сертификатов.
  • Тип: Boolean
  • Описание: Автоматически загружать недостающие промежуточное сертификаты.

Результат: Boolean — результат проверки.

Проверить подпись PKCS#7.

В случае отсоединенной подписи передавать на проверку необходимо либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать data и fileName, то fileName игнорируется.

Работает при любом состоянии аутентификации.

Примеры в разделе Проверка электронной подписи.

Аргументы:

  • Тип: Array
  • Описание: Массив байт с подписью в формате PKCS#7.
  • Тип: Array
  • Описание: Данные, если используется PKCS#7 отсоединённая подпись (detached signature).
  • Тип: String
  • Описание: Имя файла, если используется PKCS#7 отсоединённая подпись (detached signature). Если аргумент data установлен, то fileName игнорируется.
  • Тип: PlainObject
  • Описание: Дополнительные параметры проверки на токене.

Параметры:

  • Тип: Integer
  • Описание: Идентификатор токена. Получается с помощью команды getAllSlots. Значение идентификатора не постоянно, но в рамках сессии не меняется.
  • Тип: Boolean
  • Описание: Признак использования токена при проверке подписи.
  • Тип: PlainObject
  • Описание: Цепочка сертификатов от сертификата подписанта до доверенного открытого ключа, загруженного в доверенное хранилище в JaCarta-2 ГОСТ.

Параметры:

  • Тип: Boolean
  • Описание: Признак использования сертификатов на токене для установления доверия. Если передан аргумент certificates и текущий аргумент равен true, то для установки доверия используются в том числе сертификаты с токена.
  • Тип: Array
  • Описание: Массив из тел сертификатов в форматах DER или PEM для установления доверия.
  • Тип: Integer
  • Допустимые значения: JCWebClient2.Vars.CheckCRLMode.None, JCWebClient2.Vars.CheckCRLMode.Mild или JCWebClient2.Vars.CheckCRLMode.Strong
  • Описание: Способ проверки списков отзыва сертификатов.
  • Тип: Boolean
  • Описание: Автоматически загружать недостающие промежуточное сертификаты.

Результат: Boolean — результат проверки.

Проверить подпись хэша в виде массива байт.

Работает при любом состоянии аутентификации.

Аргументы:

  • Тип: Array
  • Описание: Массив байт с подписью.
  • Тип: Array

  • Описание: Хэш данных в виде массива байт.

    Примечание: в зависимости от алгоритма ключа, длина должна быть равна:

    • ГОСТ Р 34.10-2001 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-94).
    • ГОСТ Р 34.10-2012 с длиной ключа 256 — 32 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 256).
    • ГОСТ Р 34.10-2012 с длиной ключа 512 — 64 байта (алгоритм хэширования — ГОСТ Р 34.11-2012 с длиной ключа 512).
  • Тип: Array
  • Описание: Массив байт с публичным ключом.
  • Тип: String
  • Допустимые значения: A, B, C, XA, XB, TC26-256-B, TC26-256-C, TC26-256-D, TC26-256-A, TC26-512-A, TC26-512-B, TC26-512-C
  • Описание: Параметры эллиптической кривой ключевой пары. Используется для формирования публичного ключа. Для следующих значений определяются алгоритмы публичного ключа:
    • A, B, C, XA, XB, TC26-256-B, TC26-256-C, TC26-256-D, TC26-256-AГОСТ Р 34.10-2012 с длиной ключа 256
    • TC26-512-A, TC26-512-B, TC26-512-CГОСТ Р 34.10-2012 с длиной ключа 512

Результат: Boolean — результат проверки.