Поделиться через


Схема CarrierControlSignatureSchema

Схема 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.

Показатель степени

Определяет экспонент открытого ключа RSA, как указано в XML DSIG .

G

Определяет целое число с определенными свойствами относительно P и Q , как указано в XML DSIG.

HMACOutputLength

Определяет длину элемента SignatureValue в битах, как указано в XML DSIG.

J

Определяет (P - 1) / Q , как указано в XML DSIG.

KeyInfo

Определяет все ключевые сведения, используемые для проверки подписи, как указано в XML DSIG .

KeyValue

Определяет один открытый ключ, указанный в XML DSIG .

Модуль

Определяет модуль открытого ключа RSA, как указано в XML DSIG .

P

Определяет основной модуль, отвечающий требованиям DSAwithSHA1 , как указано в XML DSIG.

PgenCounter

Определяет счетчик простого поколения алгоритма цифровых подписей (DSA), как указано в XML DSIG .

Q

Определяет целое число в диапазоне 2**159 <Q< 2**160, которое является основным делителем P-1, как указано в XML DSIG.

RSAKeyValue

Определяет открытый ключ RSA, как указано в XML DSIG .

Ссылки

Определяет значение дайджеста, метод дайджеста и преобразования, указанные в XML DSIG .

Семян

Определяет начальное значение алгоритма цифровых подписей (DSA), как указано в XML DSIG .

Сигнатура

Определяет корневой элемент подписи, совместимой с XML DSIG . Подпись — это уникальный корневой элемент для подписи файла подготовки.

SignatureMethod

Определяет алгоритм, используемый для создания отпечатка подписи в SignatureValue , как указано в XML DSIG.

SignatureValue

Определяет отпечаток подписи, как указано в XML DSIG . Алгоритм, используемый для создания SignatureValue , определен в SignatureMethod.

SignedInfo

Определяет все подписанное содержимое в сигнатуре, как указано в XML DSIG .

Преобразование

Определяет преобразование, примененное к дайджест-объекту данных до DigestMethod , как указано в XML DSIG.

Преобразования

Определяет упорядоченный список преобразований, применяемых к дайджест-объекту данных, как указано в XML DSIG .

X509Certificate

Определяет подпись, совместимую с X.509, как определено в XML DSIG .

X509Data

Определяет одну или несколько совместимых сигнатур X.509, как определено в XML DSIG .

да

Определяет G **X mod P (где X является частью закрытого ключа и не является открытым), как указано в XML DSIG.

 

Ниже приведена полная схема 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>