com.ibm.crypto.fips.provider
Class SHA
- java.lang.Object
-
- java.security.MessageDigestSpi
-
- com.ibm.crypto.fips.provider.SHA
-
- All Implemented Interfaces:
- java.lang.Cloneable
public final class SHA extends java.security.MessageDigestSpi implements java.lang.CloneableThis class implements the Secure Hash Algorithm (SHA) developed by the National Institute of Standards and Technology along with the National Security Agency. This is the updated version of SHA fip-180 as superseded by fip-180-1.
-
-
Constructor Summary
Constructors Constructor and Description SHA()Standard constructor, creates a new SHA instance, allocates its buffers from the heap.
-
Method Summary
Methods Modifier and Type Method and Description java.lang.Objectclone()Clones this object.protected byte[]engineDigest()protected intengineDigest(byte[] buf, int offset, int len)protected intengineGetDigestLength()Return the digest length in bytesprotected voidengineReset()protected voidengineUpdate(byte b)Update adds the passed byte to the digested data.protected voidengineUpdate(byte[] input, int offset, int len)Update adds the selected part of an array of bytes to the digest.voidinit()Initialize the SHA informationprotected java.lang.ObjectinternalClone()Clones this object.protected byte[]internalDigest()protected byte[]internalDigest(byte[] buf)protected intinternalDigest(byte[] buf, int offset, int len)protected intinternalGetDigestLength()Return the digest length in bytesprotected voidinternalInit()Initialize the SHA informationprotected voidinternalReset()protected voidinternalUpdate(byte b)Update adds the passed byte to the digested data.protected voidinternalUpdate(byte[] input, int offset, int len)Update adds the selected part of an array of bytes to the digest.
-
-
-
Constructor Detail
-
SHA
public SHA()
Standard constructor, creates a new SHA instance, allocates its buffers from the heap.
-
-
Method Detail
-
init
public void init()
Initialize the SHA information- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalInit
protected void internalInit()
Initialize the SHA information
-
engineReset
protected void engineReset()
- Specified by:
engineResetin classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalReset
protected void internalReset()
-
engineGetDigestLength
protected int engineGetDigestLength()
Return the digest length in bytes- Overrides:
engineGetDigestLengthin classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalGetDigestLength
protected int internalGetDigestLength()
Return the digest length in bytes
-
engineUpdate
protected void engineUpdate(byte b)
Update adds the passed byte to the digested data.- Specified by:
engineUpdatein classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalUpdate
protected void internalUpdate(byte b)
Update adds the passed byte to the digested data.
-
engineUpdate
protected void engineUpdate(byte[] input, int offset, int len)Update adds the selected part of an array of bytes to the digest. This version is more efficient than the byte-at-a-time version; it avoids data copies and reduces per-byte call overhead.- Specified by:
engineUpdatein classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalUpdate
protected void internalUpdate(byte[] input, int offset, int len)Update adds the selected part of an array of bytes to the digest. This version is more efficient than the byte-at-a-time version; it avoids data copies and reduces per-byte call overhead.
-
engineDigest
protected byte[] engineDigest()
- Specified by:
engineDigestin classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalDigest
protected byte[] internalDigest()
-
engineDigest
protected int engineDigest(byte[] buf, int offset, int len) throws java.security.DigestException- Overrides:
engineDigestin classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.java.security.DigestException
-
internalDigest
protected int internalDigest(byte[] buf, int offset, int len) throws java.security.DigestException- Throws:
java.security.DigestException
-
internalDigest
protected byte[] internalDigest(byte[] buf) throws java.security.DigestException- Throws:
java.security.DigestException
-
clone
public java.lang.Object clone()
Clones this object.- Overrides:
clonein classjava.security.MessageDigestSpi- Throws:
FIPSRuntimeException- if SelfTest.isFipsRunnable returns false.
-
internalClone
protected java.lang.Object internalClone()
Clones this object.
-
-