org.bouncycastle.crypto.signers
Class DSASigner
java.lang.Object
|
+--org.bouncycastle.crypto.signers.DSASigner
- All Implemented Interfaces:
- DSA, DSAExt
- public class DSASigner
- extends java.lang.Object
- implements DSAExt
The Digital Signature Algorithm - as described in "Handbook of Applied
Cryptography", pages 452 - 453.
Constructor Summary |
DSASigner()
Default configuration, random K values. |
DSASigner(DSAKCalculator kCalculator)
Configuration with an alternate, possibly deterministic calculator of K. |
Method Summary |
java.math.BigInteger[] |
generateSignature(byte[] message)
generate a signature for the given message using the key we were
initialised with. |
java.math.BigInteger |
getOrder()
Get the order of the group that the r, s values in signatures belong to. |
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. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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.
init
public void init(boolean forSigning,
CipherParameters param)
- Description copied from interface:
DSA
- initialise the signer for signature generation or signature
verification.
- Specified by:
init
in interface DSA
- Following copied from interface:
org.bouncycastle.crypto.DSA
- Parameters:
forSigning
- true if we are generating a signature, false
otherwise.param
- key parameters for signature generation.
getOrder
public java.math.BigInteger getOrder()
- Description copied from interface:
DSAExt
- Get the order of the group that the r, s values in signatures belong to.
- Specified by:
getOrder
in interface DSAExt
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 interface DSA
- Parameters:
message
- the message that will be verified later.
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 interface DSA
- Following copied from interface:
org.bouncycastle.crypto.DSA
- 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)