Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package com.dstc.security.cms

This package defines classes and interfaces for IETF RFC 2630 "Cryptographic Message Syntax" (CMS).

See:
Description

Interface Summary
Attribute | An interface to an attribute associated with per-signer information.
DecryptionResult | An interface to represent the result of decrypting CMS enveloped data
EnvelopedData | An interface to data "enveloped" (that is, encrypted) according to the CMS specification.
KeyAgreeRecipientIdentifier | An interface to identifying info for a recipient in a CMS EnvelopedData for which the key encryption key is obtained by key agreement.
KeyAgreeRecipientInfo | A class representing information on recipient and encrypted content encryption key for one or more recipients (related by a common set of key agreement algorithm parameters) in a CMS EnvelopedData.
KeyTransRecipientInfo | A class representing information on an intended recipient and the encrypted content encryption key carried in a CMS EnvelopedData in which the content encryption key is encrypted with the recipient's public key.
OriginatorIdentifierOrKey | An interface to either an identifier for an originator or to the originator public key in a CMS EnvelopedData in which key encrypting keys are obtained by key agreement.
OriginatorInfo | An interface to information on the originator of a CMS EnvelopedData.
RecipientIdentifier | An interface to an identifier for a recipient in a CMS EnvelopedData for whom the content encryption key is encrypted.
RecipientInfo | An interface to per-recipient information in a CMS EnvelopedData.
SignedData | An interface to data signed according to the CMS specification.
SignerIdentifier | An interface to an identifier for a signer in a CMS SignedData.
SignerInfo | An interface to per-signer information in a CMS SignedData.
VerificationResult | An interface to the result of verification of data signed according to CMS.

Class Summary
CMSCipher | A class for encrypting (enveloping) data according to RFC 2630 "Cryptographic Message Syntax" and for decrypting data generated according to that specification.
CMSSignature | A class for signing data according to RFC 2630 "Cryptographic Message Syntax" and for verifying data signed according to that specification.
CMSTypedDataInputStream | A simple FilterInputStream class which wraps an underlying InputStream representing CMS content together with its content type.
IssuerAndSerialNumber | A class for identifying an X.509 certificate through its serial number and the distinguished name of its issuer.
OriginatorPublicKey | A class which holds an originator's public key for use by a recipient to decrypt a CMS EnvelopedData in which a key encrypting key is obtained by key agreement performed with the said public key.
RecipientEncryptedKey | A class to represent a content encryption key encrypted in a per-recipient key encrypting key negotiated via a key agreement algorithm.
RecipientKeyIdentifier | A class to hold a recipient certificate's subject key identifier, and (optionally) any additional keying material used in a key agreement algorithm for a CMS EnvelopedData.
SubjectKeyIdentifier | A class for identifying an X.509 certificate through the value of its v3 certicate extension subjectKeyIdentifier.

Exception Summary
CMSException | A generic CMS exception class

## Package com.dstc.security.cms Description

This package defines classes and interfaces for IETF RFC 2630 "Cryptographic Message Syntax" (CMS).

CMS provides a syntax and methods for cryptographically enhancing arbitrary data, through digital signatures and encryption. It is a basis of IETF RFC 2633 "S/MIME Version 3 Message Specification" but may also be used outside a MIME context.

The main classes are `CMSSignature` and `CMSCipher`, to be used respectively for signing/verifying and encrypting/decrypting data secured according to RFC 2630.

In this release the CMS types `DATA`, `SIGNED_DATA` and `ENVELOPED_DATA` are supported. `DATA` refers to non-cryptographically enhanced data, while `SIGNED_DATA` and `ENVELOPED_DATA` refers respectively to data enhanced by signing and encryption.

Arbitrary nesting of CMS `SIGNED_DATA` and `ENVELOPED_DATA` is supported. The `FilterInputStream` subclass `CMSTypedDataInputStream` is a holder for CMS typed data. Instances of it are both input to the signing and encryption processes and output from the same processes.

`CMSTypedDataInputStream` instances are also output from the verification and decryption processes, and are obtained from respectively a `VerificationResult` and a `DecryptionResult`. Also obtainable from `VerificationResult` is an instance of `SignedData` from which information on the signer(s) and signing process(es) can be obtained. Likewise, an `EnvelopedData` instance is obtainable from each `DecryptionResult` from which information on the encryption process is available.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES