Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/quite/humla-spongycastle.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'pkix/src/main/jdk1.2/org/bouncycastle/cms/bc/BcCMSContentEncryptorBuilder.java')
-rw-r--r--pkix/src/main/jdk1.2/org/bouncycastle/cms/bc/BcCMSContentEncryptorBuilder.java124
1 files changed, 0 insertions, 124 deletions
diff --git a/pkix/src/main/jdk1.2/org/bouncycastle/cms/bc/BcCMSContentEncryptorBuilder.java b/pkix/src/main/jdk1.2/org/bouncycastle/cms/bc/BcCMSContentEncryptorBuilder.java
deleted file mode 100644
index 5d1a2a66..00000000
--- a/pkix/src/main/jdk1.2/org/bouncycastle/cms/bc/BcCMSContentEncryptorBuilder.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package org.bouncycastle.cms.bc;
-
-import java.io.OutputStream;
-import java.security.SecureRandom;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.bouncycastle.asn1.ASN1ObjectIdentifier;
-import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
-import org.bouncycastle.cms.CMSAlgorithm;
-import org.bouncycastle.cms.CMSException;
-import org.bouncycastle.crypto.BufferedBlockCipher;
-import org.bouncycastle.crypto.CipherKeyGenerator;
-import org.bouncycastle.crypto.StreamCipher;
-import org.bouncycastle.crypto.io.CipherOutputStream;
-import org.bouncycastle.crypto.params.KeyParameter;
-import org.bouncycastle.operator.GenericKey;
-import org.bouncycastle.operator.OutputEncryptor;
-import org.bouncycastle.util.Integers;
-
-public class BcCMSContentEncryptorBuilder
-{
- private static Map keySizes = new HashMap();
-
- static
- {
- keySizes.put(CMSAlgorithm.AES128_CBC, Integers.valueOf(128));
- keySizes.put(CMSAlgorithm.AES192_CBC, Integers.valueOf(192));
- keySizes.put(CMSAlgorithm.AES256_CBC, Integers.valueOf(256));
-
- keySizes.put(CMSAlgorithm.CAMELLIA128_CBC, Integers.valueOf(128));
- keySizes.put(CMSAlgorithm.CAMELLIA192_CBC, Integers.valueOf(192));
- keySizes.put(CMSAlgorithm.CAMELLIA256_CBC, Integers.valueOf(256));
- }
-
- private static int getKeySize(ASN1ObjectIdentifier oid)
- {
- Integer size = (Integer)keySizes.get(oid);
-
- if (size != null)
- {
- return size.intValue();
- }
-
- return -1;
- }
-
- private ASN1ObjectIdentifier encryptionOID;
- private int keySize;
-
- private EnvelopedDataHelper helper = new EnvelopedDataHelper();
- private SecureRandom random;
-
- public BcCMSContentEncryptorBuilder(ASN1ObjectIdentifier encryptionOID)
- {
- this(encryptionOID, getKeySize(encryptionOID));
- }
-
- public BcCMSContentEncryptorBuilder(ASN1ObjectIdentifier encryptionOID, int keySize)
- {
- this.encryptionOID = encryptionOID;
- this.keySize = keySize;
- }
-
- public BcCMSContentEncryptorBuilder setSecureRandom(SecureRandom random)
- {
- this.random = random;
-
- return this;
- }
-
- public OutputEncryptor build()
- throws CMSException
- {
- return new CMSOutputEncryptor(encryptionOID, keySize, random);
- }
-
- private class CMSOutputEncryptor
- implements OutputEncryptor
- {
- private KeyParameter encKey;
- private AlgorithmIdentifier algorithmIdentifier;
- private Object cipher;
-
- CMSOutputEncryptor(ASN1ObjectIdentifier encryptionOID, int keySize, SecureRandom random)
- throws CMSException
- {
- if (random == null)
- {
- random = new SecureRandom();
- }
-
- CipherKeyGenerator keyGen = helper.createKeyGenerator(encryptionOID, random);
-
- encKey = new KeyParameter(keyGen.generateKey());
-
- algorithmIdentifier = helper.generateAlgorithmIdentifier(encryptionOID, encKey, random);
-
- cipher = helper.createContentCipher(true, encKey, algorithmIdentifier);
- }
-
- public AlgorithmIdentifier getAlgorithmIdentifier()
- {
- return algorithmIdentifier;
- }
-
- public OutputStream getOutputStream(OutputStream dOut)
- {
- if (cipher instanceof BufferedBlockCipher)
- {
- return new CipherOutputStream(dOut, (BufferedBlockCipher)cipher);
- }
- else
- {
- return new CipherOutputStream(dOut, (StreamCipher)cipher);
- }
- }
-
- public GenericKey getKey()
- {
- return new GenericKey(algorithmIdentifier, encKey.getKey());
- }
- }
-}