Форум КриптоПро
»
Устаревшие продукты
»
КриптоПро CSP 3.0
»
Подпись бинарных данных (JavaScript CAPICOM)
Статус: Новичок
Группы: Участники
Зарегистрирован: 11.09.2009(UTC) Сообщений: 1 Откуда: Москва
|
Добрый день!
Имеем веб-клиента, в котором реализовано подписывание ЭЦП XML-файла.
примерно так:
function Sign(filepath){ try{ var fso = new ActiveXObject("Scripting.FileSystemObject"); var datafile = fso.OpenTextFile(filepath, 1); var data = datafile.ReadAll(); var signedData = new ActiveXObject("CAPICOM.SignedData"); var signer = new ActiveXObject("CAPICOM.Signer"); signedData.Content = data; s = signedData.sign(signer, "True", 0); sf = fso.CreateTextFile("C:\\sign.txt", "True"); sf.Write(s); return s; }catch(Exception){ return "Error"; } }
Далее файл с подписью передается на сервер (C#). Проверка ЭЦП на сервере может давать результат, что ЭЦП неверна, если в XML-файле встречаются определенные спецсимволы, которые по-разному воспринимаются JavaScript и C# при чтении текстовых файлов.
Видимое решение: Чтение XML-файлов, как потока бинарных данных.
Одним из вариантов может быть подписание с помощью ADODB.Stream. Но это решение считается не очень хорошим, т.к. необходимо отключить блокировку этой возможности в реестре (Microsoft же советует отключить возможности ADODB.Stream – и более того отключает ее в одном из обновлений Windows, ее включение открывает дополнительную уязвимость в системе).
Насколько решение ADODB.Stream действительно НЕправильное? Файл большой (~100 Мб), поэтому подписание с помощью XMLDSIG - представляется не очень работоспособным (нужно поднимать DOM этого xml на клиенте), возможно мои сомнения неправильные. Есть ли какой-либо иной способ?
Спасибо!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.10.2009(UTC) Сообщений: 121
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 3 раз в 3 постах
|
|
|
|
|
Форум КриптоПро
»
Устаревшие продукты
»
КриптоПро CSP 3.0
»
Подпись бинарных данных (JavaScript CAPICOM)
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close