INNER CODE UNIT · Rust

aes_128

ethereum/mpz · crates/circuits-data/src/lib.rs:88

        fn aes_128(key: [u8; 16], msg: [u8; 16]) -> [u8; 16] {
            use aes::Aes128;

            let aes = Aes128::new_from_slice(&key).unwrap();
            let mut ciphertext = msg.into();
            aes.encrypt_block(&mut ciphertext);
            ciphertext.into()
        }

        let mut rng = StdRng::seed_from_u64(0);

        let key: [u8; 16] = rng.random();
        let msg: [u8; 16] = rng.random();
        let ciphertext: [u8; 16] = evaluate!(AES128, key, msg).unwrap();
        let expected = aes_128(key, msg);
        assert_eq!(ciphertext, expected);
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…