標籤:元素 java method class element 另一個 document ges where
http://www.oracle.com/technetwork/articles/javase/dig-signature-api-140772.html
XML 簽章的結構和類型基本上XML 簽章有三種類型:
封內簽名enveloped
封外簽名enveloping
分離簽名detached
封內簽名:這種簽名是將簽名作為XML對象的子資訊,也就是說是郵件中XML檔案的子標籤
<RootElement> <Signature> ... </Signature></RootElement>
封外簽名:這種簽名將XML文檔包含到Signature對象,也就是說標籤是簽名XML檔案的根項目
<Signature> <MyXMLDocument> ... </MyXMLDocument></Signature>
分離簽名:這種情況下,簽名是獨立產生的不作為XML的一部分。也就是說你會擁有兩個XML檔案:一個待簽名的XML檔案,另一個是XML 簽章
<Signature>...</Signature><MyXMLDocument>...</MyXMLDocument>
XML 簽章結構 (where "?" denotes zero or one occurrence; "+" denotes one or more occurrences; and "*" denotes zero or more occurrences):
<Signature ID?> <SignedInfo> <CanonicalizationMethod/> <SignatureMethod/> (<Reference URI? > (<Transforms>)? <DigestMethod> <DigestValue> </Reference>)+ </SignedInfo> <SignatureValue> (<KeyInfo>)? (<Object ID?>)*</Signature>
【Java密碼學】XML 簽章