org.logi.crypto.keys
Interface BlindSignatureKey
- All Superinterfaces:
- Key, PrettyPrintable, SignatureKey
- All Known Implementing Classes:
- RSAKey
- public interface BlindSignatureKey
- extends SignatureKey
This interface is implemented by keys that can be used to
create and validate blind signatures on fingerprints of data.
Obviously blind signatures should be used with care since you do not
know what is being signed. The key used for blind signatures should be
created specifically for one purpose and never be used for anything
else.
- Author:
- Logi Ragnarsson
(logir@logi.org)
createBlindingFactor
public BlindingFactor createBlindingFactor()
- Create a new blinding factor suitable for blinding a fingerprint
before being signed with the private key in the pais.
blind
public BlindFingerprint blind(Fingerprint fp,
BlindingFactor bf)
throws KeyException
- Blind a fingerprint with a public key and the given blinding factor
in preparation for blindly signing the fingerprint with the private
key.
- Throws:
KeyException
- if there are problems, depending on the implementing class.
sign
public BlindSignature sign(BlindFingerprint fp)
throws KeyException
- Create a signature for a blinded fingerprint with a private key.
- Throws:
KeyException
- if there are problems, depending on the implementing class.
unBlind
public Signature unBlind(BlindSignature bs,
BlindingFactor bf)
throws KeyException
- Unblind a blind signature using the same blinding factor that was
used to blind the original fingerprint.
- Throws:
KeyException
- if there are problems, depending on the implementing class.
Copyright 1997-2000 Logi Ragnarsson