Oracle Security Developer Tools CMS Java API Reference
10g Release 2 (10.1.2.0.2)

B15564-01


oracle.security.crypto.cms
Class CMSEnvelopedDataInputStream

java.lang.Object
  extended byjava.io.InputStream
      extended byjava.io.FilterInputStream
          extended byoracle.security.crypto.cms.CMSInputStream
              extended byoracle.security.crypto.cms.CMSEnvelopedDataInputStream


public class CMSEnvelopedDataInputStream
extends CMSInputStream

A CMSEnvelopedDataInputStream is used to read enveloped-data CMS objects.

A CMSEnvelopedDataInputStream is essentially a input stream filter that unwraps the CMS enveloped-data structure from the data read in.

IMPORTANT: This class processes large CMS enveloped-data Objects more efficiently (Java VM memory usage) than the CMSEnvelopedDataContentInfo class.

See Also:
CMSInputConnector, CMSEnvelopedDataInputConnector, CMSEnvelopedDataContentInfo

Field Summary

Fields inherited from class java.io.FilterInputStream
in

Constructor Summary
CMSEnvelopedDataInputStream(CMSInputConnector conn, PrivateKey recipientPrivateKey, oracle.security.crypto.cert.X509 recipientCert)
Creates a CMSEnvelopedDataInputStream.
CMSEnvelopedDataInputStream(CMSInputConnector conn, SymmetricKey keyEncryptionKey)
Creates a CMSEnvelopedDataInputStream.
CMSEnvelopedDataInputStream(java.io.InputStream in, PrivateKey recipientPrivateKey, oracle.security.crypto.cert.X509 recipientCert)
Creates a CMSEnvelopedDataInputStream.
CMSEnvelopedDataInputStream(java.io.InputStream in, SymmetricKey keyEncryptionKey)
Creates a CMSEnvelopedDataInputStream.

Method Summary
int available()
AlgorithmIdentifier getContentEncryptionAlgID()
Returns the content encryption algorithm.
ASN1ObjectID getEnclosedContentType()
Returns the content type of the encrypted content.
OriginatorInfo getOrginatorInfo()
Returns the OriginatorInfo.
oracle.security.crypto.cert.AttributeSet getUnprotectedAttribs()
Returns the unprotected attributes.
ASN1Integer getVersion()
Deprecated. As of Phaos CMS 2.0.1, replaced by getVersionNumber()
java.math.BigInteger getVersionNumber()
Returns the version number of this CMS Object.
void mark(int readlimit)
Not supported.
boolean markSupported()
Always returns false</false>.
int read()
int read(byte[] buffer, int offset, int len)
void reset()
Not supported.
long skip(long n)
void terminate()
Finish reading the enveloped-data structure.

Methods inherited from class java.io.FilterInputStream
close, read

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail

CMSEnvelopedDataInputStream

public CMSEnvelopedDataInputStream(java.io.InputStream in,
                                   PrivateKey recipientPrivateKey,
                                   oracle.security.crypto.cert.X509 recipientCert)
Creates a CMSEnvelopedDataInputStream.
Parameters:
in - The underlying input stream.
recipientPrivateKey - The private key of the recipient.
recipientCert - The recipient's certificate.

CMSEnvelopedDataInputStream

public CMSEnvelopedDataInputStream(CMSInputConnector conn,
                                   PrivateKey recipientPrivateKey,
                                   oracle.security.crypto.cert.X509 recipientCert)
Creates a CMSEnvelopedDataInputStream.
Parameters:
conn - The underlying input connector.
recipientPrivateKey - The private key of the recipient.
recipientCert - The recipient's certificate.

CMSEnvelopedDataInputStream

public CMSEnvelopedDataInputStream(java.io.InputStream in,
                                   SymmetricKey keyEncryptionKey)
Creates a CMSEnvelopedDataInputStream.
Parameters:
in - The underlying input stream.
keyEncryptionKey - The key used for key encipherment.

CMSEnvelopedDataInputStream

public CMSEnvelopedDataInputStream(CMSInputConnector conn,
                                   SymmetricKey keyEncryptionKey)
Creates a CMSEnvelopedDataInputStream.
Parameters:
keyEncryptionKey - The key used for key encipherment.

Method Detail

terminate

public void terminate()
               throws java.io.IOException
Finish reading the enveloped-data structure.

This method must be called only after all the enclosed data has been read.

Specified by:
terminate in class CMSInputStream
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

read

public int read()
         throws java.io.IOException
Throws:
java.io.IOException

read

public int read(byte[] buffer,
                int offset,
                int len)
         throws java.io.IOException
Throws:
java.io.IOException

available

public int available()
              throws java.io.IOException
Throws:
java.io.IOException

skip

public long skip(long n)
          throws java.io.IOException
Throws:
java.io.IOException

markSupported

public boolean markSupported()
Always returns false</false>.
Returns:
false

mark

public void mark(int readlimit)
Not supported.

reset

public void reset()
           throws java.io.IOException
Not supported.
Throws:
java.io.IOException - always

getVersionNumber

public java.math.BigInteger getVersionNumber()
                                      throws java.io.IOException
Returns the version number of this CMS Object.
Returns:
The version number as an ASN1Integer.
Throws:
java.io.IOException - An I/O error occurred or the input is incorrectly encoded.

getVersion

public ASN1Integer getVersion()
                       throws java.io.IOException
Deprecated. As of Phaos CMS 2.0.1, replaced by getVersionNumber()
Returns the version number of this CMS Object.
Returns:
The version number.
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

getOrginatorInfo

public OriginatorInfo getOrginatorInfo()
                                throws java.io.IOException
Returns the OriginatorInfo.
Returns:
The OriginatorInfo.
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

getUnprotectedAttribs

public oracle.security.crypto.cert.AttributeSet getUnprotectedAttribs()
                                                               throws java.io.IOException
Returns the unprotected attributes.
Returns:
The unprotected attributes.
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

getEnclosedContentType

public ASN1ObjectID getEnclosedContentType()
                                    throws java.io.IOException
Returns the content type of the encrypted content.
Specified by:
getEnclosedContentType in class CMSInputStream
Returns:
The content type object identifier.
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

getContentEncryptionAlgID

public AlgorithmIdentifier getContentEncryptionAlgID()
                                              throws java.io.IOException
Returns the content encryption algorithm.
Returns:
The encryption algorithm identifier.
Throws:
java.io.IOException - If the encoding is incorrect or an I/O error occurs.

Oracle Security Developer Tools CMS Java API Reference
10g Release 2 (10.1.2.0.2)

B15564-01


Copyright © 2005 , Oracle. All rights reserved.