SHOW Signed SHOW Certicom
 

net.rim.device.api.crypto
Class PKCS1SignatureVerifier

java.lang.Object
  |
  +--net.rim.device.api.crypto.PKCS1SignatureVerifier
All Implemented Interfaces:
SignatureVerifier

public final class PKCS1SignatureVerifier
extends Object
implements SignatureVerifier

The PKCS1SignatureVerifier class can verify an RSA PKCS#1 signature.

We implemented the PKCS1 verification as per the PKCS #1 version 2.1 document.

For a code sample using the PKCS1 signature verifier, click here.

Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.

Since:
JDE 3.6.0
See Also:
PKCS1SignatureSigner

Constructor Summary
 Category: Certicom Category: Signed PKCS1SignatureVerifier(RSAPublicKey key, byte[] signature, int signatureOffset)
          Constructs an RSA PKCS1SignatureVerifier object which uses the SHA-1 digest.
 Category: Certicom Category: Signed PKCS1SignatureVerifier(RSAPublicKey key, Digest digest, byte[] signature, int signatureOffset)
          Constructs an RSA PKCS1SignatureVerifier object which uses the given digest.
 
Method Summary
 Category: Certicom Category: Signed  String getAlgorithm()
          Returns the name of the signing algorithm used ("RSA_PKCS1_(V15 or V20)/" + digest algorithm name).
 Category: Certicom Category: Signed  void update(byte[] data)
          Adds additional message data to the signature.
 Category: Certicom Category: Signed  void update(byte[] data, int offset, int length)
          Adds additional message data to the signature.
 Category: Certicom Category: Signed  void update(int data)
          Adds additional message data to the signature.
 Category: Certicom Category: Signed  boolean verify()
          Returns true if the signature is valid, false otherwise.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PKCS1SignatureVerifier

public PKCS1SignatureVerifier(RSAPublicKey key,
                              byte[] signature,
                              int signatureOffset)
                       throws InvalidSignatureEncodingException,
                              CryptoTokenException,
                              CryptoUnsupportedOperationException
Constructs an RSA PKCS1SignatureVerifier object which uses the SHA-1 digest.

Parameters:
key - The public key used to verify the signature.
signature - The signature to be verified.
signatureOffset - The offset, or the start position, of the signature data within the array.
Since:
JDE 3.6.0
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.


PKCS1SignatureVerifier

public PKCS1SignatureVerifier(RSAPublicKey key,
                              Digest digest,
                              byte[] signature,
                              int signatureOffset)
                       throws InvalidSignatureEncodingException,
                              CryptoTokenException,
                              CryptoUnsupportedOperationException
Constructs an RSA PKCS1SignatureVerifier object which uses the given digest.

Parameters:
key - The public key used to verify the signature.
digest - The digest used to process the message.
signature - The signature to be verified.
signatureOffset - The offset, or start position, of the signature data within the array.
Since:
JDE 3.6.0
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.

Method Detail

getAlgorithm

public String getAlgorithm()
Returns the name of the signing algorithm used ("RSA_PKCS1_(V15 or V20)/" + digest algorithm name).

Returns:
A String representing the name of the algorithm.
Since:
JDE 3.6.0
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.


update

public void update(byte[] data)
Description copied from interface: SignatureVerifier
Adds additional message data to the signature.

Since:
JDE 3.6.0

Following copied from interface: SignatureVerifier
Parameters:
data - A byte array containing the message data to hash.
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.


update

public void update(byte[] data,
                   int offset,
                   int length)
Description copied from interface: SignatureVerifier
Adds additional message data to the signature.

Since:
JDE 3.6.0

Following copied from interface: SignatureVerifier
Parameters:
data - The message data to hash.
offset - The offset, or initial position to start reading in the data.
length - The amount of data to read.
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.


update

public void update(int data)
Description copied from interface: SignatureVerifier
Adds additional message data to the signature.

Since:
JDE 3.6.0

Following copied from interface: SignatureVerifier
Parameters:
data - The byte to be hashed.
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.


verify

public boolean verify()
               throws CryptoTokenException,
                      CryptoUnsupportedOperationException
Description copied from interface: SignatureVerifier
Returns true if the signature is valid, false otherwise.

Since:
JDE 3.6.0

Following copied from interface: SignatureVerifier
Returns:
A boolean that returns true if the signature is valid, false otherwise.
Throws:
CryptoTokenException - Thrown when a problem occurs with a crypto token or the crypto token is invalid.
CryptoUnsupportedOperationException - Thrown when a call is made to an unsupported operation.
Category:
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.




Copyright 1999-2009 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.