For the latest news and information visit
The GNU Crypto project

gnu.crypto.key.dss
Class DSSPrivateKey

java.lang.Object
  extended bygnu.crypto.key.dss.DSSKey
      extended bygnu.crypto.key.dss.DSSPrivateKey
All Implemented Interfaces:
java.security.interfaces.DSAKey, java.security.interfaces.DSAPrivateKey, java.security.Key, java.security.PrivateKey, java.io.Serializable

public class DSSPrivateKey
extends DSSKey
implements java.security.PrivateKey, java.security.interfaces.DSAPrivateKey

An object that embodies a DSS (Digital Signature Standard) private key.

Version:
$Revision: 1.2 $
See Also:
getEncoded(int), Serialized Form

Field Summary
 
Fields inherited from class gnu.crypto.key.dss.DSSKey
g, p, q
 
Fields inherited from interface java.security.PrivateKey
serialVersionUID
 
Fields inherited from interface java.security.interfaces.DSAPrivateKey
serialVersionUID
 
Constructor Summary
DSSPrivateKey(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, java.math.BigInteger x)
          Trivial constructor.
 
Method Summary
 boolean equals(java.lang.Object obj)
          Returns true if the designated object is an instance of DSAPrivateKey and has the same DSS (Digital Signature Standard) parameter values as this one.
 byte[] getEncoded(int format)
          Returns the encoded form of this private key according to the designated format.
 java.math.BigInteger getX()
           
static DSSPrivateKey valueOf(byte[] k)
          A class method that takes the output of the encodePrivateKey() method of a DSS keypair codec object (an instance implementing IKeyPairCodec for DSS keys, and re-constructs an instance of this object.
 
Methods inherited from class gnu.crypto.key.dss.DSSKey
getAlgorithm, getEncoded, getFormat, getParams
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.security.Key
getAlgorithm, getEncoded, getFormat
 
Methods inherited from interface java.security.interfaces.DSAKey
getParams
 

Constructor Detail

DSSPrivateKey

public DSSPrivateKey(java.math.BigInteger p,
                     java.math.BigInteger q,
                     java.math.BigInteger g,
                     java.math.BigInteger x)

Trivial constructor.

Parameters:
p - the public modulus.
q - the public prime divisor of p-1.
g - a generator of the unique cyclic group Z* p.
x - the private key part.
Method Detail

valueOf

public static DSSPrivateKey valueOf(byte[] k)

A class method that takes the output of the encodePrivateKey() method of a DSS keypair codec object (an instance implementing IKeyPairCodec for DSS keys, and re-constructs an instance of this object.

Parameters:
k - the contents of a previously encoded instance of this object.
Throws:
java.lang.ArrayIndexOutOfBoundsException - if there is not enough bytes, in k, to represent a valid encoding of an instance of this object.
java.lang.IllegalArgumentException - if the byte sequence does not represent a valid encoding of an instance of this object.

getX

public java.math.BigInteger getX()
Specified by:
getX in interface java.security.interfaces.DSAPrivateKey

getEncoded

public byte[] getEncoded(int format)

Returns the encoded form of this private key according to the designated format.

Specified by:
getEncoded in class DSSKey
Parameters:
format - the desired format identifier of the resulting encoding.
Returns:
the byte sequence encoding this key according to the designated format.
Throws:
java.lang.IllegalArgumentException - if the format is not supported.
See Also:
DSSKeyPairRawCodec

equals

public boolean equals(java.lang.Object obj)

Returns true if the designated object is an instance of DSAPrivateKey and has the same DSS (Digital Signature Standard) parameter values as this one.

Overrides:
equals in class DSSKey
Parameters:
obj - the other non-null DSS key to compare to.
Returns:
true if the designated object is of the same type and value as this one.

For the latest news and information visit
The GNU Crypto project

Copyright © 2001, 2002, 2003 Free Software Foundation, Inc. All Rights Reserved.