Обработка узла SignedProperties в XaDeS XML Signature (C++)
Поэтому я пытаюсь вычислить дайджест-значение элемента SignedProperties в соответствии со стандартом подписи XaDeS-EPES, но всегда получаю неверное дайджест-значение.
Я знаю, что нужно делать, это канонизация узла (согласно XML Canonicalization V1.0 https://www.w3.org/TR/xml-exc-c14n/), а затем вычисление двоичного файла sha-256 дайджест и, наконец, кодировка base64 и вставка в узел Reference, указывающий на SignedProperties.
Поскольку в настоящее время я вычисляю другие правильные значения с теми же функциями, я думаю, что ошибка находится на этапе канонизации, в настоящее время я работаю с функцией c14n, принадлежащей libxml2, но если я передаю узел как есть, он выдает ошибка, поскольку пространства имен не определены в узле, я попытался добавить объявления внутри узла SignedProperties, но не могу получить правильный дайджест.
Кто-нибудь знает?
Спасибо за ваше время и знания, с наилучшими пожеланиями;D
1 ответ
У меня была похожая проблема. Решение было заменить
<tag/>
по
<tag></tag>
.
Не уверен, что это ответ на ваш вопрос.