A JSR 106 cryptographic service is a concrete implementation of the abstract XMLEncryptionFactory class and is responsible for creating objects and algorithms that parse, encrypt and decrypt XML. A concrete implementation of XMLEncryptionFactory MUST provide support for each of the REQUIRED algorithms as specified by the W3C recommendation for XML Encryption. It MAY support other algorithms as defined by the W3C recommendation or other specifications.
JSR 106 leverages the JCA provider model for registering and loading XMLEncryptionFactory implementations.
Each concrete XMLEncryptionFactory implementation supports a specific XML mechanism type that identifies the XML processing mechanism that an implementation uses internally to encrypt and decrypt XML structures. This JSR supports one standard type: DOM. Support for new standard types (such as JDOM) MAY be added in the future.
A JSR 106 implementation SHOULD use underlying JCE engine classes, such as javax.crypto.Cipher to perform cryptographic operations.