Function aes_frast::aes_core::setkey_enc_k192 [] [src]

pub fn setkey_enc_k192(origin: &[u8], keys: &mut [u32])

Set 192bit working keys for encryption.

[Attention!] The first parameter must possess 24 elements in the slice, and the second 52.

Examples

use aes_frast::aes_core::setkey_enc_k192;
 
let origin: [u8; 24] = [
    0x8E, 0x73, 0xB0, 0xF7, 0xDA, 0x0E, 0x64, 0x52,
    0xC8, 0x10, 0xF3, 0x2B, 0x80, 0x90, 0x79, 0xE5,
    0x62, 0xF8, 0xEA, 0xD2, 0x52, 0x2C, 0x6B, 0x7B
];
let mut output: [u32; 52] = [0; 52];
 
setkey_enc_k192(&origin, &mut output);
 
let expected: [u32; 52] = [
    0x8E73B0F7, 0xDA0E6452, 0xC810F32B, 0x809079E5,
    0x62F8EAD2, 0x522C6B7B, 0xFE0C91F7, 0x2402F5A5,
    0xEC12068E, 0x6C827F6B, 0x0E7A95B9, 0x5C56FEC2,
    0x4DB7B4BD, 0x69B54118, 0x85A74796, 0xE92538FD,
    0xE75FAD44, 0xBB095386, 0x485AF057, 0x21EFB14F,
    0xA448F6D9, 0x4D6DCE24, 0xAA326360, 0x113B30E6,
    0xA25E7ED5, 0x83B1CF9A, 0x27F93943, 0x6A94F767,
    0xC0A69407, 0xD19DA4E1, 0xEC1786EB, 0x6FA64971,
    0x485F7032, 0x22CB8755, 0xE26D1352, 0x33F0B7B3,
    0x40BEEB28, 0x2F18A259, 0x6747D26B, 0x458C553E,
    0xA7E1466C, 0x9411F1DF, 0x821F750A, 0xAD07D753,
    0xCA400538, 0x8FCC5006, 0x282D166A, 0xBC3CE7B5,
    0xE98BA06F, 0x448C773C, 0x8ECC7204, 0x01002202
];
for i in 0..52 {
    assert_eq!(output[i], expected[i]);
}