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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline cutecode  
#1 Оставлено : 25 октября 2020 г. 19:50:47(UTC)
cutecode

Статус: Участник

Группы: Участники
Зарегистрирован: 10.01.2018(UTC)
Сообщений: 15
Австралия

Сказал(а) «Спасибо»: 1 раз
Как узнать нужно ли включать/исключать комментарии при канонизации?

У меня <ds:Reference> выглядит так
Код:
     <ds:Reference URI="#ref_Timestamp">
            <ds:Transforms>
              <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
            </ds:Transforms>
            <ds:DigestMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
            <ds:DigestValue>rXqXyMzoKo/2rwU9kMqvtbzXRE8CMwTTyU04FD6Kfbo=</ds:DigestValue>
          </ds:Reference>


я пользуюсь утилитой
Код:
xmllint --exc-c14n file.xml

При канонизации она комментарии не удаляет из xml.


Однако если проверить подпись на сервере КриптоПро то он походу требует чтоб комментарии удалялись.

Ибо подпись верна, только если насильно уберу коментарии из всего блока URI="#ref_Timestamp


Спасибо
Offline two_oceans  
#2 Оставлено : 26 октября 2020 г. 5:34:38(UTC)
two_oceans

Статус: Эксперт

Группы: Участники
Зарегистрирован: 05.03.2015(UTC)
Сообщений: 1,602
Российская Федерация
Откуда: Иркутская область

Сказал(а) «Спасибо»: 110 раз
Поблагодарили: 393 раз в 366 постах
Зависит от параметров алгоритма. Обратите внимание, что в строке трансформа после решетки ничего нет и дочерних тегов нет:
Код:
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
При этом будут применены все параметры данного алгоритма по умолчанию. Это, в частности, означает "удалить комментарии" (описано в применении алгоритма приведения к эксклюзивной канонической форме в стандарте xmldsig). Сравните:
Код:
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
это означает признак оставить комментарии для конкретного алгоритма. Дальще уже ориентируетесь на требования ИС - нужны комментарии (дописываете WithComments) или нет (удаляете комментарии). В большинстве случаев не нужны.

У этого же алгоритма есть еще параметр InclusiveNamespaces (по умолчанию пустой), он вставляется дочерним тегом. Для большинства параметров алгоритмов аналогично введены дочерние теги (там можно и параметры хэша и параметры подписи указывать, но почти в 100% оставляются значения по умолчанию), но вот комментарии разработчики стандарта решили внезапно воткнуть в атрибут Algorithm. Для прочих каноникализаций про комментарии также в атрибуте Algorithm.
thanks 2 пользователей поблагодарили two_oceans за этот пост.
cutecode оставлено 26.10.2020(UTC), Андрей * оставлено 26.10.2020(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.