Balloon hashing explained
Balloon hashing is a key derivation function presenting proven memory-hard password-hashing and modern design. It was created by Dan Boneh, Henry Corrigan-Gibbs (both at Stanford University) and Stuart Schechter (Microsoft Research) in 2016.[1] [2] It is a recommended function in NIST password guidelines.[3]
The authors claim that Balloon:
Balloon is compared by its authors with Argon2, a similarly performing algorithm.[1]
Algorithm
There are three steps in the algorithm:[1]
- Expansion, where an initial buffer is filled with a pseudorandom byte sequence derived from the password and salt repeatedly hashed.
- Mixing, where the bytes in the buffer are mixed time_cost number of times.
- Output, where a portion of the buffer is taken as the hashing result.
External links
Notes and References
- Balloon Hashing: A Memory-Hard Function Providing Provable Protection Against Sequential Attacks . ePrint . 2016 . 27 . 2016-01-11 . 2019-09-03 . Boneh . Dan . Corrigan-Gibbs . Henry . Schechter . Stuart.
- Web site: Balloon Hashing . Stanford Applied Crypto Group . Stanford University . 2019-09-03.
- https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-63b.pdf NIST SP800-63B Section 5.1.1.2