gnu.crypto.key.dh
Class DHKeyPairRawCodec
- IKeyPairCodec
public class DHKeyPairRawCodec
An object that implements the
IKeyPairCodec operations for the
Raw format to use with Diffie-Hellman keypairs.
PrivateKey | decodePrivateKey(byte[] k)- Decodes an instance of an external private key into its native Java
representation.
|
PublicKey | decodePublicKey(byte[] k)- Decodes an instance of an external public key into its native Java
representation.
|
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
Registry.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
Registry.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()- Returns the unique identifier (within this library) of the format used
to externalise public and private keys.
|
decodePrivateKey
public PrivateKey decodePrivateKey(byte[] k)
Decodes an instance of an external private key into its native Java
representation.
- decodePrivateKey in interface IKeyPairCodec
- a concrete instance of a private key, reconstructed from the
designated input.
decodePublicKey
public PublicKey decodePublicKey(byte[] k)
Decodes an instance of an external public key into its native Java
representation.
- decodePublicKey in interface IKeyPairCodec
- a concrete instance of a public key, reconstructed from the
designated input.
encodePrivateKey
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
Registry.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,
- encodePrivateKey in interface IKeyPairCodec
- the Raw format encoding of the designated key.
encodePublicKey
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
Registry.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,
- encodePublicKey in interface IKeyPairCodec
- the Raw format encoding of the designated key.
getFormatID
public int getFormatID()
Returns the unique identifier (within this library) of the format used
to externalise public and private keys.
- getFormatID in interface IKeyPairCodec
- the identifier of the format, the object supports.
Copyright © 2001, 2002, 2003
Free Software Foundation,
Inc. All Rights Reserved.