Bouncy Castle Cryptography Library 1.86

org.bouncycastle.crypto.params
Class DHPrivateKeyParameters

java.lang.Object
  extended byorg.bouncycastle.crypto.params.AsymmetricKeyParameter
      extended byorg.bouncycastle.crypto.params.DHKeyParameters
          extended byorg.bouncycastle.crypto.params.DHPrivateKeyParameters
All Implemented Interfaces:
CipherParameters, javax.security.auth.Destroyable

public class DHPrivateKeyParameters
extends DHKeyParameters
implements javax.security.auth.Destroyable


Constructor Summary
DHPrivateKeyParameters(java.math.BigInteger x, DHParameters params)
           
 
Method Summary
 void destroy()
          Destroy this object, dropping its reference to the private value.
 boolean equals(java.lang.Object obj)
           
 java.math.BigInteger getX()
           
 int hashCode()
           
 boolean isDestroyed()
           
 
Methods inherited from class org.bouncycastle.crypto.params.DHKeyParameters
getParameters
 
Methods inherited from class org.bouncycastle.crypto.params.AsymmetricKeyParameter
isPrivate
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DHPrivateKeyParameters

public DHPrivateKeyParameters(java.math.BigInteger x,
                              DHParameters params)
Method Detail

getX

public java.math.BigInteger getX()

hashCode

public int hashCode()
Overrides:
hashCode in class DHKeyParameters

equals

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

destroy

public void destroy()
Destroy this object, dropping its reference to the private value.

As BigInteger is immutable the private value cannot be zeroized in place; destruction drops the internal reference so the value becomes unreachable (cleared on garbage collection). The (public) domain parameters are retained. After destruction getX() throws IllegalStateException, hashCode() retains its pre-destruction value and the object is equal only to itself.

Specified by:
destroy in interface javax.security.auth.Destroyable

isDestroyed

public boolean isDestroyed()
Specified by:
isDestroyed in interface javax.security.auth.Destroyable

Bouncy Castle Cryptography Library 1.86