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 long
private long
private int
private byte[]
private long
private long
private static final int
private 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 TypeMethodDescriptionint
doFinal
(byte[] out, int outOff) close the digest, producing the final digest value.private void
finish()
return the algorithm nameint
return the size, in bytes, of the digest produced by this message digest.private void
private void
private void
processLength
(long bitLength) private void
processWord
(byte[] b, int off) void
reset()
reset the chaining variablesprivate void
roundABC
(long x, long mul) private void
roundBCA
(long x, long mul) private void
roundCAB
(long x, long mul) void
unpackWord
(long r, byte[] out, int outOff) void
update
(byte in) update the message digest with a single byte.void
update
(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:Digest
return the algorithm name- Specified by:
getAlgorithmName
in interfaceDigest
- Returns:
- the algorithm name
-
getDigestSize
public int getDigestSize()Description copied from interface:Digest
return the size, in bytes, of the digest produced by this message digest.- Specified by:
getDigestSize
in interfaceDigest
- Returns:
- the size, in bytes, of the digest produced by this message digest.
-
processWord
private void processWord(byte[] b, int off) -
update
public void update(byte in) Description copied from interface:Digest
update the message digest with a single byte. -
update
public void update(byte[] in, int inOff, int len) Description copied from interface:Digest
update 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:Digest
close the digest, producing the final digest value. The doFinal call leaves the digest reset. -
reset
public void reset()reset the chaining variables
-