Package org.mozilla.jss.crypto
Class Signature
- java.lang.Object
-
- org.mozilla.jss.crypto.Signature
-
public class Signature extends java.lang.Object
A class for producing and verifying digital signatures. Instances of this class can be obtain fromCryptoToken
s.
-
-
Field Summary
Fields Modifier and Type Field Description protected SignatureAlgorithm
algorithm
protected SignatureSpi
engine
-
Constructor Summary
Constructors Modifier Constructor Description protected
Signature()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Object
clone()
Cloning is not supported yetjava.lang.String
getAlgorithm()
Returns the name of the algorithm to be used for signing.SignatureAlgorithm
getAlgorithmID()
Returns the algorithm to be used for signing.java.security.Provider
getProvider()
This is not supported yet.void
initSign(PrivateKey privateKey)
Initialize the signature context for signing.void
initVerify(java.security.PublicKey publicKey)
Initialize the signature context for verifying.void
setParameter(java.security.spec.AlgorithmParameterSpec params)
Set parameters for the signing algorithm.byte[]
sign()
Finish a signing operation and return the signature.int
sign(byte[] outbuf, int offset, int len)
Finish a signing operation and store the signature in the provided buffer.void
update(byte b)
Provide more data for a signature or verification operation.void
update(byte[] data)
Provide more data for a signature or verification operation.void
update(byte[] data, int off, int len)
Provide more data for a signature or verification operation.boolean
verify(byte[] signature)
Finish a verification operation.
-
-
-
Field Detail
-
algorithm
protected SignatureAlgorithm algorithm
-
engine
protected SignatureSpi engine
-
-
Method Detail
-
getProvider
public java.security.Provider getProvider()
This is not supported yet.
-
initSign
public void initSign(PrivateKey privateKey) throws java.security.InvalidKeyException, TokenException
Initialize the signature context for signing.- Parameters:
privateKey
- The private key with which to sign.- Throws:
java.security.InvalidKeyException
- If the key is the wrong type for the algorithm or does not exist on the token of this signature context.TokenException
- If an error occurred on the token.
-
initVerify
public void initVerify(java.security.PublicKey publicKey) throws java.security.InvalidKeyException, TokenException
Initialize the signature context for verifying.- Parameters:
publicKey
- The public key with which to verify the signature.- Throws:
java.security.InvalidKeyException
- If the key is the wrong type for the algorithm.TokenException
- If an error occurs on the token.
-
setParameter
public void setParameter(java.security.spec.AlgorithmParameterSpec params) throws java.security.InvalidAlgorithmParameterException, TokenException
Set parameters for the signing algorithm. This is currently not supported or needed.- Parameters:
params
- Parameters for the signing algorithm.- Throws:
java.security.InvalidAlgorithmParameterException
- If there is something wrong with the parameters.TokenException
- If an error occurs on the token.
-
sign
public byte[] sign() throws java.security.SignatureException, TokenException
Finish a signing operation and return the signature.- Returns:
- The signature.
- Throws:
java.security.SignatureException
- If an error occurs with the signing operation.TokenException
- If an error occurs on the token.
-
sign
public int sign(byte[] outbuf, int offset, int len) throws java.security.SignatureException, TokenException
Finish a signing operation and store the signature in the provided buffer.- Parameters:
outbuf
- Buffer to hold the signatureoffset
- Offset in buffer at which to store signature.len
- Number of bytes of buffer available for signature.- Returns:
- int The number of bytes placed into outbuf.
- Throws:
java.security.SignatureException
- If an error occurred while signing, or len was insufficient to contain the signature.TokenException
- If an error occurred on the token.
-
verify
public boolean verify(byte[] signature) throws java.security.SignatureException, TokenException
Finish a verification operation.- Parameters:
signature
- The signature to be verified.- Returns:
- true if the signature is valid, false if it is invalid.
- Throws:
java.security.SignatureException
- If an error occurred with the verification operationTokenException
- If an error occurred on the token.
-
update
public void update(byte b) throws java.security.SignatureException, TokenException
Provide more data for a signature or verification operation.- Parameters:
b
- A byte to be signed or verified.- Throws:
java.security.SignatureException
- If an error occurs in the signature/verifcation.TokenException
- If an error occurs on the token.
-
update
public void update(byte[] data) throws java.security.SignatureException, TokenException
Provide more data for a signature or verification operation.- Parameters:
data
- An array of bytes to be signed or verified.- Throws:
java.security.SignatureException
- If an error occurs in the signature/verifcation.TokenException
- If an error occurs on the token.
-
update
public void update(byte[] data, int off, int len) throws java.security.SignatureException, TokenException
Provide more data for a signature or verification operation.- Parameters:
data
- An array of bytes, some of which will be signed or verified.off
- The beginning offset of the bytes to be signed/verified.len
- The number of bytes to be signed/verified.- Throws:
java.security.SignatureException
- If an error occurs in the signature/verification.TokenException
- If an error occurs on the token.
-
getAlgorithm
public java.lang.String getAlgorithm()
Returns the name of the algorithm to be used for signing.
-
getAlgorithmID
public SignatureAlgorithm getAlgorithmID()
Returns the algorithm to be used for signing.
-
clone
protected java.lang.Object clone() throws java.lang.CloneNotSupportedException
Cloning is not supported yet- Overrides:
clone
in classjava.lang.Object
- Throws:
java.lang.CloneNotSupportedException
-
-