INNER CODE UNIT · Rust

key_dependent_variables

AChep/keyguard-app · thirdParty/rust/ocb3-0.1.0-keyguard/src/lib.rs:214

fn key_dependent_variables<Cipher: BlockSizeUser<BlockSize = U16> + BlockEncrypt>(
    cipher: &Cipher,
) -> (Block, Block, [Block; L_TABLE_SIZE]) {
    let mut zeros = [0u8; 16];
    let ll_star = Block::from_mut_slice(&mut zeros);
    cipher.encrypt_block(ll_star);
    let ll_dollar = double(ll_star);

    let mut ll = [Block::default(); L_TABLE_SIZE];
    let mut ll_i = ll_dollar;
    #[allow(clippy::needless_range_loop)]
    for i in 0..L_TABLE_SIZE {
        ll_i = double(&ll_i);
        ll[i] = ll_i
    }
    (*ll_star, ll_dollar, ll)
}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…