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.