Tiger (cryptography)

Tiger (cryptography)
Tiger
General
Designers Ross Anderson and Eli Biham
First published 1996
Detail
Digest sizes 192, 128, 160
Rounds 24

In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1995 for efficiency on 64-bit platforms. The size of a Tiger hash value is 192 bits. Truncated versions (known as Tiger/128 and Tiger/160) can be used for compatibility with protocols assuming a particular hash size. Unlike the SHA-2 family, no distinguishing initialization values are defined; they are simply prefixes of the full Tiger/192 hash value.

Tiger2 is a variant where the message is padded by first appending a byte with the hexadecimal value of 0x80 as in MD4, MD5 and SHA, rather than with the hexadecimal value of 0x01 as in the case of Tiger. The two variants are otherwise identical.

Contents

Algorithm

Tiger is designed using the nearly universal Merkle-Damgård paradigm. The one-way compression function operates on 64-bit words, maintaining 3 words of state and processing 8 words of data. There are 24 rounds, using a combination of operation mixing with XOR and addition/subtraction, rotates, and S-box lookups, and a fairly intricate key scheduling algorithm for deriving 24 round keys from the 8 input words.[1]

Although fast in software, Tiger's large S-boxes (4 S-boxes, each with 256 64-bit entries totals 8 KiB) make implementations in hardware or small microcontrollers difficult.

Usage

Tiger is frequently used in Merkle hash tree form, where it is referred to as TTH (Tiger Tree Hash). TTH is used by many clients on the Direct Connect and Gnutella file sharing networks.

Tiger was considered for inclusion in the OpenPGP standard, but was abandoned in favor of RIPEMD-160.

Examples

The "testtiger" program at the author's homepage was intended to allow easy testing of the test source code, rather than to define any particular print order. Actually the specification of Tiger do not define the way the output of Tiger is printed, however its testvectors for NESSIE are using the quasi-standard printing method for hashes which is the big endian byte order (this print order is also used by SHA-1 and SHA-2 hash outputs, for example, as it allows also humans to read the number from left to right).

Therefore in the example below the 192-bit (24-byte) Tiger hashes are represented as 48 hexadecimal digits in big-endian byte order. The following demonstrates a 43-byte ASCII input and the corresponding Tiger hashes:

Tiger("The quick brown fox jumps over the lazy dog") =
6d12a41e72e644f017b6f0e2f7b44c6285f06dd5d2c5b075

Tiger2("The quick brown fox jumps over the lazy dog") =
976abff8062a2e9dcea3a1ace966ed9c19cb85558b4976d8

Even a small change in the message will (with overwhelming probability) result in a completely different hash, e.g. changing d to c:

Tiger("The quick brown fox jumps over the lazy cog") =
a8f04b0f7201a0d728101c9d26525b31764a3493fcd8458f

Tiger2("The quick brown fox jumps over the lazy cog") =
09c11330283a27efb51930aa7dc1ec624ff738a8d9bdd3df

The hash of the zero-length string is:

Tiger("") =
3293ac630c13f0245f92bbb1766e16167a4e58492dde73f3

Tiger2("") =
4441be75f6018773c206c22745374b924aa8313fef919f41

Cryptanalysis

Unlike MD5 or SHA-0/1, there are no known attacks on the full 24-round Tiger[2] except for pseudo-near collision.[3] While MD5 processes its state with 64 simple 32-bit operations per 512-bit block and SHA-1 with 80, Tiger updates its state with a total of 144 such operations per 512-bit block, additionally strengthened by large S-box look-ups.

John Kelsey and Stefan Lucks have found a collision-finding attack on 16-round Tiger with a time complexity equivalent to about 244 compression function invocations and another attack that finds pseudo-near collisions in 20-round Tiger with work less than that of 248 compression function invocations.[2] Florian Mendel et al. have improved upon these attacks by describing a collision attack spanning 19 rounds of Tiger, and a 22-round pseudo-near-collision attack. These attacks require a work effort equivalent to about 262 and 244 evaluations of the Tiger compression function, respectively.[4]

See also

References

  1. ^ Ross Anderson and Eli Biham, Tiger — A Fast New Hash Function, proceedings of Fast Software Encryption 3, Cambridge, 1996
  2. ^ a b John Kelsey and Stefan Lucks, Collisions and Near-Collisions for Reduced-Round Tiger, proceedings of Fast Software Encryption 13, Graz, 2006 (PDF)
  3. ^ Mendel, Florian; Rijmen Vincent. "Cryptanalysis of the Tiger Hash Function". ASIACRYPT 2007. Springer Berlin / Heidelberg. pp. 536–550. doi:10.1007/978-3-540-76900-2_33. 
  4. ^ Florian Mendel, Bart Preneel, Vincent Rijmen, Hirotaka Yoshida, and Dai Watanabe, Update on Tiger, proceedings of Indocrypt 7, Kolkata, 2006

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Tiger (disambiguation) — See also: Tigress (disambiguation) Contents 1 Zoology 2 People 2.1 Athletes …   Wikipedia

  • Outline of cryptography — See also: Index of cryptography articles The following outline is provided as an overview of and topical guide to cryptography: Cryptography (or cryptology) – practice and study of hiding information. Modern cryptography intersects the… …   Wikipedia

  • Topics in cryptography — This article is intended to be an analytic glossary , or alternatively, an organized collection of annotated pointers.Classical ciphers*Autokey cipher *Permutation cipher*Polyalphabetic substitution **Vigenère cipher*Polygraphic substitution… …   Wikipedia

  • Salt (cryptography) — In cryptography, a salt consists of random bits, creating one of the inputs to a one way function. The other input is usually a password or passphrase. The output of the one way function can be stored rather than the password, and still be used… …   Wikipedia

  • Panama (cryptography) — Panama General Designers Joan Daemen, Craig Clapp First published February 2002 Derived from StepRightUp Successors MUGI Cipher detail …   Wikipedia

  • Hash tree — A binary hash tree In cryptography and computer science Hash trees or Merkle trees are a type of data structure[citation needed] which contains a tree of summary information about a larger piece of da …   Wikipedia

  • Comparison of cryptographic hash functions — The following tables compare general and technical information for a number of cryptographic hash functions.[1] Contents 1 General information 1.1 Notes 2 Compression function …   Wikipedia

  • Келси, Джон — В Википедии есть статьи о других людях с такой фамилией, см. Келси. Джон Келси англ. Kelsy,John Место рождения: США Научная сфера: криптография Место работы …   Википедия

  • Kryptologische Hash-Funktion — Eine kryptologische Hashfunktion ist eine spezielle Hashfunktion mit weiteren Eigenschaften. Eine kryptologische Hashfunktion sollte zumindest eine Einwegfunktion sein. Eine Hashfunktion ist eine Funktion, die eine Zeichenfolge beliebiger Länge… …   Deutsch Wikipedia

  • Kryptologische Hashfunktion — Eine kryptologische Hashfunktion oder kryptographische Hashfunktion ist eine spezielle Form der Hashfunktion, welche zusätzlich kollisionsresistent oder eine Einwegfunktion (oder beides) ist. Eine Hashfunktion ist eine Funktion, die eine… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”