3.org/TR/xmldsig-core/"> W3C Recommendation for XML-Signature Syntax and Processing. A
KeyInfo
contains a list of {@link XMLStructure}s, each of which contain information that enables the recipient(s) to obtain the key needed to validate an XML signature. The XML Schema Definition is defined as:
<element name="KeyInfo" type="ds:KeyInfoType"/> <complexType name="KeyInfoType" mixed="true"> <choice maxOccurs="unbounded"> <element ref="ds:KeyName"/> <element ref="ds:KeyValue"/> <element ref="ds:RetrievalMethod"/> <element ref="ds:X509Data"/> <element ref="ds:PGPData"/> <element ref="ds:SPKIData"/> <element ref="ds:MgmtData"/> <any processContents="lax" namespace="##other"/> <!-- (1,1) elements from (0,unbounded) namespaces --> </choice> <attribute name="Id" type="ID" use="optional"/> </complexType>
A
KeyInfo
instance may be created by invoking one of the {@link KeyInfoFactory#newKeyInfo newKeyInfo} methods of the{@link KeyInfoFactory} class, and passing it a list of one or more
XMLStructure
s and an optional id parameter; for example:
KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM"); KeyInfo keyInfo = factory.newKeyInfo (Collections.singletonList(factory.newKeyName("Alice"), "keyinfo-1"));
KeyInfo
objects can also be marshalled to XML by invoking the {@link #marshal marshal} method.
@author Sean Mullan
@author JSR 105 Expert Group
@see KeyInfoFactory#newKeyInfo(List)
@see KeyInfoFactory#newKeyInfo(List,String)