gnu.crypto.key.dh
Class DHKeyPairRawCodec
public
class
DHKeyPairRawCodec
extends Object
implements IKeyPairCodec
An object that implements the IKeyPairCodec operations for the
Raw format to use with Diffie-Hellman keypairs.
Version: $Revision: 1.2 $
| Method Summary |
| PrivateKey | decodePrivateKey(byte[] k) |
| PublicKey | decodePublicKey(byte[] k) |
| byte[] | encodePrivateKey(PrivateKey key)
Returns the encoded form of the designated Diffie-Hellman private key
according to the Raw format supported by this library.
The Raw format for a DH private key, in this implementation, is
a byte sequence consisting of the following:
- 4-byte magic consisting of the value of the literal
MAGIC_RAW_DH_PRIVATE_KEY,
-
- 1-byte version consisting of the constant: 0x01,
- 4-byte count of following bytes representing the DH parameter
q,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter q,
- 4-byte count of following bytes representing the DH parameter
p in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter p,
- 4-byte count of following bytes representing the DH parameter
g,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter g,
- 4-byte count of following bytes representing the DH parameter
x,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter x,
|
| byte[] | encodePublicKey(PublicKey key)
Returns the encoded form of the designated Diffie-Hellman public key
according to the Raw format supported by this library.
The Raw format for a DH public key, in this implementation, is
a byte sequence consisting of the following:
- 4-byte magic consisting of the value of the literal
MAGIC_RAW_DH_PUBLIC_KEY,
-
- 1-byte version consisting of the constant: 0x01,
- 4-byte count of following bytes representing the DH parameter
q in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter q,
- 4-byte count of following bytes representing the DH parameter
p in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter p,
- 4-byte count of following bytes representing the DH parameter
g,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter g,
- 4-byte count of following bytes representing the DH parameter
y,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter y,
|
| int | getFormatID() |
public PrivateKey decodePrivateKey(byte[] k)
public PublicKey decodePublicKey(byte[] k)
public byte[] encodePrivateKey(PrivateKey key)
Returns the encoded form of the designated Diffie-Hellman private key
according to the Raw format supported by this library.
The Raw format for a DH private key, in this implementation, is
a byte sequence consisting of the following:
- 4-byte magic consisting of the value of the literal
MAGIC_RAW_DH_PRIVATE_KEY,
-
- 1-byte version consisting of the constant: 0x01,
- 4-byte count of following bytes representing the DH parameter
q,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter q,
- 4-byte count of following bytes representing the DH parameter
p in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter p,
- 4-byte count of following bytes representing the DH parameter
g,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter g,
- 4-byte count of following bytes representing the DH parameter
x,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter x,
Parameters: key the key to encode.
Returns: the Raw format encoding of the designated key.
Throws: IllegalArgumentException if the designated key is not a DH one.
See Also: MAGIC_RAW_DH_PRIVATE_KEY
public byte[] encodePublicKey(PublicKey key)
Returns the encoded form of the designated Diffie-Hellman public key
according to the Raw format supported by this library.
The Raw format for a DH public key, in this implementation, is
a byte sequence consisting of the following:
- 4-byte magic consisting of the value of the literal
MAGIC_RAW_DH_PUBLIC_KEY,
-
- 1-byte version consisting of the constant: 0x01,
- 4-byte count of following bytes representing the DH parameter
q in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter q,
- 4-byte count of following bytes representing the DH parameter
p in internet order,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter p,
- 4-byte count of following bytes representing the DH parameter
g,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter g,
- 4-byte count of following bytes representing the DH parameter
y,
- n-bytes representation of a BigInteger obtained by invoking
the
toByteArray() method on the DH parameter y,
Parameters: key the key to encode.
Returns: the Raw format encoding of the designated key.
Throws: IllegalArgumentException if the designated key is not a DH one.
See Also: MAGIC_RAW_DH_PUBLIC_KEY
public int getFormatID()