Skip to main content

expand_mask

Function expand_mask 

Source
pub fn expand_mask<P: Params>(
    rho_double_prime: &[u8; 64],
    kappa: u16,
) -> [[i32; 256]; 7]
Expand description

Expand the masking vector y from a seed and counter.

Implements Algorithm 34 of FIPS 204 (ExpandMask). Generates l polynomials with coefficients in [-(gamma1-1), gamma1] by squeezing SHAKE256 output and unpacking via bit_unpack. Each polynomial uses a distinct nonce derived from kappa.

  • rho_double_prime: 64-byte seed derived from the secret key and randomness.
  • kappa: counter incremented by l on each rejection loop iteration.

Returns a fixed array of MAX_L polynomials (valid entries 0..l).