ShakeHash defines the interface to hash functions that support arbitrary-length output. When used as a plain [hash.Hash], it produces minimum-length outputs that provide full-strength generic security.
| 15 | // produces minimum-length outputs that provide full-strength generic |
| 16 | // security. |
| 17 | type ShakeHash interface { |
| 18 | hash.Hash |
| 19 | |
| 20 | // Read reads more output from the hash; reading affects the hash's |
| 21 | // state. (ShakeHash.Read is thus very different from Hash.Sum.) |
| 22 | // It never returns an error, but subsequent calls to Write or Sum |
| 23 | // will panic. |
| 24 | io.Reader |
| 25 | |
| 26 | // Clone returns a copy of the ShakeHash in its current state. |
| 27 | Clone() ShakeHash |
| 28 | } |
| 29 | |
| 30 | // NewShake128 creates a new SHAKE128 variable-output-length ShakeHash. |
| 31 | // Its generic security strength is 128 bits against all attacks if at |
no outgoing calls
no test coverage detected
searching dependent graphs…