INNER CODE UNIT · Rust
sk_encode
orion-rs/orion · src/hazardous/dsa/ml_dsa/internal/mod.rs:252
fn sk_encode<const SK_ENCODED_SIZE: usize, const K: usize, const L: usize>(
rho: &[u8],
k: &[u8],
tr: &[u8],
s1: &[RingElement],
s2: &[RingElement],
t0: &[RingElement],
) -> [u8; SK_ENCODED_SIZE] {
debug_assert_eq!(rho.len(), 32);
debug_assert_eq!(k.len(), 32);
debug_assert_eq!(tr.len(), 64);
debug_assert_eq!(s1.len(), Self::DIM_L);
debug_assert_eq!(s2.len(), Self::DIM_K);
debug_assert_eq!(t0.len(), Self::DIM_K);
debug_assert_eq!(SK_ENCODED_SIZE, Self::PRIVATE_KEY_SIZE);
let mut read: usize = 0;
let mut sk = [0u8; SK_ENCODED_SIZE];