XML署名
XML署名を検証する際に、コア検証 (Core Validation)と呼ばれる手続きは以下のようになる。
リファレンス検証: 個々のReference要素のダイジェスト値は関連するリソースを取得し、指定された全ての変換を適用し、指定されたダイジェストアルゴリズムを適用することにより検証される。結果は登録されたDigestValueと比較する。一致しない場合、検証失敗となる。
署名検証: SignedInfo要素はCanonicalizationMethod要素で指定された正規化方式でシリアル化され、KeyInfo要素や他の方法を用いて鍵データを取得し、SignatureMethod要素で指定された方式を用いて署名を検証する。
この手続き、主張する組織により本当にリソースが署名されたものかどうか立証する。しかしながら、正規化と変換方法の拡張性により、検証側の組織では実際に何に対して署名されたり、ハッシュ計算されたのか、言い換えれば、そこで使われたアルゴリズムが署名されたデータの意味を変更しないことを信頼できるかもまた確認しなければならない。
署名を含むXML文書の外のリソースに対して用いられる署名
署名を含むXML文書の一部分に対して用いられる署名