Rust有许多库可以用来进行AES加密和解密。这里介绍两种方法:
- 使用Rust标准库中的
aes
模块:
```rust use std::convert::TryInto; use std::str;
use aes::Aes128; use block_modes::block_padding::Pkcs7; use block_modes::{BlockMode, Cbc}; use digest::Digest; use sha2::Sha256;
fn aes_encrypt(key: &str, plaintext: &[u8]) -> Vec { // Create a SHA-256 digest of the key let mut hasher = Sha256::new(); hasher.update(key); let key = hasher.finalize();
// Convert the key to a fixed-size array
let key_array: [u8; 16] = key[..16].