|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.security.SignatureSpi
public abstract class SignatureSpi
SignatureSpi
defines the Service Provider Interface (SPI) for
the Signature
class. The signature class provides an interface to a
digital signature algorithm. Digital signatures are used for authentication
and integrity of data.
Signature
Field Summary | |
---|---|
protected SecureRandom |
appRandom
Source of randomness. |
Constructor Summary | |
---|---|
SignatureSpi()
Creates a new instance of SignatureSpi . |
Method Summary | |
---|---|
Object |
clone()
Returns a clone of this instance. |
protected abstract Object |
engineGetParameter(String param)
Deprecated. use the other getParameter |
protected AlgorithmParameters |
engineGetParameters()
The default implementaion of this method always throws a UnsupportedOperationException . |
protected abstract void |
engineInitSign(PrivateKey privateKey)
Initializes this instance with the private key for signing purposes. |
protected void |
engineInitSign(PrivateKey privateKey,
SecureRandom random)
Initializes this instance with the private key and source of randomness for signing purposes. |
protected abstract void |
engineInitVerify(PublicKey publicKey)
Initializes this instance with the public key for verification purposes. |
protected void |
engineSetParameter(AlgorithmParameterSpec params)
Sets the signature engine with the specified AlgorithmParameterSpec . |
protected abstract void |
engineSetParameter(String param,
Object value)
Deprecated. use the other setParameter. |
protected abstract byte[] |
engineSign()
Returns the signature bytes of all the data fed to this instance. |
protected int |
engineSign(byte[] outbuf,
int offset,
int len)
Generates signature bytes of all the data fed to this instance and stores the result in the designated array. |
protected abstract void |
engineUpdate(byte b)
Updates the data to be signed or verified with the specified byte. |
protected abstract void |
engineUpdate(byte[] b,
int off,
int len)
Updates the data to be signed or verified with the specified bytes. |
protected void |
engineUpdate(ByteBuffer input)
Update this signature with the Buffer.remaining()
bytes of the given buffer. |
protected abstract boolean |
engineVerify(byte[] sigBytes)
Verifies a designated signature. |
protected boolean |
engineVerify(byte[] sigBytes,
int offset,
int length)
Convenience method which calls the method with the same name and one argument after copying the designated bytes into a temporary byte array. |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected SecureRandom appRandom
Constructor Detail |
---|
public SignatureSpi()
SignatureSpi
.
Method Detail |
---|
protected abstract void engineInitVerify(PublicKey publicKey) throws InvalidKeyException
publicKey
- the public key to verify with.
InvalidKeyException
- if the key is invalid.protected abstract void engineInitSign(PrivateKey privateKey) throws InvalidKeyException
privateKey
- the private key to sign with.
InvalidKeyException
- if the key is invalid.protected void engineInitSign(PrivateKey privateKey, SecureRandom random) throws InvalidKeyException
This method cannot be abstract for backward compatibility reasons.
privateKey
- the private key to sign with.random
- the SecureRandom
to use.
InvalidKeyException
- if the key is invalid.protected abstract void engineUpdate(byte b) throws SignatureException
b
- byte to update with.
SignatureException
- if the engine is not properly initialized.protected abstract void engineUpdate(byte[] b, int off, int len) throws SignatureException
b
- the array of bytes to use.off
- the offset to start at in the array.len
- the number of the bytes to use from the array.
SignatureException
- if the engine is not properly initialized.protected void engineUpdate(ByteBuffer input)
Buffer.remaining()
bytes of the given buffer.
input
- The input buffer.
IllegalStateException
- if the engine is not properly initialized.protected abstract byte[] engineSign() throws SignatureException
SignatureException
- if the engine is not properly initialized.protected int engineSign(byte[] outbuf, int offset, int len) throws SignatureException
This method cannot be abstract for backward compatibility reasons. After calling this method, the signature is reset to its initial state and can be used to generate additional signatures.
IMPLEMENTATION NOTE:: Neither this method nor the GNU provider
will return partial digests. If len
is less than the
signature length, this method will throw a SignatureException
. If
it is greater than or equal then it is ignored.
outbuf
- the array of bytes to store the result in.offset
- the offset to start at in the array.len
- the number of the bytes to use in the array.
SignatureException
- if the engine is not properly initialized.protected abstract boolean engineVerify(byte[] sigBytes) throws SignatureException
sigBytes
- the signature bytes to verify.
true
if verified, false
otherwise.
SignatureException
- if the engine is not properly initialized or if it is the wrong
signature.protected boolean engineVerify(byte[] sigBytes, int offset, int length) throws SignatureException
sigBytes
- the array of bytes to use.offset
- the offset to start from in the array of bytes.length
- the number of bytes to use, starting at offset.
true
if verified, false
otherwise.
SignatureException
- if the engine is not properly initialized.protected abstract void engineSetParameter(String param, Object value) throws InvalidParameterException
param
- the parameter name.value
- the parameter value.
InvalidParameterException
- if the parameter invalid, the parameter is already set and
cannot be changed, a security exception occured, etc.protected void engineSetParameter(AlgorithmParameterSpec params) throws InvalidAlgorithmParameterException
AlgorithmParameterSpec
.
This method cannot be abstract for backward compatibility reasons. By
default it always throws UnsupportedOperationException
unless
overridden.
params
- the parameters.
InvalidParameterException
- if the parameter is invalid, the parameter is already set and
cannot be changed, a security exception occured, etc.
InvalidAlgorithmParameterException
protected AlgorithmParameters engineGetParameters()
UnsupportedOperationException
. It MUST be overridden by concrete
implementations to return the appropriate AlgorithmParameters
for
this signature engine (or null
when that engine does not use
any parameters.
null
if it does not use any parameters.
UnsupportedOperationException
- always.protected abstract Object engineGetParameter(String param) throws InvalidParameterException
param
- the parameter name.
InvalidParameterException
- if the parameter is invalid.public Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
- if the implementation does not support cloning.Cloneable
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |