CarrierControlSignatureSchema schema
CarrierControlSignatureSchema 架構會定義用來描述附加至布建檔案之簽章的專案。 它是以 XML DSIG 規格為基礎,只有以下明確描述的次要偏差。 所有元素都位於 命名空間 http://www.w3.org/2000/09/xmldsig#
中。 並非所有元素都在每個設定檔中,因為某些元素是選擇性的。
下表列出此架構中的所有元素,依名稱依字母順序排序。
元素 | 描述 |
---|---|
CanonicalizationMethod | 定義套用至 SignedInfo 的正式化方法,如 XML DSIG中所指定。 必須是標準 XML 類型。 |
DSAKeyValue | 定義 DSA) 公開金鑰 (數位簽章演算法,如 XML DSIG 中所指定。 |
DigestMethod | 定義用來產生 DigestValue 的演算法,如 XML DSIG中所指定。 |
DigestValue | 定義 XML DSIG 中指定的摘要值。 用來產生 DigestValue 的演算法定義于 DigestMethod中。 |
指數 | 定義 XML DSIG 中所指定的 RSA 公開金鑰指數。 |
G | |
HMACOutputLength | 定義 XML DSIG中所指定SignatureValue元素的長度,以位為單位。 |
J | |
KeyInfo | 定義用來驗證 XML DSIG 中所指定簽章的所有金鑰資訊。 |
KeyValue | 定義 XML DSIG 中指定的單一公開金鑰。 |
模 | 定義如 XML DSIG 中所指定的 RSA 公開金鑰模數。 |
P | 定義符合XML DSIG中所指定DSAwithSHA1需求的質數模數。 |
PgenCounter | 定義 DSA) 質產生計數器 (數位簽章演算法,如 XML DSIG 中所指定。 |
問 | |
RSAKeyValue | 定義如 XML DSIG 中所指定的 RSA 公開金鑰。 |
參考 | 定義 XML DSIG 中所指定的摘要值、摘要方法及轉換。 |
Seed | 定義 DSA (DSA) 質代種子的數位簽章演算法,如 XML DSIG 中所指定。 |
簽名 | 定義 符合 XML DSIG 規範簽章的根項目。 簽章 是布建檔案簽章的唯一根項目。 |
SignatureMethod | 定義用來在 SignatureValue 中產生簽章指紋的演算法,如 XML DSIG中所指定。 |
SignatureValue | 定義 XML DSIG 中指定的簽章指紋。 用來產生 SignatureValue 的演算法定義于 SignatureMethod中。 |
SignedInfo | 定義簽章內的所有已簽署內容,如 XML DSIG 中所指定。 |
轉換 | 定義在 XML DSIG中指定的DigestMethod之前套用至摘要式資料物件的轉換。 |
轉換 | 定義套用至摘要式資料物件的已排序轉換清單,如 XML DSIG 中所指定。 |
X509Certificate | 定義 XML DSIG 中所定義的 X.509 相容簽章。 |
X509Data | 定義 XML DSIG 中所定義的一或多個 X.509 相容簽章。 |
Y |
完整的 CarrierControlSignatureSchema 架構如下:
<?xml version="1.0" encoding="utf-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
targetNamespace="http://www.w3.org/2000/09/xmldsig#"
version="0.1" elementFormDefault="qualified">
<simpleType name="CryptoBinary">
<restriction base="base64Binary">
</restriction>
</simpleType>
<element name="Signature" type="ds:SignatureType"/>
<complexType name="SignatureType">
<sequence>
<element ref="ds:SignedInfo"/>
<element ref="ds:SignatureValue"/>
<element ref="ds:KeyInfo" minOccurs="0"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="SignatureValue" type="ds:SignatureValueType"/>
<complexType name="SignatureValueType">
<simpleContent>
<extension base="base64Binary">
<attribute name="Id" type="ID" use="optional"/>
</extension>
</simpleContent>
</complexType>
<element name="SignedInfo" type="ds:SignedInfoType"/>
<complexType name="SignedInfoType">
<sequence>
<element ref="ds:CanonicalizationMethod"/>
<element ref="ds:SignatureMethod"/>
<element ref="ds:Reference"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
<complexType name="CanonicalizationMethodType" mixed="true">
<attribute name="Algorithm" use="required">
<simpleType>
<restriction base="anyURI">
<enumeration value="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<enumeration value="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/>
<enumeration value="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<enumeration value="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<element name="SignatureMethod" type="ds:SignatureMethodType"/>
<complexType name="SignatureMethodType" mixed="true">
<sequence>
<element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<element name="Reference" type="ds:ReferenceType"/>
<complexType name="ReferenceType">
<sequence>
<element ref="ds:Transforms"/>
<element ref="ds:DigestMethod"/>
<element ref="ds:DigestValue"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="URI">
<simpleType>
<restriction base="anyURI">
<maxLength value="0"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<element name="Transforms" type="ds:TransformsType"/>
<complexType name="TransformsType">
<sequence>
<element ref="ds:Transform" maxOccurs="1"/>
</sequence>
</complexType>
<element name="Transform" type="ds:TransformType"/>
<complexType name="TransformType" mixed="true">
<attribute name="Algorithm" use="required">
<simpleType>
<restriction base="anyURI">
<enumeration value="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<element name="DigestMethod" type="ds:DigestMethodType"/>
<complexType name="DigestMethodType" mixed="true">
<sequence>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<element name="DigestValue" type="ds:DigestValueType"/>
<simpleType name="DigestValueType">
<restriction base="base64Binary"/>
</simpleType>
<element name="KeyInfo" type="ds:KeyInfoType"/>
<complexType name="KeyInfoType" mixed="true">
<choice maxOccurs="unbounded">
<element ref="ds:KeyValue"/>
<element ref="ds:X509Data"/>
<any processContents="lax" namespace="##other"/>
</choice>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="KeyValue" type="ds:KeyValueType"/>
<complexType name="KeyValueType" mixed="true">
<choice>
<element ref="ds:DSAKeyValue"/>
<element ref="ds:RSAKeyValue"/>
<any namespace="##other" processContents="lax"/>
</choice>
</complexType>
<element name="X509Data" type="ds:X509DataType"/>
<complexType name="X509DataType">
<sequence maxOccurs="unbounded">
<choice>
<element name="X509Certificate" type="base64Binary"/>
</choice>
</sequence>
</complexType>
<simpleType name="HMACOutputLengthType">
<restriction base="integer"/>
</simpleType>
<element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
<complexType name="DSAKeyValueType">
<sequence>
<sequence minOccurs="0">
<element name="P" type="ds:CryptoBinary"/>
<element name="Q" type="ds:CryptoBinary"/>
</sequence>
<element name="G" type="ds:CryptoBinary" minOccurs="0"/>
<element name="Y" type="ds:CryptoBinary"/>
<element name="J" type="ds:CryptoBinary" minOccurs="0"/>
<sequence minOccurs="0">
<element name="Seed" type="ds:CryptoBinary"/>
<element name="PgenCounter" type="ds:CryptoBinary"/>
</sequence>
</sequence>
</complexType>
<element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<complexType name="RSAKeyValueType">
<sequence>
<element name="Modulus" type="ds:CryptoBinary"/>
<element name="Exponent" type="ds:CryptoBinary"/>
</sequence>
</complexType>
</schema>