Documentation ¶
Overview ¶
Package balloon Look https://crypto.stanford.edu/balloon/ for more description.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func B ¶
B takes hash, password, salt, space cost (buffer size, number of hash-output sized blocks), time cost (number of rounds) and performs the following:
# Expand input into buffer. buf[0] = hash(cnt++ || passwd || salt) for m from 1 to sCost-1: buf[m] = hash(cnt++ || buf[m-1]) # Mix buffer contents. for t from 0 to tCost-1: for m from 0 to sCost-1: # Hash last and current blocks. prev = buf[(m-1) mod sCost] buf[m] = hash(cnt++ || prev || buf[m]) # Hash in pseudorandomly chosen blocks. for i from 0 to delta-1: other = to_int(hash(cnt++ || salt || t || m || i)) mod sCost buf[m] = hash(cnt++ || buf[m] || buf[other]) # Extract output from buffer. return buf[sCost-1]
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.