0

いくつかのxades(BES)メッセージが埋め込まれているメッセージを検証しています。以前は有効として利用されていました。(署名も埋め込まれています。)

<Messsage1>
    <OtherTags>
    ...Change location A...
    </OtherTags>
    <PreDocument>
        <Messsage2>
        <OtherTags>
        ...Change location B...
        </OtherTags>
        <PreDocument>
            <Messsage3>
            <OtherTags>
            ...Change location C...
            </OtherTags>
            <Signature>
            ...
            </Signature>
            </Messsage3>
        </PreDocument>
        <Signature>
        ...
        </Signature>
        </Messsage2>
    </PreDocument>
    <Signature>
    ...
    </Signature>
</Messsage1>

現時点では、「場所Cの変更」で行われた変更のみがメッセージを無効にします。「場所Aの変更」および「場所Bの変更」での変更は、メッセージの有効性に影響を与えず、構造全体を削除することもできます。

それは期待される動作ですか?行動を変えることは可能ですか?(すべての変更がメッセージを無効にするように)

4

1 に答える 1

0

XML の変更が署名の有効性に与える影響は、次の 2 つの事実によって異なります。

  • 参照内の URI: 参照によって保護されている XML blob 内の何かを変更すると、署名が無効になります (必要があります)。

  • 参照で使用している変換と、それらと ds:SignedInfo で使用している正規化アルゴリズム。たとえば、Exclusive canonicalization アルゴリズムを使用している場合、エンベロープ XML blob のどこかに名前空間を追加しても署名は無効になりません。お役に立てれば。

于 2013-04-16T09:31:42.757 に答える