This page uses content from Wikipedia and is licensed under CC BY-SA.


RadioGatún is a cryptographic hash primitive created by Guido Bertoni, Joan Daemen, Michaël Peeters, and Gilles Van Assche. It was first publicly presented at the NIST Second Cryptographic Hash Workshop, held in Santa Barbara, California, on August 24–25, 2006, as part of the NIST hash function competition.

Although RadioGatún is a derivative of Panama, a stream cipher and hash construction from the late 1990s whose hash construction has been broken, RadioGatún does not have Panama's weaknesses when used as a hash function. As of 2017, RadioGatún is still a secure hash function.[1][2]

RadioGatún is actually a family of 64 different hash functions, distinguished by a single parameter, the word width in bits (w), adjustable between 1 and 64. The algorithm uses 58 words, each of size w, to store its internal state. Thus, for example, the 32-bit version needs 232 bytes to store its state and the 64-bit version 464 bytes.

RadioGatún can be used either as a hash function or a stream cipher; it can output an arbitrarily long stream of pseudo-random numbers; this kind of hash construction is now known as an "Extendable-Output Function" (XOF).[3]

The same team that developed RadioGatún went on to make considerable revisions to this cryptographic primitive, leading to the Keccak SHA-3 algorithm.[4]

Claimed strength

The algorithm's designers, in the original RadioGatún paper, claimed that the first 19 × w bits (where w is the word width used) of RadioGatún's output is a cryptographically secure hash function.[5] In other words, they claimed that the first 608 bits of the 32-bit version and 1216 bits of the 64-bit version of RadioGatún can be used as a cryptographic hash value.

In light of the birthday attack, this means that for a given word width w, RadioGatún is designed to have no attack with complexity less than 29.5w. This corresponds to 2304 for the 32-bit version and 2608 for the 64-bit version.

Since publishing the paper, the designers revised their security claim, and now claim that RadioGatún has the security of a cryptographic sponge function with a capacity of 19w.[6] This means that the 32-bit version of RadioGatún can be used to make a hash with 304 bits of security (both from collision attacks and from Preimage attacks), and the 64-bit version offers 608 bits of security.

Implementation details

The designers call RadioGatún an "ideal mangling function". RadioGatún uses a "belt" and "mill" to cryptographically process binary data, with the majority of mangling operations performed on the "mill" part of RadioGatún.[7]

Keccak removed the belt, increased the size of the mill from 19 words to 25 words, and made the mill function somewhat more complicated.[8]

The Wikibooks page on RadioGatún provides full implementation details.


In the paper "Two attacks on RadioGatún", Dmitry Khovratovich presents two attacks that do not break the designers' security claims, one with a complexity of 218w and another with a complexity of 223.1w.[9] Khovratovich also authored a paper, entitled "Cryptanalysis of hash functions with structures", which describes an attack with a complexity of 218w.[10]

In the paper "Analysis of the Collision Resistance of RadioGatún using Algebraic Techniques", Charles Bouillaguet and Pierre-Alain Fouque present a way of generating collisions with the 1-bit version of the algorithm using an attack that needs 224.5 operations.[11] The attack can not be extended to larger versions since "all the possible trails we knew for the 1-bit version turned out to be impossible to extend to n-bit versions." This attack is less effective than the other attacks and also does not break RadioGatún's security claim.

The most effective attack against the algorithm, one with a complexity of 211w, is given in the paper "Cryptanalysis of RadioGatun" by Thomas Fuhr and Thomas Peyrin.[12] While more effective than the other attacks, this attack still does not break the security claim.

The developers of RadioGatún have stated that their "own experiments did not inspire confidence in RadioGatún".[13]

Test vectors

The only RadioGatún variants that the designers supplied test vectors (published hash values for sample inputs so programmers can verify they are correctly implementing the algorithm) for are the 32-bit and 64-bit versions.


These test vectors, generated using the 32-bit version of RadioGatún, only show the first 256 bits of RadioGatún[32]'s arbitrarily long output stream:

RadioGatun[32]("") =
RadioGatun[32]("The quick brown fox jumps over the lazy dog") = 
RadioGatun[32]("The quick brown fox jumps over the lazy cog") = 


Here are hashes for the 64-bit version:

RadioGatun[64]("") =
RadioGatun[64]("The quick brown fox jumps over the lazy dog") = 
RadioGatun[64]("The quick brown fox jumps over the lazy cog") = 


  1. ^ Thomas Pornin (2011-04-03). "Need suggestion for faster Linux fingerprint/hash comparison". Among those I cite, the Radiogatun and Shabal functions are currently unbroken. 
  2. ^ Zooko Wilcox (2017-02-24). "Lessons From The History Of Attacks On Secure Hash Functions". Retrieved 2018-06-28. no new secure hash functions (designed after approximately the year 2000) have so far succumbed to collision attacks, either. 
  3. ^ []
  4. ^ Bertoni, Guido; Daemen, Joan; Peeters, Michaël; Van Assche, Gilles. "The Road from Panama to Keccak via RadioGatún". Retrieved 2009-10-20. 
  5. ^ Page 9 (Section 6) of "RadioGatún, a belt-and-mill hash function" states that "RadioGatún [lw] offers a security level indicated by a capacity c = 19 * w. For the 64-bit version RadioGatún this is a capacity of 1216 bits, for the 32-bit version and 16-bit version this gives 608 and 304 bits respectively."
  6. ^ [] "We now prefer to express the security claim for RadioGatún as a flat sponge claim with capacity 19w"
  7. ^ "RadioGatún, a belt-and-mill hash function" (PDF). 2006-07-20. 
  8. ^ "The road from Panama to Keccak via RadioGatún" (PDF). For Keccak, we have therefore decided to remove the belt and instead increase the number of words in the mill 
  9. ^ Khovratovich, Dmitry. "Two attacks on RadioGatún" (PDF). 
  10. ^ []
  11. ^ Bouillaguet, Charles; Fouque, Pierre-Alain. "Analysis of the Collision Resistance of RadioGatun using Algebraic Techniques". 
  12. ^ Fuhr, Thomas; Peyrin, Thomas. "Cryptanalysis of RadioGatun". 
  13. ^ "Keccak and the SHA-3 Standardization" (PDF). 

External links

  • The RadioGatún Hash Function Family, RadioGatún's official web page, with the hash's official description, public domain reference code, and test vectors
  • rg32hash, an independent public-domain implementation of the 32-bit version of RadioGatún