Documentation ¶
Overview ¶
Package sha3 provides ZKP circuits for SHA3 hash algorithms applying sponge construction over Keccak f-[1600] permutation function.
Instances correspond golang.org/x/crypto/sha3, except SHA224, which is not x64 compatible.
Index ¶
- func New256(api frontend.API) (hash.BinaryHasher, error)
- func New384(api frontend.API) (hash.BinaryHasher, error)
- func New512(api frontend.API) (hash.BinaryHasher, error)
- func NewLegacyKeccak256(api frontend.API) (hash.BinaryHasher, error)
- func NewLegacyKeccak512(api frontend.API) (hash.BinaryHasher, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func New256 ¶
func New256(api frontend.API) (hash.BinaryHasher, error)
New256 creates a new SHA3-256 hash. Its generic security strength is 256 bits against preimage attacks, and 128 bits against collision attacks.
func New384 ¶
func New384(api frontend.API) (hash.BinaryHasher, error)
New384 creates a new SHA3-384 hash. Its generic security strength is 384 bits against preimage attacks, and 192 bits against collision attacks.
func New512 ¶
func New512(api frontend.API) (hash.BinaryHasher, error)
New512 creates a new SHA3-512 hash. Its generic security strength is 512 bits against preimage attacks, and 256 bits against collision attacks.
func NewLegacyKeccak256 ¶
func NewLegacyKeccak256(api frontend.API) (hash.BinaryHasher, error)
NewLegacyKeccak256 creates a new Keccak-256 hash.
Only use this function if you require compatibility with an existing cryptosystem that uses non-standard padding. All other users should use New256 instead.
func NewLegacyKeccak512 ¶
func NewLegacyKeccak512(api frontend.API) (hash.BinaryHasher, error)
NewLegacyKeccak512 creates a new Keccak-512 hash.
Only use this function if you require compatibility with an existing cryptosystem that uses non-standard padding. All other users should use New512 instead.
Types ¶
This section is empty.