Overview | Package | Class | Tree | Deprecated | Index | Help
| Oracle Security Developer Tools Crypto Java API Reference 10g Release 3 (10.1.3) B25378-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.security.crypto.core
Class DHKeyAgreement

`java.lang.Object
oracle.security.crypto.core.KeyAgreement
oracle.security.crypto.core.DHKeyAgreement`

public final class DHKeyAgreement
extends KeyAgreement

*** For internal use only *** Implements the Diffie-Hellman algorithm for static shared secret generation, as specified in ANSI X9.42.

To generate a secret key value, the local party private key and the other party public key must be present. If parameters are missing from any of the keys, they should be known from the application envrionment and must be set before using this class.

Status: Provisional (may be changed in future releases.)

See Also:
  `DHKey`, `DHPublicKey`, `DHPrivateKey`

Constructor Summary
`DHKeyAgreement()` Create a new uninitialized instance of `DHKeyAgreement`.
`DHKeyAgreement(DHPrivateKey privKey)` Create a new instance of `DHKeyAgreement` with the specified local party private key.
`DHKeyAgreement(DHPrivateKey privKey, DHPublicKey pubKey)` Create a new instance of `DHKeyAgreement` with the specified local party private key and the other party public key.
`DHKeyAgreement(DHPublicKey pubKey)` Create a new instance of `DHKeyAgreement` with the specified other party public key.

Method Summary
`java.lang.String` | `algName()` Returns the name of the key agreement algorithm.
`byte[]` | `generateSecret()` Generate the shared secret value from the local party public key and the other party private key.
`AlgorithmIdentifier` | `getAlgID()`
`PublicKey` | `getPublicKey()` Returns the public (other party's) key.
`void` | `setAlgID(AlgorithmIdentifier algID)`
`void` | `setPrivateKey(PrivateKey privKey)` Sets the local party private key for generating secret value.
`void` | `setPublicKey(PublicKey pubKey)` Sets the other party public key for generating secret value.

Methods inherited from class oracle.security.crypto.core.KeyAgreement
`getInstance, getInstance, getInstance`

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

Constructor Detail

### DHKeyAgreement

    public DHKeyAgreement()

  Create a new uninitialized instance of `DHKeyAgreement`.

### DHKeyAgreement

    public DHKeyAgreement(DHPrivateKey privKey)
                   throws InvalidKeyException

  Create a new instance of `DHKeyAgreement` with the specified local party private key.
Parameters:
  `privKey` - The private key for the local party.

### DHKeyAgreement

    public DHKeyAgreement(DHPublicKey pubKey)
                   throws InvalidKeyException

  Create a new instance of `DHKeyAgreement` with the specified other party public key.
Parameters:
  `pubKey` - The public key for the other party.

### DHKeyAgreement

    public DHKeyAgreement(DHPrivateKey privKey,
                          DHPublicKey pubKey)
                   throws InvalidKeyException

  Create a new instance of `DHKeyAgreement` with the specified local party private key and the other party public key.
Parameters:
  `privKey` - The private key for the local party.
  `pubKey` - The public key for the other party.

Method Detail

### setAlgID

    public void setAlgID(AlgorithmIdentifier algID)
                  throws AlgorithmIdentifierException

  Specified by:
    `setAlgID` in class `KeyAgreement`
  Throws:
    `AlgorithmIdentifierException`

### getAlgID

    public AlgorithmIdentifier getAlgID()

  Specified by:
    `getAlgID` in class `KeyAgreement`

### setPrivateKey

    public void setPrivateKey(PrivateKey privKey)
                       throws InvalidKeyException

  Sets the local party private key for generating secret value.
  Specified by:
    `setPrivateKey` in class `KeyAgreement`
  Parameters:
    `privKey` - The private key for the local party.
  Throws:
    `InvalidKeyException`

### setPublicKey

    public void setPublicKey(PublicKey pubKey)
                      throws InvalidKeyException

  Sets the other party public key for generating secret value.
  Specified by:
    `setPublicKey` in class `KeyAgreement`
  Parameters:
    `pubKey` - The public key of the other party.
  Throws:
    `InvalidKeyException`

### getPublicKey

    public PublicKey getPublicKey()

  Returns the public (other party's) key.
  Specified by:
    `getPublicKey` in class `KeyAgreement`
  Returns:
    the other party's public key.

### algName

    public java.lang.String algName()

  Returns the name of the key agreement algorithm.
  Specified by:
    `algName` in class `KeyAgreement`
  Returns:
    a string which identifies the key agreement algorithm

### generateSecret

    public byte[] generateSecret()
                          throws KeyAgreementException

  Description copied from class: `KeyAgreement`
  Generate the shared secret value from the local party public key and the other party private key.
  Specified by:
    `generateSecret` in class `KeyAgreement`
  Throws:
    `KeyAgreementException`

Overview | Package | Class | Tree | Deprecated | Index | Help
| Oracle Security Developer Tools Crypto Java API Reference 10g Release 3 (10.1.3) B25378-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005, 2006 , Oracle. All rights reserved.