fips202_hash(RateBytes,Suffix,OutputBytes) — Logtalk 3.100.1

object

# `fips202_hash(RateBytes,Suffix,OutputBytes)`

Common implementation of the standardized FIPS 202 SHA-3 and SHAKE variants using the Keccak-f[1600] permutation.

Availability:
`logtalk_load(hashes(loader))`
Author: Paulo Moura
Version: 1:1:0
Date: 2026-04-15
Compilation flags:
`static, context_switching_calls`
Implements:
`public` hash_protocol
Uses:
hash_common_32
hash_common_64
list
Remarks:
(none)
Inherited public predicates:
hash/2

## Public predicates

(no local declarations; see entity ancestors if any)

## Protected predicates

### `absorb/2`

Absorbs the input bytes into the Keccak state and returns the resulting state after the final padded block permutation.

Compilation flags:
`static`
Template:
`absorb(Bytes,State)`
Mode and number of proofs:
`absorb(+list(byte),--list(integer))` - `one`

### `squeeze/3`

Squeezes the requested number of output bytes from a Keccak state.

Compilation flags:
`static`
Template:
`squeeze(State,OutputBytes,DigestBytes)`
Mode and number of proofs:
`squeeze(+list(integer),+integer,--list(byte))` - `one`

## Private predicates

(no local declarations; see entity ancestors if any)

## Operators

(none)