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

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

verifyData

GOST
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.

chainOfTrust (Необязательный)
Тип: PlainObject
Цепочка сертификатов от сертификата подписанта до сертификата доверенного корневого центра (самоподписанного сертификата), загруженного на токен в качестве автономного сертификата.
Параметры:
useTokenStorage
Тип: Boolean
Признак использования сертификатов на токене для установления доверия. Если передан аргумент certificates и текущий аргумент равен true, то для установки доверия используются в том числе сертификаты с токена.
certificates (Необязательный)
Тип: Array
Массив из тел сертификатов в форматах DER или PEM для установления доверия.
Результат:
Boolean – результат проверки.

verifyBase64EncodedData

GOST
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.

chainOfTrust (Необязательный)
Тип: PlainObject
Цепочка сертификатов от сертификата подписанта до сертификата доверенного корневого центра (самоподписанного сертификата), загруженного на токен в качестве автономного сертификата.
Параметры:
useTokenStorage
Тип: Boolean
Признак использования сертификатов на токене для установления доверия. Если передан аргумент certificates и текущий аргумент равен true, то для установки доверия используются в том числе сертификаты с токена.
certificates (Необязательный)
Тип: Array
Массив из тел сертификатов в форматах DER или PEM для установления доверия.
Результат:
Boolean – результат проверки.