|
Oracle Security Developer Tools PKI SDK CMP Java API Reference 10g (10.1.4.0.1) B28166-01 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
oracle.security.crypto.cmp.EncryptedValue
Encrypted content for encrypted key value and encrypted certificate value for CertifiedKeyPair objects.
| Constructor Summary | |
EncryptedValue()Create new, empty EncryptedValue. |
|
EncryptedValue(byte[] encValue)Create a new EncryptedValue with the specified encypted value |
|
EncryptedValue(java.io.InputStream is) |
|
| Method Summary | |
static byte[] |
decrypt(EncryptedValue encVal, oracle.security.crypto.core.PrivateKey recipKey)Decrypt an EncryptedValue and return the bytes of the value. |
static EncryptedValue |
encrypt(oracle.security.crypto.asn1.ASN1Object obj, oracle.security.crypto.core.SymmetricKey encrKey, oracle.security.crypto.core.PublicKey recipKey)Creates a new EncryptedValue instance whose value is the DER encoding of the given ASN1Object. |
byte[] |
getEncSymmKey()Returns the encrypted symmetric key used to encrypt the value. |
byte[] |
getEncValue()Returns the encrypted value of this object. |
oracle.security.crypto.core.AlgorithmIdentifier |
getIntendedAlg()Returns the intended algorithm of the encrypted value. |
oracle.security.crypto.core.AlgorithmIdentifier |
getKeyAlg()Returns the algorithm used to encrypt the symmetric key. |
oracle.security.crypto.core.AlgorithmIdentifier |
getSymmAlg()Returns the symmetric algorithm used to encrypt the value. |
byte[] |
getValueHint()Returns the value hint of the encrypted value. |
void |
input(java.io.InputStream is) |
int |
length() |
void |
output(java.io.OutputStream os) |
void |
setEncSymmKey(byte[] encSymmKey)Sets the encrypted symmetric key used to encrypt the value. |
void |
setIntendedAlg(oracle.security.crypto.core.AlgorithmIdentifier intendedAlg)Sets the intended algorithm for the encrypted value. |
void |
setKeyAlg(oracle.security.crypto.core.AlgorithmIdentifier keyAlg)Sets the algorithm used to encrypt the symmetric key. |
void |
setSymmAlg(oracle.security.crypto.core.AlgorithmIdentifier symmAlg)Sets the symmetric algorithm used to encrypt the value. |
void |
setValueHint(byte[] valueHint)Sets the value hint for the encrypted value. |
java.lang.String |
toString() |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public EncryptedValue()
EncryptedValue. Note that an instance created using this constructor is not valid, and is intended primarily for use in conjunction with the input(java.io.InputStream) method.public EncryptedValue(byte[] encValue)
EncryptedValue with the specified encypted value
public EncryptedValue(java.io.InputStream is)
throws java.io.IOException
| Method Detail |
public static EncryptedValue encrypt(oracle.security.crypto.asn1.ASN1Object obj,
oracle.security.crypto.core.SymmetricKey encrKey,
oracle.security.crypto.core.PublicKey recipKey)
throws oracle.security.crypto.core.AlgorithmIdentifierException,
oracle.security.crypto.core.CipherException,
oracle.security.crypto.core.InvalidKeyException
EncryptedValue instance whose value is the DER encoding of the given ASN1Object.
For example, to encrypt a certificate:
// The certificate to be encrypted.
X509 cert = ... ;
// The public key of the recipient.
PublicKey pubKey = ... ;
// Generate a random triple-DES encryption key.
SymmetricKeyGenerator keyGen =
SymmetricKeyGenerator.getInstance(AlgID.DES_EDE3_CBC);
SymmetricKey symmKey = keyGen.generateKey();
// Create the EncryptedValue.
EncryptedValue encCert = EncryptedValue.encrypt(cert, symmKey, pubKey);
obj - The ASN1Object to be encrypted.encrKey - The symmetric key that will be used to encrypt the object. Must have a valid algorithm identifer.recipKey - The public key that will be used to encrypt the symmetric key for the recipient.oracle.security.crypto.core.AlgorithmIdentifierExceptionoracle.security.crypto.core.CipherExceptionoracle.security.crypto.core.InvalidKeyException
public static byte[] decrypt(EncryptedValue encVal,
oracle.security.crypto.core.PrivateKey recipKey)
throws oracle.security.crypto.core.AlgorithmIdentifierException,
oracle.security.crypto.core.CipherException,
oracle.security.crypto.core.InvalidKeyException
EncryptedValue and return the bytes of the value.
For example, to decrypt an EncryptedValue containing a certificate:
// The EncryptedValue.
EncryptedValue encVal = ... ;
// The recipient's private key.
PrivateKey privKey = ... ;
// Decrypt and construct the resulting certificate from
// its DER encoding.
byte[] val = EncryptedValue.decrypt(encVal, privKey);
X509 cert = new X509(val);
encVal - The EncryptedValue to be decrypted.recipKey - The private key of the recipient, corresponding to the public key used by the sender to encrypt.oracle.security.crypto.core.AlgorithmIdentifierExceptionoracle.security.crypto.core.CipherExceptionoracle.security.crypto.core.InvalidKeyExceptionpublic byte[] getEncValue()
public void setIntendedAlg(oracle.security.crypto.core.AlgorithmIdentifier intendedAlg)
public oracle.security.crypto.core.AlgorithmIdentifier getIntendedAlg()
public void setSymmAlg(oracle.security.crypto.core.AlgorithmIdentifier symmAlg)
public oracle.security.crypto.core.AlgorithmIdentifier getSymmAlg()
public void setEncSymmKey(byte[] encSymmKey)
public byte[] getEncSymmKey()
public void setKeyAlg(oracle.security.crypto.core.AlgorithmIdentifier keyAlg)
public oracle.security.crypto.core.AlgorithmIdentifier getKeyAlg()
public void setValueHint(byte[] valueHint)
public byte[] getValueHint()
public java.lang.String toString()
public void input(java.io.InputStream is)
throws java.io.IOException
input in interface oracle.security.crypto.util.Streamablejava.io.IOException
public void output(java.io.OutputStream os)
throws java.io.IOException
output in interface oracle.security.crypto.util.Streamablejava.io.IOExceptionpublic int length()
length in interface oracle.security.crypto.util.Streamable
|
Oracle Security Developer Tools PKI SDK CMP Java API Reference 10g (10.1.4.0.1) B28166-01 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||