org.bouncycastle.crypto.signers
Class ISO9796d2PSSSigner
java.lang.Objectorg.bouncycastle.crypto.signers.ISO9796d2PSSSigner
- Signer, SignerWithRecovery
public class ISO9796d2PSSSigner
extends java.lang.Object
ISO9796-2 - mechanism using a hash function with recovery (scheme 2 and 3).
Note: the usual length for the salt is the length of the hash
function used in bytes.
byte[] | generateSignature()- generate a signature for the loaded message using the key we were
initialised with.
|
byte[] | getRecoveredMessage()- Return a reference to the recoveredMessage message.
|
boolean | hasFullMessage()- Return true if the full message was recoveredMessage.
|
void | init(boolean forSigning, CipherParameters param)- Initialise the signer.
|
void | reset()- reset the internal state
|
void | update(byte b)- update the internal digest with the byte b
|
void | update(byte[] in, int off, int len)- update the internal digest with the byte array in
|
boolean | verifySignature(byte[] signature)- return true if the signature represents a ISO9796-2 signature
for the passed in message.
|
TRAILER_IMPLICIT
public static final int TRAILER_IMPLICIT
TRAILER_RIPEMD128
public static final int TRAILER_RIPEMD128
TRAILER_RIPEMD160
public static final int TRAILER_RIPEMD160
TRAILER_SHA1
public static final int TRAILER_SHA1
ISO9796d2PSSSigner
public ISO9796d2PSSSigner(AsymmetricBlockCipher cipher,
Digest digest,
int saltLength) Constructor for a signer with an explicit digest trailer.
cipher - cipher to use.digest - digest to sign with.saltLength - length of salt in bytes.
ISO9796d2PSSSigner
public ISO9796d2PSSSigner(AsymmetricBlockCipher cipher,
Digest digest,
int saltLength,
boolean implicit) Generate a signer for the with either implicit or explicit trailers
for ISO9796-2, scheme 2 or 3.
cipher - base cipher to use for signature creation/verificationdigest - digest to use.saltLength - length of salt in bytes.implicit - whether or not the trailer is implicit or gives the hash.
generateSignature
public byte[] generateSignature()
throws CryptoException generate a signature for the loaded message using the key we were
initialised with.
- generateSignature in interface Signer
getRecoveredMessage
public byte[] getRecoveredMessage()
Return a reference to the recoveredMessage message.
- getRecoveredMessage in interface SignerWithRecovery
- the full/partial recoveredMessage message.
hasFullMessage
public boolean hasFullMessage()
Return true if the full message was recoveredMessage.
- hasFullMessage in interface SignerWithRecovery
- true on full message recovery, false otherwise, or if not sure.
init
public void init(boolean forSigning,
CipherParameters param) Initialise the signer.
- init in interface Signer
forSigning - true if for signing, false if for verification.param - parameters for signature generation/verification. If the
parameters are for generation they should be a ParametersWithRandom,
a ParametersWithSalt, or just an RSAKeyParameters object. If RSAKeyParameters
are passed in a SecureRandom will be created.
reset
public void reset()
reset the internal state
- reset in interface Signer
update
public void update(byte b)
update the internal digest with the byte b
- update in interface Signer
update
public void update(byte[] in,
int off,
int len) update the internal digest with the byte array in
- update in interface Signer
verifySignature
public boolean verifySignature(byte[] signature)
return true if the signature represents a ISO9796-2 signature
for the passed in message.
- verifySignature in interface Signer