模块  java.xml.crypto

Interface KeyValue

  • All Superinterfaces:
    XMLStructure

    public interface KeyValueextends XMLStructure
    KeyValue中定义的XML KeyValue元素的表示 KeyValue对象包含可用于验证签名的单个公钥。 XML模式定义定义为:
      <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="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> 
    可以通过调用KeyInfoFactory类的newKeyValue方法并向传递表示公钥值的PublicKey来创建KeyValue实例。 以下是从存储在KeyStore中的CertificateDSAPublicKey创建KeyValue示例
      KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); PublicKey dsaPublicKey = keyStore.getCertificate("myDSASigningCert").getPublicKey(); KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM"); KeyValue keyValue = factory.newKeyValue(dsaPublicKey); 
    该类将DSAKeyValueRSAKeyValue元素分别作为类型DSAPublicKeyRSAPublicKey对象返回。 请注意,并非架构中的所有字段都可以作为这些类型的参数进行访问。
    从以下版本开始:
    1.6
    另请参见:
    KeyInfoFactory.newKeyValue(PublicKey)
    • 字段详细信息

      • DSA_TYPE

        static final String DSA_TYPE
        标识DSA KeyValue KeyInfo类型的URI:http://www.w3.org/2000/09/xmldsig#DSAKeyValue。 这可以指定为RetrievalMethod类的type参数的值来描述远程DSAKeyValue结构。
        另请参见:
        常数字段值
      • RSA_TYPE

        static final String RSA_TYPE
        标识RSA KeyValue KeyInfo类型的URI:http://www.w3.org/2000/09/xmldsig#RSAKeyValue。 这可以指定为RetrievalMethod类的type参数的值,以描述远程RSAKeyValue结构。
        另请参见:
        常数字段值
    • 方法详细信息

      • getPublicKey

        PublicKey getPublicKey()                throws KeyException
        返回此 KeyValue
        结果
        这个 KeyValue
        异常
        KeyException - 如果这个 KeyValue无法转换为 PublicKey