com.ibm.crypto.fips.provider

Class DHPublicKey

  1. java.lang.Object
  2. extended bycom.ibm.crypto.fips.provider.DHPublicKey
All implemented interfaces:
java.io.Serializable, java.security.Key, java.security.PublicKey, javax.crypto.interfaces.DHKey, javax.crypto.interfaces.DHPublicKey

  1. public final class DHPublicKey
  2. extends java.lang.Object
  3. implements java.security.PublicKey, javax.crypto.interfaces.DHPublicKey, java.io.Serializable
A public key in X.509 format for the Diffie-Hellman key agreement algorithm.
Version:
1.0, 05/19/03
Author:
Jan Luehe, John Peck
See Also:
DHPrivateKey, java.security.KeyAgreement, Serialized Form

Constructor Summary

Constructor and Description
DHPublicKey(java.math.BigInteger y,java.math.BigInteger p,java.math.BigInteger g)
Make a DH public key out of a public value y, a prime modulus p, and a base generator g.
DHPublicKey(java.math.BigInteger y,java.math.BigInteger p,java.math.BigInteger g,int l)
Make a DH public key out of a public value y, a prime modulus p, a base generator g, and a private-value length l.
DHPublicKey(byte[] encodedKey)
Make a DH public key from its DER encoding (X.509).

Method Summary

Modifier and Type Method and Description
  1. boolean
equals(java.lang.Object obj)
  1. protected
  2. void
finalize()
This function zeroizes the key so that it isn't in memory when GC is done.
  1. java.lang.String
getAlgorithm()
Returns the name of the algorithm associated with this key: "DH"
  1. byte[]
getEncoded()
Get the encoding of the key.
  1. java.lang.String
getFormat()
Returns the encoding format of this key: "X.509"
  1. javax.crypto.spec.DHParameterSpec
getParams()
Returns the key parameters.
  1. java.math.BigInteger
getY()
Returns the public value, y.
  1. int
hashCode()
Calculates a hash code value for the object.
  1. java.lang.String
toString()
  1. void
zeroize()
This function zeroizes the key so that it isn't in memory
Methods inherited from class java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait

Constructor Detail

DHPublicKey

  1. public DHPublicKey(java.math.BigInteger y,
  2. java.math.BigInteger p,
  3. java.math.BigInteger g)
  4. throws java.security.InvalidKeyException
Make a DH public key out of a public value y, a prime modulus p, and a base generator g.
Parameters:
y - the public value
p - the prime modulus
g - the base generator
Throws:
java.security.InvalidKeyException - if the key cannot be encoded

DHPublicKey

  1. public DHPublicKey(java.math.BigInteger y,
  2. java.math.BigInteger p,
  3. java.math.BigInteger g,
  4. int l)
  5. throws java.security.InvalidKeyException
Make a DH public key out of a public value y, a prime modulus p, a base generator g, and a private-value length l.
Parameters:
y - the public value
p - the prime modulus
g - the base generator
l - the private-value length
Throws:
java.security.InvalidKeyException - if the key cannot be encoded

DHPublicKey

  1. public DHPublicKey(byte[] encodedKey)
  2. throws java.security.InvalidKeyException
Make a DH public key from its DER encoding (X.509).
Parameters:
encodedKey - the encoded key
Throws:
java.security.InvalidKeyException - if the encoded key does not represent a Diffie-Hellman public key

Method Detail

getFormat

  1. public java.lang.String getFormat( )
Returns the encoding format of this key: "X.509"
Specified by:
getFormat in interface java.security.Key

getAlgorithm

  1. public java.lang.String getAlgorithm( )
Returns the name of the algorithm associated with this key: "DH"
Specified by:
getAlgorithm in interface java.security.Key

getEncoded

  1. public byte[] getEncoded()
Get the encoding of the key.
Specified by:
getEncoded in interface java.security.Key

getY

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

getParams

  1. public javax.crypto.spec.DHParameterSpec getParams( )
Returns the key parameters.
Specified by:
getParams in interface javax.crypto.interfaces.DHKey
Returns:
the key parameters

toString

  1. public java.lang.String toString( )
Overrides:
toString in class java.lang.Object

hashCode

  1. public int hashCode()
Calculates a hash code value for the object. Objects that are equal will also have the same hashcode.
Overrides:
hashCode in class java.lang.Object

equals

  1. public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

zeroize

  1. public void zeroize()
This function zeroizes the key so that it isn't in memory

finalize

  1. protected void finalize()
This function zeroizes the key so that it isn't in memory when GC is done.
Overrides:
finalize in class java.lang.Object