Capacity is the part of a sponge state kept apart from direct input absorption and output extraction. It is treated like a secret: increasing it strengthens the construction. section 2.5.2
A sponge divides its permutation state into two portions:
- Rate absorbs input through XOR and supplies output during digest extraction. section 2.5.2
- Capacity remains untouched by the input XOR and contributes to security. section 2.5.2
- The boundary is configurable, so SHA-3 variants use different rate and capacity parameters. section 2.5.2
An eight-bit sponge
For an eight-bit permutation with a five-bit rate, the remaining three bits form the capacity. A five-bit input is XORed only into the rate; the permutation then randomizes the complete state. section 2.5.2
Figure 2.13 The permutation f randomizes an input of size 8 bits into an output of the same size. In a sponge construction, this permutation’s input and output are divided into two parts: the rate (of size r and the capacity (of size c).
Shows how a permutation’s state is divided into rate and capacity. section 2.5.2
