Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Punkt5  
#1 Оставлено : 5 декабря 2024 г. 12:39:14(UTC)
Punkt5

Статус: Новичок

Группы: Участники
Зарегистрирован: 27.11.2024(UTC)
Сообщений: 3
Российская Федерация
Откуда: Москва

Для общения банков с ФТС предусматривается подписание XML-документов УКЭП, которая встраивается в XML по стандарту XML-DSIG
Когда-то ФТС предоставлял по запросу банка самописную утилиту для встраивания этой УКЭП в подписываемые XML-документы. Но уже больше года получить от них ни эту программу, ни пояснения по действиям с крипто-про для её создания не удаётся.

Пытаемся решить данную задачу своими силами. Подскажите:

1. Есть ли информация/примеры для работы с оборачиваемой подписью XML-DSIG через COM-объекты CAPICOM или другой библиотеки, которые можно было бы использовать в VBS-скрипте на локальной машине.

2. Если п.1 - нет, то можно ли использовать создание подписи в отдельный файл, с последующим встраиванием из файла в XML-тег SignatureValue, и с какими параметрами Сигнатуры должно осуществляться это создание?
Offline Андрей *  
#2 Оставлено : 5 декабря 2024 г. 12:59:46(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,734
Мужчина
Российская Федерация

Сказал «Спасибо»: 574 раз
Поблагодарили: 2304 раз в 1805 постах
Здравствуйте.

А пример есть подписанного xml или тестовый стенд у них для проверки?

Есть XMLDSIG в CAdESCOM,
можно посмотреть примеры :

Пример подписи XML
Пример подписи XADES-E-BES
Пример подписи XADES-E-T
Пример подписи XADES-E-X Long Type 1


В документации - plugin-samples
Создание и проверка подписи документа XML
Создание и проверка подписи документа XML по шаблону
Техническую поддержку оказываем тут
Наша база знаний
Offline Punkt5  
#3 Оставлено : 5 декабря 2024 г. 13:43:07(UTC)
Punkt5

Статус: Новичок

Группы: Участники
Зарегистрирован: 27.11.2024(UTC)
Сообщений: 3
Российская Федерация
Откуда: Москва

Автор: Андрей * Перейти к цитате
Здравствуйте.

А пример есть подписанного xml или тестовый стенд у них для проверки?
Пример-то есть, но понятно, что в общий доступ его не могу выложить. Тестового стенда нет - тестируемся на рабочем контуре.

Цитата:
Есть XMLDSIG в CAdESCOM,
можно посмотреть примеры :

Пример подписи XML
Пример подписи XADES-E-BES
Пример подписи XADES-E-T
Пример подписи XADES-E-X Long Type 1
В CAdESCOM видел эти примеры. Но, как я понимаю, CAdESCOM - для подписания через интернет, чего в нашем случае нельзя делать - нужно именно на локальном компе потому и спрашивал про наличие/отсутствие аналогичного функционала у Capicom. Но, может я ошибаюсь и CadesCOM позволяет работать на локале.
Цитата:

В документации - plugin-samples
Создание и проверка подписи документа XML
Создание и проверка подписи документа XML по шаблону
В этой документации читал: смутило то, что тоже везде, где есть примеры - они через CadesCom с использование XML-шаблонов, которые подготовлю-то без проблем, но опять-же непонятно - это через сервер работает, либо на локали тоже можно организовать? То есть, если я перепишу этот JS-пример на VBS - заработает ли он на локальной машине, или он предназначен для работы через браузер?

Вот для анализа кусочек XML-файла с той самой встроенной подписью, где всё рабочая инфа заменена на ...
Не знаю - поможет ли?

<n1:Signature xmlns:n1="http://www.w3.org/2000/09/xmldsig#">
<n1:SignedInfo xmlns:n1="http://www.w3.org/2000/09/xmldsig#">
<n1:CanonicalizationMethod Algorithm="urn:xml-dsig:transformation:v1.1"/>
<n1:SignatureMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"/>
<n1:Reference URI="#KeyInfo">
<n1:Transforms>
<n1:Transform Algorithm="urn:xml-dsig:transformation:v1.1"/>
</n1:Transforms>
<n1:DigestMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
<n1:DigestValue>
...
</n1:DigestValue>
</n1:Reference>
<n1:Reference URI="">
<n1:Transforms>
<n1:Transform Algorithm="http://www.w3.org/TR/1999/REC-xpath-19991116">
<n1:XPath>not(ancestor-or-self::dsig:Signature)</n1:XPath>
</n1:Transform><n1:Transform Algorithm="urn:xml-dsig:transformation:v1.1"/>
</n1:Transforms>
<n1:DigestMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
<n1:DigestValue>...</n1:DigestValue>
</n1:Reference>
</n1:SignedInfo>
<n1:SignatureValue>...</n1:SignatureValue>
<n1:KeyInfo Id="KeyInfo">
<n1:X509Data><n1:X509Certificate>...</n1:X509Certificate></n1:X509Data>
</n1:KeyInfo>
</n1:Signature>

Offline Андрей *  
#4 Оставлено : 5 декабря 2024 г. 14:16:58(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,734
Мужчина
Российская Федерация

Сказал «Спасибо»: 574 раз
Поблагодарили: 2304 раз в 1805 постах
Цитата:
CadesCOM позволяет работать на локале.


конечно, причем тут сервер?

Это на замену CAPICOM от MS
+ новые возможности,


есть и cades api - если напрямую к dll, а не через плагин\vbs\прикладной софт.
Техническую поддержку оказываем тут
Наша база знаний
Offline Punkt5  
#5 Оставлено : 5 декабря 2024 г. 15:58:53(UTC)
Punkt5

Статус: Новичок

Группы: Участники
Зарегистрирован: 27.11.2024(UTC)
Сообщений: 3
Российская Федерация
Откуда: Москва

Автор: Андрей * Перейти к цитате
Цитата:
CadesCOM позволяет работать на локале.


конечно, причем тут сервер?

Это на замену CAPICOM от MS
+ новые возможности,


есть и cades api - если напрямую к dll, а не через плагин\vbs\прикладной софт.


Ну, в документации описание работы с подписью XML приведён как раз кусок HTML-кода, в который встраивается JS-код, приведённый там же чуть ниже. Казалось бы: при чём тут HTML, если это com-объекты, которые должны вроде работать на локали, но ставятся почему-то как расширение браузера? Хочется этот сумбур как-то привести в норму, получив чуть более чёткое описание: Если тебе надо работать на локале без обращений куда-то через браузер - скачай такую-то DLL, установи так-то, и используй такие-то объекты и такие-то константы в качестве параметров для встраивания оборачиваемой подписи в XML.

Либо же, если без браузера это нереализуемо, хотя бы получить уверенность, что если я сварганю вот такой html+JS и буду запускать его браузером - то этот браузерный плагин не потащит файл куда-нибудь в интернете, чтоб подписать его - ну просто вот такое решение - только через браузер работать может.
Offline Андрей *  
#6 Оставлено : 5 декабря 2024 г. 16:26:19(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,734
Мужчина
Российская Федерация

Сказал «Спасибо»: 574 раз
Поблагодарили: 2304 раз в 1805 постах
еще раз...
это обычная COM-технология, там и на vbs были примеры, аналогично всё, как и с CAPICOM.

Причём тут кусок html не понятно.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#7 Оставлено : 5 декабря 2024 г. 16:29:07(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,734
Мужчина
Российская Федерация

Сказал «Спасибо»: 574 раз
Поблагодарили: 2304 раз в 1805 постах
Код:
  var sContent =
                "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +


это html? нет, это пример xml, это из примера кода на js - вставил и проверил, если нужно из файла - смотреть чтение из файла, другой пример.
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.