Skip navigation links

Oracle Fusion Middleware Crypto FIPS Java API Reference for Oracle Security Developer Tools
11g Release 1 (11.1.1)

E10696-04


oracle.security.crypto.core
Class DHPublicKey

java.lang.Object
  extended by oracle.security.crypto.core.DHKey
      extended by oracle.security.crypto.core.DHPublicKey

All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, java.security.Key, java.security.PublicKey, javax.crypto.interfaces.DHKey, javax.crypto.interfaces.DHPublicKey, ASN1Object, Streamable

public class DHPublicKey
extends DHKey
implements PublicKey, javax.crypto.interfaces.DHPublicKey

Diffie-Hellman public key as described in ANSI X9.42.

The Diffie-Hellman public key contains a DHParams and a public key value y is represented as the X509 type SubjectPublicKeyInfo.

See Also:
DHKey, DHPublicKey, DHParams, Serialized Form

Field Summary

 

Fields inherited from class oracle.security.crypto.core.DHKey
params

 

Fields inherited from interface javax.crypto.interfaces.DHPublicKey
serialVersionUID

 

Constructor Summary
DHPublicKey()
          Constructs a new, uninitialized instance.
DHPublicKey(java.math.BigInteger y, DHParams params)
          Constructs a new instance with the given set of parameters and value of y.
DHPublicKey(java.io.InputStream is)
          Constructs a new instance by reading its encoding from the given input stream.

 

Method Summary
 java.lang.Object clone()
          Create a deep clone of this DHKey object.
 void erase()
          Erases the sensitive key material of a private or symmetric key, making the key un-usable.
 AlgorithmIdentifier getAlgID()
          Returns the algorithm identifier for this key.
 boolean getAllowExport()
          Always returns true.
 ASN1Object getContents()
          Returns the contents of this key.
 byte[] getEncoded()
          Returns the encoded form of this key.
 java.lang.String getFormat()
          Returns a string which indicates the format of this object's encoding.
 java.math.BigInteger getY()
          Gets the public key value y.
 void initialize(AlgorithmIdentifier algID, ASN1Object contents)
          Initializes this instance from the given algorithm paramters and key contents.
 void input(java.io.InputStream is)
          Inputs a DHPublicKey object by reading its encoding from the given input stream.
 int length()
          Gets the length of the encoding of this object.
 void output(java.io.OutputStream os)
          Outputs the ASN1 encoding of this object to a given output stream.
 void setParams(DHParams params)
          Sets the parameters for the Diffie-Hellman key.
 java.lang.String toString()
          Returns a string representation of this object.

 

Methods inherited from class oracle.security.crypto.core.DHKey
getAlgorithm, getBitLength, getParams, readExternal, writeExternal

 

Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

 

Methods inherited from interface oracle.security.crypto.core.Key
getAlgorithm, getBitLength

 

Methods inherited from interface java.io.Externalizable
readExternal, writeExternal

 

Methods inherited from interface javax.crypto.interfaces.DHKey
getParams

 

Constructor Detail

DHPublicKey

public DHPublicKey()
Constructs a new, uninitialized instance.

DHPublicKey

public DHPublicKey(java.math.BigInteger y,
                   DHParams params)
Constructs a new instance with the given set of parameters and value of y.
Parameters:
y - the value of y
params - the DHParams of this DHPublicKey

DHPublicKey

public DHPublicKey(java.io.InputStream is)
            throws java.io.IOException
Constructs a new instance by reading its encoding from the given input stream.
Parameters:
is - the input stream from which this object will be read
Throws:
java.io.IOException - If an input exception occured

Method Detail

getEncoded

public byte[] getEncoded()
Description copied from interface: Key
Returns the encoded form of this key.
Specified by:
getEncoded in interface java.security.Key

getAllowExport

public boolean getAllowExport()
Always returns true.
Returns:
Whether or not this key's material may be exported in plaintext.
Since:
3.0
See Also:
FIPS_140_2.getAllowKeyExport()

getFormat

public java.lang.String getFormat()
Returns a string which indicates the format of this object's encoding.
Specified by:
getFormat in interface java.security.Key
Returns:
"X.509"

erase

public void erase()
Description copied from interface: Key
Erases the sensitive key material of a private or symmetric key, making the key un-usable. Keys may be erased multiple times with no consequences.

Note: After erase() has been invoked, no other methods of the Key object are guaranteed to function correctly. In particular, invoking another method after erase() may result in a NullPointerException being thrown.


clone

public java.lang.Object clone()
Description copied from class: DHKey
Create a deep clone of this DHKey object.
Specified by:
clone in class DHKey
Returns:
A deep clone of the Key instance.

initialize

public void initialize(AlgorithmIdentifier algID,
                       ASN1Object contents)
                throws AlgorithmIdentifierException,
                       InvalidInputException
Description copied from interface: PublicKey
Initializes this instance from the given algorithm paramters and key contents.
Throws:
AlgorithmIdentifierException
InvalidInputException

getAlgID

public AlgorithmIdentifier getAlgID()
Description copied from interface: PublicKey
Returns the algorithm identifier for this key.

getContents

public ASN1Object getContents()
Description copied from interface: PublicKey
Returns the contents of this key.

setParams

public void setParams(DHParams params)
Description copied from class: DHKey
Sets the parameters for the Diffie-Hellman key. This method is used to set Diffie-Hellman parameters common to a group of users which are known from application context.
Specified by:
setParams in class DHKey
Parameters:
params - An instance of DHParams.

getY

public java.math.BigInteger getY()
Gets the public key value y.
Specified by:
getY in interface javax.crypto.interfaces.DHPublicKey
Returns:
The public key value y.

toString

public java.lang.String toString()
Returns a string representation of this object.
Overrides:
toString in class java.lang.Object
Returns:
A string representation of this object.

input

public void input(java.io.InputStream is)
           throws java.io.IOException
Inputs a DHPublicKey object by reading its encoding from the given input stream.
Specified by:
input in interface Streamable
Parameters:
is - The input stream from which this object will be read
Throws:
java.io.IOException - If an input exception occured.

output

public void output(java.io.OutputStream os)
            throws java.io.IOException
Outputs the ASN1 encoding of this object to a given output stream.
Specified by:
output in interface Streamable
Parameters:
os - The output stream to which the encoding of this object will be written.
Throws:
java.io.IOException - If an output exception occured.

length

public int length()
Gets the length of the encoding of this object.
Specified by:
length in interface Streamable
Returns:
The length of the ASN1 encoding of this object.

Skip navigation links

Oracle Fusion Middleware Crypto FIPS Java API Reference for Oracle Security Developer Tools
11g Release 1 (11.1.1)

E10696-04


Copyright © 2005, 2011 , Oracle. All rights reserved.