javax.xml.crypto.dsig.keyinfo
Interface PGPData

All Superinterfaces:
XMLStructure

public interface PGPData
extends XMLStructure

A representation of the XML PGPData element as defined in the W3C Recommendation for XML-Signature Syntax and Processing. A PGPData object is used to convey information related to PGP public key pairs and signatures on such keys. The XML Schema Definition is defined as:

    <element name="PGPData" type="ds:PGPDataType"/> 
    <complexType name="PGPDataType"> 
      <choice>
        <sequence>
          <element name="PGPKeyID" type="base64Binary"/> 
          <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/> 
          <any namespace="##other" processContents="lax" minOccurs="0"
           maxOccurs="unbounded"/>
        </sequence>
        <sequence>
          <element name="PGPKeyPacket" type="base64Binary"/> 
          <any namespace="##other" processContents="lax" minOccurs="0"
           maxOccurs="unbounded"/>
        </sequence>
      </choice>
    </complexType>
 
A PGPData instance may be created by invoking one of the newPGPData methods of the KeyInfoFactory class, and passing it byte arrays representing the contents of the PGP public key identifier and/or PGP key material packet, and an optional list of elements from an external namespace.

See Also:
KeyInfoFactory.newPGPData(byte[]), KeyInfoFactory.newPGPData(byte[], byte[], List), KeyInfoFactory.newPGPData(byte[], List)

Field Summary
static java.lang.String TYPE
          URI identifying the PGPData KeyInfo type: http://www.w3.org/2000/09/xmldsig#PGPData.
 
Method Summary
 java.util.List getExternalElements()
          Returns an unmodifiable list of XMLStructures representing elements from an external namespace.
 byte[] getKeyId()
          Returns the PGP public key identifier of this PGPData as defined in RFC 2440, section 11.2.
 byte[] getKeyPacket()
          Returns the PGP key material packet of this PGPData as defined in RFC 2440, section 5.5.
 
Methods inherited from interface javax.xml.crypto.XMLStructure
isFeatureSupported
 

Field Detail

TYPE

public static final java.lang.String TYPE
URI identifying the PGPData KeyInfo type: http://www.w3.org/2000/09/xmldsig#PGPData. This can be specified as the value of the type parameter of the RetrievalMethod class to describe a remote PGPData structure.

See Also:
Constant Field Values
Method Detail

getKeyId

public byte[] getKeyId()
Returns the PGP public key identifier of this PGPData as defined in RFC 2440, section 11.2.

Returns:
the PGP public key identifier (may be null if not specified). Each invocation of this method returns a new clone to protect against subsequent modification.

getKeyPacket

public byte[] getKeyPacket()
Returns the PGP key material packet of this PGPData as defined in RFC 2440, section 5.5.

Returns:
the PGP key material packet (may be null if not specified). Each invocation of this method returns a new clone to protect against subsequent modification.

getExternalElements

public java.util.List getExternalElements()
Returns an unmodifiable list of XMLStructures representing elements from an external namespace.

Returns:
an unmodifiable list of XMLStructures (may be empty, but never null)