Package org.bouncycastle.crypto.signers
Class DSASigner
- java.lang.Object
-
- org.bouncycastle.crypto.signers.DSASigner
-
-
Constructor Summary
Constructors Constructor Description DSASigner()
Default configuration, random K values.DSASigner(DSAKCalculator kCalculator)
Configuration with an alternate, possibly deterministic calculator of K.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.math.BigInteger[]
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.protected java.security.SecureRandom
initSecureRandom(boolean needed, java.security.SecureRandom provided)
boolean
verifySignature(byte[] message, java.math.BigInteger r, java.math.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.
-
-
-
Constructor Detail
-
DSASigner
public DSASigner()
Default configuration, random K values.
-
DSASigner
public DSASigner(DSAKCalculator kCalculator)
Configuration with an alternate, possibly deterministic calculator of K.- Parameters:
kCalculator
- a K value calculator.
-
-
Method Detail
-
init
public void init(boolean forSigning, CipherParameters param)
Description copied from interface:DSA
initialise the signer for signature generation or signature verification.
-
generateSignature
public java.math.BigInteger[] generateSignature(byte[] message)
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
public boolean verifySignature(byte[] message, java.math.BigInteger r, java.math.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.- 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.
-
initSecureRandom
protected java.security.SecureRandom initSecureRandom(boolean needed, java.security.SecureRandom provided)
-
-