Class HashCommitter
java.lang.Object
org.bouncycastle.crypto.commitments.HashCommitter
- All Implemented Interfaces:
Committer
A basic hash-committer as described in "Making Mix Nets Robust for Electronic Voting by Randomized Partial Checking",
by Jakobsson, Juels, and Rivest (11th Usenix Security Symposium, 2002).
Use this class if you can enforce fixed length for messages. If you need something more general, use the GeneralHashCommitter.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncommit
(byte[] message) Generate a commitment for the passed in message.boolean
isRevealed
(Commitment commitment, byte[] message) Return true if the passed in commitment represents a commitment to the passed in message.
-
Constructor Details
-
HashCommitter
Base Constructor. The maximum message length that can be committed to is half the length of the internal block size for the digest (ExtendedDigest.getBlockLength()).- Parameters:
digest
- digest to use for creating commitments.random
- source of randomness for generating secrets.
-
-
Method Details
-
commit
Generate a commitment for the passed in message. -
isRevealed
Return true if the passed in commitment represents a commitment to the passed in message.- Specified by:
isRevealed
in interfaceCommitter
- Parameters:
commitment
- a commitment previously generated.message
- the message that was expected to have been committed to.- Returns:
- true if commitment matches message, false otherwise.
-