DSAKey Type
Contains the parameters for the DSA algorithm.
Remarks
This type is made up of fields that represent the private and public key parameters used by the DSA algorithm.
DSA Key Notes
A DSA key is made up of a number of individual parameters. When calling CreateKey the Key property is populated with a new private and public key.
After calling Sign the public key must be sent to the recipient along with HashSignature so they may perform signature verification. Likewise you must obtain the public key along with HashSignature in order to perform signature verification.
The public key consists of the following parameters:
- P
- Q
- G
- Y
The component also includes the PublicKey field which holds the PEM formatted public key for ease of use. This is helpful if you are in control of both signature creation and verification process. When sending the public key to a recipient note that not all implementations will support using the PEM formatted value in PublicKey in which case the individual parameters must be sent.
The private key consists of the following parameters:
- P
- Q
- G
- Y
- X
Fields
G String |
Represents the G parameter for the DSA algorithm. |
GB byte [] |
Represents the G parameter for the DSA algorithm. |
P String |
Represents the P parameter for the DSA algorithm. |
PB byte [] |
Represents the P parameter for the DSA algorithm. |
PrivateKey String |
This field is a PEM formatted private key. The purpose of this field is to allow easier management of the private key parameters by using only a single value. |
PublicKey String |
This field is a PEM formatted public key. The purpose of this field is to allow easier management of the public key parameters by using only a single value. |
Q String |
Represents the Q parameter for the DSA algorithm. |
QB byte [] |
Represents the Q parameter for the DSA algorithm. |
X String |
Represents the X parameter for the DSA algorithm. |
XB byte [] |
Represents the X parameter for the DSA algorithm. |
Y String |
Represents the Y parameter for the DSA algorithm. |
YB byte [] |
Represents the Y parameter for the DSA algorithm. |
Constructors
public DSAKey();
The default constructor creates a new DSAKey instance but does not assign a public or private key.
public DSAKey(byte [] P, byte [] Q, byte [] G, byte [] Y);
The public key constructor assigns an existing public key.
public DSAKey(byte [] P, byte [] Q, byte [] G, byte [] Y, byte [] X);
The private key constructor assigns an existing private key.