net.rim.device.api.crypto
Class SHA256Digest

java.lang.Object
  extended by net.rim.device.api.crypto.AbstractDigest
      extended by net.rim.device.api.crypto.SHA256Digest
All Implemented Interfaces:
Digest

public final class SHA256Digest
extends AbstractDigest
implements Digest

The SHA256Digest class implements the SHA-256 algorithm.

We implemented SHA256 as it's defined in FIPS 180-2.

For a code sample using the SHA-256 algorithm, click here.

For information on cryptographic algorithms, see Crypto Algorithms.

See Also:
SHA224Digest, SHA384Digest, SHA512Digest, SHA1Digest
Category:
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:
BlackBerry API 3.6.0

Field Summary
Category: Signed static int BLOCK_LENGTH
          Represents the block length, namely 64 bytes.
Category: Signed static int DIGEST_LENGTH
          Represents the digest length, namely 32 bytes.
 
Constructor Summary
Category: Signed SHA256Digest()
          Constructs and initializes a SHA-256Digest object.
 
Method Summary
Category: Signed  String getAlgorithm()
          Returns the name of the algorithm ("SHA256").
Category: Signed  int getBlockLength()
          Returns the block length of the digest in bytes.
Category: Signed  int getDigest(byte[] buffer, int offset, boolean resetDigest)
          Inserts the digest of all the input data since the last reset into the specified buffer at the given offset.
Category: Signed  int getDigestLength()
          Returns the length of the digest in bytes.
Category: Signed  void reset()
          Reinitializes the digest.
Category: Signed  void update(byte[] data, int offset, int length)
          Passes a byte array of data, specified by the length and offset, into the hash algorithm.
Category: Signed  void update(int data)
          Passes a single byte into the hash algorithm.
 
Methods inherited from class net.rim.device.api.crypto.AbstractDigest
getDigest, getDigest, getDigest, update
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.rim.device.api.crypto.Digest
getDigest, getDigest, getDigest, update
 



Field Detail

DIGEST_LENGTH

public static final int DIGEST_LENGTH
Represents the digest length, namely 32 bytes.

See Also:
Constant Field Values
Category:
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:
BlackBerry API 3.6.0

BLOCK_LENGTH

public static final int BLOCK_LENGTH
Represents the block length, namely 64 bytes.

See Also:
Constant Field Values
Category:
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:
BlackBerry API 3.6.0


Constructor Detail

SHA256Digest

public SHA256Digest()
Constructs and initializes a SHA-256Digest object.

Category:
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:
BlackBerry API 3.6.0


Method Detail

getAlgorithm

public String getAlgorithm()
Returns the name of the algorithm ("SHA256").

This method will always return the String "SHA256".

Specified by:
getAlgorithm in interface Digest
Specified by:
getAlgorithm in class AbstractDigest
Returns:
A String that represents the name of the algorithm.
Category:
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:
BlackBerry API 3.6.0

reset

public void reset()
Description copied from class: AbstractDigest
Reinitializes the digest.

Specified by:
reset in interface Digest
Specified by:
reset in class AbstractDigest
Category:
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:
BlackBerry API 3.6.0

update

public void update(int data)
Description copied from class: AbstractDigest
Passes a single byte into the hash algorithm.

Specified by:
update in interface Digest
Overrides:
update in class AbstractDigest
Parameters:
data - The byte to be hashed.
Category:
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:
BlackBerry API 3.6.0

update

public void update(byte[] data,
                   int offset,
                   int length)
Description copied from class: AbstractDigest
Passes a byte array of data, specified by the length and offset, into the hash algorithm.

Specified by:
update in interface Digest
Specified by:
update in class AbstractDigest
Parameters:
data - The array containing the input data.
offset - The offset of the input data.
length - The length of the input data.
Category:
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:
BlackBerry API 3.6.0

getDigestLength

public int getDigestLength()
Description copied from class: AbstractDigest
Returns the length of the digest in bytes.

Specified by:
getDigestLength in interface Digest
Specified by:
getDigestLength in class AbstractDigest
Returns:
An integer representing the number of bytes.
Category:
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:
BlackBerry API 3.6.0

getBlockLength

public int getBlockLength()
Description copied from class: AbstractDigest
Returns the block length of the digest in bytes. This block length is used in HMAC and therefore is overidden by HMAC-supported digests.

Specified by:
getBlockLength in interface Digest
Overrides:
getBlockLength in class AbstractDigest
Returns:
An integer representing the block length.
Category:
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:
BlackBerry API 3.6.0

getDigest

public int getDigest(byte[] buffer,
                     int offset,
                     boolean resetDigest)
Description copied from class: AbstractDigest
Inserts the digest of all the input data since the last reset into the specified buffer at the given offset.

Specified by:
getDigest in interface Digest
Specified by:
getDigest in class AbstractDigest
Parameters:
buffer - The byte array to hold the digest data.
offset - The offset, or initial bit position, to store the data at within the array.
resetDigest - if true, then the digest is reset.
Returns:
An integer representing the number of bytes written to the buffer.
Category:
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:
BlackBerry API 3.6.0





Copyright 1999-2010 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. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.