Я проверил синтаксис и обработку подписи XML на веб-сайте W3C, , однако он мало говорит о мультиподписи. Есть ли стандарт или правило для создания мультиподписи в одном XML-файле? СпасибоЕсть ли стандарт для XML-подписи?
Примера: (рассматривать только тот же файл реферирование)
Оригинального XML
<root>
<item>
<name>Apple</name>
<price>100</price>
</item>
</root>
сначала подписывает его с оболочечной подписью
подписанной XML
<root>
<item>
<name>Apple</name>
<price>100</price>
</item>
<Signature>this is Signature signed by A with Ref URL=""</Signature>
</root>
Теперь B хочет подписать XML (содержащий A si gnature)
B Подпись XML
<root>
<item>
<name>Apple</name>
<price>100</price>
</item>
<Signature>Signature A: this is Signature signed by A with Ref URL=""</Signature>
<Signature>Signature B: this is Signature signed by B with Ref URL=""</Signature>
</root>
тогда, когда речь идет о проверке, она становится запутанным ...
для подписания, при проверке, он видит
<root>
<item>
<name>Apple</name>
<price>100</price>
</item>
<Signature>Signature B: this is Signature signed by B with Ref URL=""</Signature>
</root>
но что он фактически подписал, является
<root>
<item>
<name>Apple</name>
<price>100</price>
</item>
</root>
(обратите внимание, что из-за огибающего преобразования удаленный узел подписи удаляется при подписании и завершении) Та же проблема может быть решена путем обработки узла Signature как root при обклеивании подписи. Но если задействовано несколько ссылок, это может усложниться.
Благодарим вас за ответ, но я все еще довольно смущен. Я отредактирую свой вопрос, чтобы привести пример, что дополнительная подпись может повлиять на предыдущую. –
@iOSPadawan Я обновил ответ. –
Спасибо! Но что, если он должен быть подписан на корневой основе (например, есть более 1 пункта)? И подпись B, а также следующая подпись в будущем должны иметь возможность решать, подписываются ли предыдущие узлы подписей самостоятельно. (такая ситуация, как есть D, кто знает A и C, но не может распознать B и D, а D хочет подписать исходное содержимое вместе с подписями A и C). Кажется, пользователь должен сам позаботиться об этих деталях? –