as the array
let aeskey = Aes256::new(&GenericArray::from_slice(&[0;32]));
не понимаю, на что он ругается? уже все перепробовал
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=71c3cca58e3128479d0beecaa6f094cb
Как вы делаете aes256 шифрование? И можно ли так делать с apply методом polars?
я разобрался, где ошибка pub fn pkcs7padding(data: Vec<u8>, block_length: usize) -> Vec<u8> { let padding_size = block_length - (data.len() % block_length); let mut padded_data = data.to_vec(); padded_data.extend(vec![padding_size as u8; padding_size]); padded_data } pub fn pkcs7unpadding(data: Vec<u8>) -> Vec<u8> { let data_len = data.len(); let padding_length = data[data_len-1] as usize; data[0..data_len-padding_length].to_vec() } pub fn encrypt(_aes: &Aes256, data: &Vec<u8>) -> Vec<u8> { let mut encrypted: Vec<u8> = Vec::new(); let data = pkcs7padding(data.to_vec(), 32); for chunk in data.chunks_exact(32) { dbg!("{:?}", &chunk); let mut block = GenericArray::clone_from_slice(chunk); // ошибка в этой строке _aes.encrypt_block(&mut block); encrypted.extend_from_slice(block.as_slice()); } encrypted } thread 'main' panicked at /home/.cargo/registry/src/index.crates.io-6f17d22bba15001f/generic-array-0.14.7/src/lib.rs:604:14: Slice must be the same length as the array
длина chunk в функции encrypt всегда 32
Обсуждают сегодня