INNER CODE UNIT · Rust

ARGON2_MIN_MEMORY

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

const ARGON2_MIN_MEMORY: u32 = 2 * ARGON2_SYNC_POINTS; // 2 blocks per slice

const fn min(a: u64, b: u64) -> u64 {
    [a, b][(a > b) as usize]
}

// Max memory size is half the addressing space, topping at 2^32 blocks (4
// TB)
const ARGON2_MAX_MEMORY_BITS: u32 =
    min(32, std::mem::size_of::<usize>() as u64 * 8 - 10 - 1) as u32;
const ARGON2_MAX_MEMORY: u32 = min(0xFFFFFFFF, 1u64 << ARGON2_MAX_MEMORY_BITS) as u32;

// Minimum and maximum number of passes
const ARGON2_MIN_TIME: u32 = 1;
const ARGON2_MAX_TIME: u32 = 0xFFFFFFFF;

// Minimum and maximum password length in bytes
const ARGON2_MIN_PWD_LENGTH: usize = 0;

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…