Class DSASigner
java.lang.Object
org.gudy.bouncycastle.crypto.signers.DSASigner
- All Implemented Interfaces:
DSA
The Digital Signature Algorithm - as described in "Handbook of Applied
Cryptography", pages 452 - 453.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) DSAKeyParameters
(package private) SecureRandom
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate BigInteger
calculateE
(BigInteger n, byte[] message) generateSignature
(byte[] message) generate a signature for the given message using the key we were initialised with.void
init
(boolean forSigning, CipherParameters param) initialise the signer for signature generation or signature verification.boolean
verifySignature
(byte[] message, BigInteger r, BigInteger s) return true if the value r and s represent a DSA signature for the passed in message for standard DSA the message should be a SHA-1 hash of the real message to be verified.
-
Field Details
-
key
DSAKeyParameters key -
random
SecureRandom random
-
-
Constructor Details
-
DSASigner
public DSASigner()
-
-
Method Details
-
init
Description copied from interface:DSA
initialise the signer for signature generation or signature verification. -
generateSignature
generate a signature for the given message using the key we were initialised with. For conventional DSA the message should be a SHA-1 hash of the message of interest.- Specified by:
generateSignature
in interfaceDSA
- Parameters:
message
- the message that will be verified later.- Returns:
- two big integers representing the r and s values respectively.
-
verifySignature
return true if the value r and s represent a DSA signature for the passed in message for standard DSA the message should be a SHA-1 hash of the real message to be verified.- Specified by:
verifySignature
in interfaceDSA
- Parameters:
message
- the message that was supposed to have been signed.r
- the r signature value.s
- the s signature value.
-
calculateE
-