Package org.bouncycastle.cms.jcajce
Class JceKeyAgreeRecipient
- java.lang.Object
 - 
- org.bouncycastle.cms.jcajce.JceKeyAgreeRecipient
 
 
- 
- All Implemented Interfaces:
 KeyAgreeRecipient,Recipient
- Direct Known Subclasses:
 JceKeyAgreeAuthenticatedRecipient,JceKeyAgreeEnvelopedRecipient
public abstract class JceKeyAgreeRecipient extends java.lang.Object implements KeyAgreeRecipient
 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected EnvelopedDataHelpercontentHelperprotected EnvelopedDataHelperhelper 
- 
Constructor Summary
Constructors Constructor Description JceKeyAgreeRecipient(java.security.PrivateKey recipientKey) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.security.KeyextractSecretKey(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncryptionAlgorithm, org.bouncycastle.asn1.x509.AlgorithmIdentifier contentEncryptionAlgorithm, org.bouncycastle.asn1.x509.SubjectPublicKeyInfo senderKey, org.bouncycastle.asn1.ASN1OctetString userKeyingMaterial, byte[] encryptedContentEncryptionKey)org.bouncycastle.asn1.x509.AlgorithmIdentifiergetPrivateKeyAlgorithmIdentifier()JceKeyAgreeRecipientsetContentProvider(java.lang.String providerName)Set the provider to use for content processing.JceKeyAgreeRecipientsetContentProvider(java.security.Provider provider)Set the provider to use for content processing.JceKeyAgreeRecipientsetPrivateKeyAlgorithmIdentifier(org.bouncycastle.asn1.x509.AlgorithmIdentifier privKeyAlgID)Set the algorithm identifier for the private key.JceKeyAgreeRecipientsetProvider(java.lang.String providerName)Set the provider to use for key recovery and content processing.JceKeyAgreeRecipientsetProvider(java.security.Provider provider)Set the provider to use for key recovery and content processing.protected java.security.KeyunwrapSessionKey(org.bouncycastle.asn1.ASN1ObjectIdentifier wrapAlg, javax.crypto.SecretKey agreedKey, org.bouncycastle.asn1.ASN1ObjectIdentifier contentEncryptionAlgorithm, byte[] encryptedContentEncryptionKey)- 
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.KeyAgreeRecipient
getRecipientOperator 
 - 
 
 - 
 
- 
- 
Field Detail
- 
helper
protected EnvelopedDataHelper helper
 
- 
contentHelper
protected EnvelopedDataHelper contentHelper
 
 - 
 
- 
Method Detail
- 
setProvider
public JceKeyAgreeRecipient setProvider(java.security.Provider provider)
Set the provider to use for key recovery and content processing.- Parameters:
 provider- provider to use.- Returns:
 - this recipient.
 
 
- 
setProvider
public JceKeyAgreeRecipient setProvider(java.lang.String providerName)
Set the provider to use for key recovery and content processing.- Parameters:
 providerName- the name of the provider to use.- Returns:
 - this recipient.
 
 
- 
setContentProvider
public JceKeyAgreeRecipient setContentProvider(java.security.Provider provider)
Set the provider to use for content processing. If providerName is null a "no provider" search will be used to satisfy getInstance calls.- Parameters:
 provider- the provider to use.- Returns:
 - this recipient.
 
 
- 
setContentProvider
public JceKeyAgreeRecipient setContentProvider(java.lang.String providerName)
Set the provider to use for content processing. If providerName is null a "no provider" search will be used to satisfy getInstance calls.- Parameters:
 providerName- the name of the provider to use.- Returns:
 - this recipient.
 
 
- 
setPrivateKeyAlgorithmIdentifier
public JceKeyAgreeRecipient setPrivateKeyAlgorithmIdentifier(org.bouncycastle.asn1.x509.AlgorithmIdentifier privKeyAlgID)
Set the algorithm identifier for the private key. You'll want to use this if you are dealing with a HSM and it is not possible to get the encoding of the private key.- Parameters:
 privKeyAlgID- the name of the provider to use.- Returns:
 - this recipient.
 
 
- 
unwrapSessionKey
protected java.security.Key unwrapSessionKey(org.bouncycastle.asn1.ASN1ObjectIdentifier wrapAlg, javax.crypto.SecretKey agreedKey, org.bouncycastle.asn1.ASN1ObjectIdentifier contentEncryptionAlgorithm, byte[] encryptedContentEncryptionKey) throws CMSException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException- Throws:
 CMSExceptionjava.security.InvalidKeyExceptionjava.security.NoSuchAlgorithmException
 
- 
extractSecretKey
protected java.security.Key extractSecretKey(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncryptionAlgorithm, org.bouncycastle.asn1.x509.AlgorithmIdentifier contentEncryptionAlgorithm, org.bouncycastle.asn1.x509.SubjectPublicKeyInfo senderKey, org.bouncycastle.asn1.ASN1OctetString userKeyingMaterial, byte[] encryptedContentEncryptionKey) throws CMSException- Throws:
 CMSException
 
- 
getPrivateKeyAlgorithmIdentifier
public org.bouncycastle.asn1.x509.AlgorithmIdentifier getPrivateKeyAlgorithmIdentifier()
- Specified by:
 getPrivateKeyAlgorithmIdentifierin interfaceKeyAgreeRecipient
 
 - 
 
 -