background image

Package Hierarchy

<< XML Security Stack | Service Providers >>
<< XML Security Stack | Service Providers >>
216
J
AVA
XML D
IGITAL
S
IGNATURE
API
Package Hierarchy
The six packages in the XML Digital Signature API are:
· javax.xml.crypto
· javax.xml.crypto.dsig
· javax.xml.crypto.dsig.keyinfo
· javax.xml.crypto.dsig.spec
· javax.xml.crypto.dom
· javax.xml.crypto.dsig.dom
The
javax.xml.crypto
package contains common classes that are used to per-
form XML cryptographic operations, such as generating an XML signature or
encrypting XML data. Two notable classes in this package are the
KeySelector
class, which allows developers to supply implementations that locate and option-
ally validate keys using the information contained in a
KeyInfo
object, and the
URIDereferencer
class, which allows developers to create and specify their own
URI dereferencing implementations.
The
javax.xml.crypto.dsig
package includes interfaces that represent the
core elements defined in the W3C XML digital signature specification. Of pri-
mary significance is the
XMLSignature
class, which allows you to sign and vali-
date an XML digital signature. Most of the XML signature structures or
elements are represented by a corresponding interface (except for the
KeyInfo
structures, which are included in their own package and are discussed in the next
paragraph). These interfaces include:
SignedInfo
,
CanonicalizationMethod
,
SignatureMethod
,
Reference
,
Transform
,
DigestMethod
,
XMLObject
,
Mani-
fest
,
SignatureProperty
, and
SignatureProperties
. The
XMLSignature-
Factory
class is an abstract factory that is used to create objects that implement
these interfaces.
The
javax.xml.crypto.dsig.keyinfo
package contains interfaces that repre-
sent most of the
KeyInfo
structures defined in the W3C XML digital signature
recommendation,
including
KeyInfo
,
KeyName
,
KeyValue
,
X509Data
,
X509IssuerSerial
,
RetrievalMethod
, and
PGPData
. The
KeyInfoFactory
class is an abstract factory that is used to create objects that implement these
interfaces.
The
javax.xml.crypto.dsig.spec
package contains interfaces and classes
representing input parameters for the digest, signature, transform, or canonical-
ization algorithms used in the processing of XML signatures.
Finally, the
javax.xml.crypto.dom
and
javax.xml.crypto.dsig.dom
pack-
ages
contains
DOM-specific
classes
for
the
javax.xml.crypto
and