Ниже рассматриваются особенности представления данных при работе с объектом
Особенности работы с подписываемыми данными
Подаваемые на подпись данные рассматриваются исключительно как последовательность байт, независимо от кодировки, в которой данная последовательность байт представлена. Так, в ряде языков строка представляет собой массив символов, каждый из которых закодирован двумя байтами. Подобная строка из 5 символов будет проинтерпретирована при создании подписи как массив из 10 байт. Строка, закодированная в BASE64 Unicode также будет рассматриваться как последовательность байт, никакого перекодирования в DER при создании подписи не производится.Данный факт следует учитывать при проверке отделенной подписи - данные, подаваемые в свойство Content при проверке, должны быть (представленные в виде последовательности байт) полностью идентичны данным, которые были поданы в свойство Content при создании подписи.
Особенности работы с подписанным сообщением
При создании электронной цифровой подписи подписанное сообщение может быть получено в одной из двух кодировок:-
Кодировка DER. Бинарное представление данных, данной кодировке соответствует параметр CAPICOM_ENCODE_BINARY перечисления
CAPICOM.CAPICOM_ENCODING_TYPE . -
Кодировка BASE64 Unicode. Данной кодировке соответствует параметр CAPICOM_ENCODE_BASE64 перечисления
CAPICOM.CAPICOM_ENCODING_TYPE .
Замечание
|
---|
Обратите внимание, что если при создании подписи указан параметр CAPICOM_ENCODE_BASE64, возвращаемое подписанное сообщение не будет содержать заголовков. В то время, как при проверке подписи, в проверяемом сообщении заголовки могут как отсутствовать, так и присутствовать, в последнем случае они будут проигнорированы. |
Замечание
|
---|
В КриптоПро ЭЦП Browser plug-in кодировка DER (параметр CAPICOM_ENCODE_BINARY) не поддерживается. |