kz.gamma.cms
Class CMSEnvelopedDataStreamGenerator

java.lang.Object
  extended by kz.gamma.cms.CMSEnvelopedGenerator
      extended by kz.gamma.cms.CMSEnvelopedDataStreamGenerator

public class CMSEnvelopedDataStreamGenerator
extends CMSEnvelopedGenerator

General class for generating a CMS enveloped-data message stream.

A simple example of usage.

      CMSEnvelopedDataStreamGenerator edGen = new CMSEnvelopedDataStreamGenerator();

      edGen.addKeyTransRecipient(cert);

      ByteArrayOutputStream  bOut = new ByteArrayOutputStream();
      
      OutputStream out = edGen.open(
                              bOut, CMSEnvelopedDataGenerator.AES128_CBC, GammaTechProvider.PROVIDER_NAME);*
      out.write(data);
      
      out.close();
 


Nested Class Summary
private  class CMSEnvelopedDataStreamGenerator.CmsEnvelopedDataOutputStream
           
 
Nested classes/interfaces inherited from class kz.gamma.cms.CMSEnvelopedGenerator
CMSEnvelopedGenerator.RecipientInf
 
Field Summary
private  boolean _berEncodeRecipientSet
           
private  int _bufferSize
           
private  java.lang.Object _originatorInfo
           
private  java.lang.Object _unprotectedAttributes
           
 
Fields inherited from class kz.gamma.cms.CMSEnvelopedGenerator
CAMELLIA128_CBC, CAMELLIA128_WRAP, CAMELLIA192_CBC, CAMELLIA192_WRAP, CAMELLIA256_CBC, CAMELLIA256_WRAP, CAST5_CBC, DES_EDE3_CBC, DES_EDE3_WRAP, ECDH_SHA1KDF, IDEA_CBC, rand, RC2_CBC, recipientInfs, SEED_CBC, SEED_WRAP
 
Constructor Summary
CMSEnvelopedDataStreamGenerator()
          base constructor
 
Method Summary
private  DERInteger getVersion()
           
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, int keySize, java.lang.String provider)
          generate an enveloped object that contains an CMS Enveloped Data object using the given provider.
private  java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, javax.crypto.KeyGenerator keyGen, java.lang.String provider)
          generate an enveloped object that contains an CMS Enveloped Data object using the given provider and the passed in key generator.
protected  java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, javax.crypto.SecretKey encKey, java.security.AlgorithmParameters params, ASN1EncodableVector recipientInfos, java.lang.String provider)
           
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, java.lang.String provider)
          generate an enveloped object that contains an CMS Enveloped Data object using the given provider.
 void setBEREncodeRecipients(boolean berEncodeRecipientSet)
          Use a BER Set to store the recipient information
 void setBufferSize(int bufferSize)
          Set the underlying string size for encapsulated data
 
Methods inherited from class kz.gamma.cms.CMSEnvelopedGenerator
addKEKRecipient, addKeyAgreementRecipient, addKeyTransRecipient, addKeyTransRecipient, addPasswordRecipient, generateParameters, getAlgorithmIdentifier
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_originatorInfo

private java.lang.Object _originatorInfo

_unprotectedAttributes

private java.lang.Object _unprotectedAttributes

_bufferSize

private int _bufferSize

_berEncodeRecipientSet

private boolean _berEncodeRecipientSet
Constructor Detail

CMSEnvelopedDataStreamGenerator

public CMSEnvelopedDataStreamGenerator()
base constructor

Method Detail

setBufferSize

public void setBufferSize(int bufferSize)
Set the underlying string size for encapsulated data

Parameters:
bufferSize - length of octet strings to buffer the data.

setBEREncodeRecipients

public void setBEREncodeRecipients(boolean berEncodeRecipientSet)
Use a BER Set to store the recipient information


getVersion

private DERInteger getVersion()

open

private java.io.OutputStream open(java.io.OutputStream out,
                                  java.lang.String encryptionOID,
                                  javax.crypto.KeyGenerator keyGen,
                                  java.lang.String provider)
                           throws java.security.NoSuchAlgorithmException,
                                  java.security.NoSuchProviderException,
                                  CMSException
generate an enveloped object that contains an CMS Enveloped Data object using the given provider and the passed in key generator.

Throws:
java.io.IOException
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException

open

protected java.io.OutputStream open(java.io.OutputStream out,
                                    java.lang.String encryptionOID,
                                    javax.crypto.SecretKey encKey,
                                    java.security.AlgorithmParameters params,
                                    ASN1EncodableVector recipientInfos,
                                    java.lang.String provider)
                             throws java.security.NoSuchAlgorithmException,
                                    java.security.NoSuchProviderException,
                                    CMSException
Throws:
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 java.lang.String provider)
                          throws java.security.NoSuchAlgorithmException,
                                 java.security.NoSuchProviderException,
                                 CMSException,
                                 java.io.IOException
generate an enveloped object that contains an CMS Enveloped Data object using the given provider.

Throws:
java.io.IOException
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 int keySize,
                                 java.lang.String provider)
                          throws java.security.NoSuchAlgorithmException,
                                 java.security.NoSuchProviderException,
                                 CMSException,
                                 java.io.IOException
generate an enveloped object that contains an CMS Enveloped Data object using the given provider.

Throws:
java.io.IOException
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException


Copyright © 1998-2014 Gamma Technologies. All Rights Reserved.