Class TigerDigest
java.lang.Object
org.gudy.bouncycastle.crypto.digests.TigerDigest
- All Implemented Interfaces:
Digest
implementation of Tiger based on:
http://www.cs.technion.ac.il/~biham/Reports/Tiger
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate longprivate longprivate intprivate byte[]private longprivate longprivate static final intprivate static final long[]private static final long[]private static final long[]private static final long[]private long[]private int -
Constructor Summary
ConstructorsConstructorDescriptionStandard constructorCopy constructor. -
Method Summary
Modifier and TypeMethodDescriptionintdoFinal(byte[] out, int outOff) close the digest, producing the final digest value.private voidfinish()return the algorithm nameintreturn the size, in bytes, of the digest produced by this message digest.private voidprivate voidprivate voidprocessLength(long bitLength) private voidprocessWord(byte[] b, int off) voidreset()reset the chaining variablesprivate voidroundABC(long x, long mul) private voidroundBCA(long x, long mul) private voidroundCAB(long x, long mul) voidunpackWord(long r, byte[] out, int outOff) voidupdate(byte in) update the message digest with a single byte.voidupdate(byte[] in, int inOff, int len) update the message digest with a block of bytes.
-
Field Details
-
t1
private static final long[] t1 -
t2
private static final long[] t2 -
t3
private static final long[] t3 -
t4
private static final long[] t4 -
DIGEST_LENGTH
private static final int DIGEST_LENGTH- See Also:
-
a
private long a -
b
private long b -
c
private long c -
byteCount
private long byteCount -
buf
private byte[] buf -
bOff
private int bOff -
x
private long[] x -
xOff
private int xOff
-
-
Constructor Details
-
TigerDigest
public TigerDigest()Standard constructor -
TigerDigest
Copy constructor. This will copy the state of the provided message digest.
-
-
Method Details
-
getAlgorithmName
Description copied from interface:Digestreturn the algorithm name- Specified by:
getAlgorithmNamein interfaceDigest- Returns:
- the algorithm name
-
getDigestSize
public int getDigestSize()Description copied from interface:Digestreturn the size, in bytes, of the digest produced by this message digest.- Specified by:
getDigestSizein interfaceDigest- Returns:
- the size, in bytes, of the digest produced by this message digest.
-
processWord
private void processWord(byte[] b, int off) -
update
-
update
public void update(byte[] in, int inOff, int len) Description copied from interface:Digestupdate the message digest with a block of bytes. -
roundABC
private void roundABC(long x, long mul) -
roundBCA
private void roundBCA(long x, long mul) -
roundCAB
private void roundCAB(long x, long mul) -
keySchedule
private void keySchedule() -
processBlock
private void processBlock() -
unpackWord
public void unpackWord(long r, byte[] out, int outOff) -
processLength
private void processLength(long bitLength) -
finish
private void finish() -
doFinal
public int doFinal(byte[] out, int outOff) Description copied from interface:Digestclose the digest, producing the final digest value. The doFinal call leaves the digest reset. -
reset
-