INNER CODE UNIT · Rust

array_concat_32

IronCoreLabs/recrypt-rs · src/internal/mod.rs:422

pub fn array_concat_32<T: Copy + Zero>(one: &[T; 32], two: &[T; 32]) -> [T; 64] {
    let mut result: [T; 64] = [T::zero(); 64];
    result[0..32].copy_from_slice(&one[..]);
    result[32..64].copy_from_slice(&two[..]);
    result
}

pub fn array_concat_60<T: Copy + Zero>(one: &[T; 60], two: &[T; 60]) -> [T; 120] {
    let mut result: [T; 120] = [T::zero(); 120];
    result[0..60].copy_from_slice(&one[..]);
    result[60..120].copy_from_slice(&two[..]);
    result
}

pub fn array_split_64<T: Copy + Zero>(array: &[T; 64]) -> ([T; 32], [T; 32]) {
    let mut one = [T::zero(); 32];
    let mut two = [T::zero(); 32];
    one.copy_from_slice(&array[0..32]);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…