Почему моя отделённая подпись из плагина не проверяется в КриптоАРМ/cryptcp
Опубликовано Наталья Мовчан on 2015-03-04 12:38

В КриптоПро ЭЦП Browser plug-in при создании электронной подписи происходит перекодирование исходных данных в UCS-2 little endian и именно в таком виде данные будут подписаны. Это сделано для совместимости с теми ЭП, которые были созданы в Internet Explorer с использованием CAPICOM.
В КриптоАРМ и в cryptcp перекодирование данных при создании подписи не производится.
Для того, чтобы данные для подписи в КриптоПро ЭЦП Browser plug-in не перекодировались в UCS-2 little endian, их нужно передавать следующим образом:

  1. задать значение свойства ContentEncoding = BASE64_TO_BINARY;
  2. перекодировать исходные бинарные данные в BASE64;
  3. передать закодированные в BASE64 данные в свойство Content;
  4. при создании подписи будут подписаны исходные бинарные данные.

В разделе Документация на нашем сайте расположен пример создания и проверки отделенной подписи, которая будет успешно проверена в КриптоАРМ/Cryptcp.
Более подробная информация об особенностях работы с бинарными данными в КриптоПро ЭЦП Browser plug-in здесь.

(7 плюсик(ов))
Класс!
Не очень :(

Коментарии (0)