Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Cryptix V3.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## cryptix.provider.elgamal
Class BaseElGamalPrivateKey

    java.lang.Object
      |
      +--cryptix.provider.elgamal.BaseElGamalPublicKey
            |
            +--cryptix.provider.elgamal.BaseElGamalPrivateKey

public class BaseElGamalPrivateKey
extends BaseElGamalPublicKey
implements ElGamalPrivateKey

A class representing an ElGamal private key. This can also act as an ElGamal public key. It is called BaseElGamalPrivateKey to distinguish it from the interface ElGamalPrivateKey, without having to use fully-qualified names.

References:

1. Bruce Schneier, "Section 19.6 ElGamal," Applied Cryptography, 2nd Edition, John Wiley & Sons, 1996.

2. IEEE P1363 draft standard, http://stdsbbs.ieee.org/groups/1363/index.html

Copyright © 1997 Systemics Ltd on behalf of the Cryptix Development Team.
All rights reserved.

$Revision: 1.2 $

Since:
  Cryptix 2.2.2
Author:
  David Hopwood
See Also:
  `ElGamalKey`, `java.security.Cipher`, `Signature`, Serialized Form

Field Summary
`protected java.math.BigInteger` | `x`

Fields inherited from class cryptix.provider.elgamal.BaseElGamalPublicKey
`g, p, y`

Fields inherited from interface java.security.PrivateKey
`serialVersionUID`

Fields inherited from interface java.security.Key
`serialVersionUID`

Constructor Summary
`` | `BaseElGamalPrivateKey(java.math.BigInteger p, java.math.BigInteger g, java.math.BigInteger x)` Constructs a BaseElGamalPrivateKey with the specified prime p, base g, and private value x.
`` | `BaseElGamalPrivateKey(java.math.BigInteger p, java.math.BigInteger g, java.math.BigInteger x, java.math.BigInteger y)` Constructs a BaseElGamalPrivateKey with the specified prime p, base g, private value x, and pre-calculated public value y = g x mod p.
`protected` | `BaseElGamalPrivateKey(ElGamalParams params, java.math.BigInteger x)` Constructs a BaseElGamalPublicKey with a prime and base taken from an object implementing java.security.interfaces.ElGamalParams, and the specified private value x.

Method Summary
`java.math.BigInteger` | `getX()` Returns the value of x (the private key).

Methods inherited from class cryptix.provider.elgamal.BaseElGamalPublicKey
`getAlgorithm, getEncoded, getFormat, getG, getP, getY`

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

Field Detail

### x

    protected java.math.BigInteger x

Constructor Detail

### BaseElGamalPrivateKey

    public BaseElGamalPrivateKey(java.math.BigInteger p,
                                 java.math.BigInteger g,
                                 java.math.BigInteger x,
                                 java.math.BigInteger y)

  Constructs a BaseElGamalPrivateKey with the specified prime p, base g, private value x, and pre-calculated public value y = g x mod p.
  Parameters:
    `p` - the prime as a java.math.BigInteger
    `g` - the base as a java.math.BigInteger
    `x` - the value of x as a java.math.BigInteger
    `y` - the value of y as a java.math.BigInteger
  Throws:
    NullPointerException - if p == null || g == null || x == null || y == null

### BaseElGamalPrivateKey

    public BaseElGamalPrivateKey(java.math.BigInteger p,
                                 java.math.BigInteger g,
                                 java.math.BigInteger x)

  Constructs a BaseElGamalPrivateKey with the specified prime p, base g, and private value x.

  The public value y = g x mod p will be calculated.

  Parameters:
    `p` - the prime as a java.math.BigInteger
    `g` - the base as a java.math.BigInteger
    `x` - the value of x as a java.math.BigInteger
  Throws:
    NullPointerException - if p == null || g == null || x == null

### BaseElGamalPrivateKey

    protected BaseElGamalPrivateKey(ElGamalParams params,
                                    java.math.BigInteger x)

  Constructs a BaseElGamalPublicKey with a prime and base taken from an object implementing java.security.interfaces.ElGamalParams, and the specified private value x.

  The public value y = g x mod p will be calculated.

  Parameters:
    `params` - the parameters for this key
    `x` - the value of x as a java.math.BigInteger
  Throws:
    NullPointerException - if params == null || x == null
  See Also:
    `ElGamalParams`

Method Detail

### getX

    public java.math.BigInteger getX()

  Returns the value of x (the private key).
  Specified by:
    getX in interface ElGamalPrivateKey
  Returns:
    x as a java.math.BigInteger

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Cryptix V3.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (C) 1995-2000 The Cryptix Foundation Ltd. All rights reserved.