gnu.crypto.key.srp6

Class SRPPrivateKey

Implemented Interfaces:
Key, PrivateKey, Serializable

public class SRPPrivateKey
extends SRPKey
implements PrivateKey

A representation of an SRP ephemeral private key.

Reference:

  1. SRP Protocol Design
    Thomas J. Wu.

Version:
$Revision: 1.1 $

Field Summary

Fields inherited from class gnu.crypto.key.srp6.SRPKey

N, g

Constructor Summary

SRPPrivateKey(BigInteger N, BigInteger g, BigInteger x)
Public constructor for use from outside this package.
SRPPrivateKey(BigInteger N, BigInteger g, BigInteger x, BigInteger v)
Public constructor for use from outside this package.
SRPPrivateKey(BigInteger[] params)
Default constructor.

Method Summary

boolean
equals(Object obj)
Returns true if the designated object is an instance of SRPPrivateKey and has the same SRP parameter values as this one.
byte[]
getEncoded(int format)
Returns the encoded form of this private key according to the designated format.
BigInteger
getV()
Returns the user's verifier as a BigInteger.
BigInteger
getX()
Returns the private exponent of the key as a BigInteger.
static SRPPrivateKey
valueOf(byte[] k)
A class method that takes the output of the encodePrivateKey() method of an SRP 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.srp6.SRPKey

equals, getAlgorithm, getEncoded, getEncoded, getFormat, getG, getN

Constructor Details

SRPPrivateKey

public SRPPrivateKey(BigInteger N,
                     BigInteger g,
                     BigInteger x)
Public constructor for use from outside this package.

Parameters:
N - the public shared modulus.
g - the generator.
x - the private exponent of the ephemeral key.


SRPPrivateKey

public SRPPrivateKey(BigInteger N,
                     BigInteger g,
                     BigInteger x,
                     BigInteger v)
Public constructor for use from outside this package.

Parameters:
N - the public shared modulus.
g - the generator.
x - the private exponent of the ephemeral key.
v - the user's verifier value (for the server side only).


SRPPrivateKey

(package private)  SRPPrivateKey(BigInteger[] params)
Default constructor. Assumes N and g are already validated.

Parameters:
params - an array of either 3 or 4 values representing N, g, and either v and X for the server, or just X for the client. Those values represent the following:
  1. v (server side): the user's verifier.
  2. X (both sides): the server's or client's ephemeral private exponent.

Method Details

equals

public boolean equals(Object obj)
Returns true if the designated object is an instance of SRPPrivateKey and has the same SRP parameter values as this one.
Overrides:
equals in interface SRPKey

Parameters:
obj - the other non-null SRP key to compare to.

Returns:
true if the designated object is of the same type and value as this one.


getEncoded

public byte[] getEncoded(int format)
Returns the encoded form of this private key according to the designated format.
Overrides:
getEncoded in interface SRPKey

Parameters:
format - the desired format identifier of the resulting encoding.

Returns:
the byte sequence encoding this key according to the designated format.


getV

public BigInteger getV()
Returns the user's verifier as a BigInteger.

Returns:
the user's verifier as a BigInteger if this is an SRP private key of a Host, or null if this is a private SRP key for a User.


getX

public BigInteger getX()
Returns the private exponent of the key as a BigInteger.

Returns:
the private exponent of the key as a BigInteger.


valueOf

public static SRPPrivateKey valueOf(byte[] k)
A class method that takes the output of the encodePrivateKey() method of an SRP 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.


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