Bouncy Castle Cryptography Library 1.85

org.bouncycastle.cms.bc
Class BcKEKRecipient

java.lang.Object
  extended byorg.bouncycastle.cms.AbstractRecipient
      extended byorg.bouncycastle.cms.bc.BcKEKRecipient
All Implemented Interfaces:
KEKRecipient, Recipient
Direct Known Subclasses:
BcKEKEnvelopedRecipient

public abstract class BcKEKRecipient
extends AbstractRecipient
implements KEKRecipient


Constructor Summary
BcKEKRecipient(BcSymmetricKeyUnwrapper unwrapper)
           
 
Method Summary
protected  org.bouncycastle.crypto.CipherParameters extractSecretKey(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncryptionAlgorithm, org.bouncycastle.asn1.x509.AlgorithmIdentifier contentEncryptionAlgorithm, byte[] encryptedContentEncryptionKey)
           
 BcKEKRecipient setAllowedContentAlgorithms(java.util.Set allowedContentAlgorithms)
          Set the content-encryption algorithms this recipient is willing to unwrap a key for.
 
Methods inherited from class org.bouncycastle.cms.AbstractRecipient
checkTagSize, isContentAlgorithmAllowed, setAllowedContentAlgorithmSet, setMinimumTagSizeInBits
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.bouncycastle.cms.KEKRecipient
getRecipientOperator
 

Constructor Detail

BcKEKRecipient

public BcKEKRecipient(BcSymmetricKeyUnwrapper unwrapper)
Method Detail

setAllowedContentAlgorithms

public BcKEKRecipient setAllowedContentAlgorithms(java.util.Set allowedContentAlgorithms)
Set the content-encryption algorithms this recipient is willing to unwrap a key for. When set, an attempt to recover content protected under any other algorithm is rejected, mitigating an attacker substituting a weaker content-encryption algorithm into the recipient info.

Parameters:
allowedContentAlgorithms - the set of permitted content-encryption algorithm OIDs.
Returns:
this recipient.

extractSecretKey

protected org.bouncycastle.crypto.CipherParameters extractSecretKey(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncryptionAlgorithm,
                                                                    org.bouncycastle.asn1.x509.AlgorithmIdentifier contentEncryptionAlgorithm,
                                                                    byte[] encryptedContentEncryptionKey)
                                                             throws CMSException
Throws:
CMSException

Bouncy Castle Cryptography Library 1.85