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

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

signDataInByte

PKI
signDataInByte
Подписать данные.
Возвращает подпись в виде массива байт.
Работает при состоянии аутентификации выше, чем JCWebClient2.Vars.AuthState.notBinded.
Текущее состояние аутентификации можно получить с помощью команды getLoggedInState.
Аргументы:
contID
Тип: Integer
Идентификатор контейнера. Получить можно с помощью writeUserCertificate, generateUserSelfSignedCertificate или getContainerList.

Примечание

Значение идентификатора не постоянно, но в рамках сессии не меняется.

useHardwareHash (По-умолчанию: false)
Тип: Boolean
Признак использования аппаратного хэширования.
data
Тип: Array
Данные для подписи в виде массива байт.
Результат:
Array – массив байт с подписью.

verifyData

PKI
verifyData
Проверить подпись PKCS#7.
В случае отсоединенной подписи передавать на проверку необходимо либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать data и fileName, то fileName игнорируется.
Работает при любом состоянии аутентификации.

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

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

Примечание

Если аргумент data установлен, то fileName игнорируется.

options (Необязательный)
Тип: PlainObject
Дополнительные параметры проверки на токене.
Параметры:
tokenID
Тип: Integer
Идентификатор токена. Получается с помощью команды getAllSlots.

Примечание

Значение идентификатора не постоянно, но в рамках сессии не меняется.

useToken (По-умолчанию: false)
Тип: Boolean
Признак использования токена при проверке подписи.
useHardwareHash (По-умолчанию: false)
Тип: Boolean
Признак использования аппаратного хэширования.

Примечание

Если аргумент равен true, а useToken - false, то будет сгенерировано исключение CKR_ARGUMENTS_BAD.

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

verifyBase64EncodedData

PKI
verifyBase64EncodedData
Проверить подпись PKCS#7 с данными и подписью, закодированными в Base64.
В случае отсоединенной подписи передавать на проверку необходимо либо данные (аргумент data), либо имя файла (аргумент fileName). Если одновременно передать data и fileName, то fileName игнорируется.
Работает при любом состоянии аутентификации.

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

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

Примечание

Если аргумент data установлен, то fileName игнорируется.

options (Необязательный)
Тип: PlainObject
Дополнительные параметры проверки на токене.
Параметры:
tokenID
Тип: Integer
Идентификатор токена. Получается с помощью команды getAllSlots.

Примечание

Значение идентификатора не постоянно, но в рамках сессии не меняется.

useToken (По-умолчанию: false)
Тип: Boolean
Признак использования токена при проверке подписи.
useHardwareHash (По-умолчанию: false)
Тип: Boolean
Признак использования аппаратного хэширования.

Примечание

Если аргумент равен true, а useToken - false, то будет сгенерировано исключение CKR_ARGUMENTS_BAD.

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

verifyDataInByte

PKI
verifyDataInByte

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

Работает при любом состоянии аутентификации.
Аргументы:
signature
Тип: Array
Массив байт с подписью.
data
Тип: Array
Данные в виде массива байт.
publicKey
Тип: Array
Массив байт с публичным ключем.
Результат:
Boolean – результат проверки.