INNER CODE UNIT · Rust

generate_addresses

brndnmtthws/dryoc · src/argon2/mod.rs:636

fn generate_addresses(instance: &mut Argon2Instance, position: &Argon2Position) {
    let mut input_block = Block::default();
    let zero_block = Block::default();
    let mut tmp_block = Block::default();
    let mut address_block = Block::default();
    let mut scratch = Block::default();

    input_block.v[0] = position.pass as u64;
    input_block.v[1] = position.lane as u64;
    input_block.v[2] = position.slice as u64;
    input_block.v[3] = instance.memory_blocks as u64;
    input_block.v[4] = instance.passes as u64;
    input_block.v[5] = instance.type_ as u64;

    for i in 0..instance.segment_length {
        if i.is_multiple_of(ARGON2_ADDRESSES_IN_BLOCK) {
            input_block.v[6] += 1;
            fill_block(

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…