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.