From bec7306918f6f0ef632c1f0f0301cf74de04ca90 Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Sun, 15 Oct 2023 17:22:34 +0800 Subject: [PATCH] feat: clean code --- src/crypto_aes.rs | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/src/crypto_aes.rs b/src/crypto_aes.rs index 0b4fd73..75722a8 100644 --- a/src/crypto_aes.rs +++ b/src/crypto_aes.rs @@ -1,6 +1,4 @@ -use aes_gcm_stream::{Aes256GcmStreamDecryptor, Aes256GcmStreamEncryptor}; use rust_util::{opt_result, XResult}; -use zeroize::Zeroize; pub fn try_aes_gcm_decrypt_with_salt(key: &[u8], nonce: &[u8], salt: &[u8], message: &[u8]) -> XResult> { let new_nonce = build_salted_nonce(nonce, salt); @@ -11,13 +9,7 @@ pub fn try_aes_gcm_decrypt_with_salt(key: &[u8], nonce: &[u8], salt: &[u8], mess } pub fn aes_gcm_decrypt(key: &[u8], nonce: &[u8], message: &[u8]) -> XResult> { - let mut key: [u8; 32] = opt_result!(key.try_into(), "Invalid envelop: {}"); - let mut aes256_gcm = Aes256GcmStreamDecryptor::new(key, nonce); - let mut b1 = aes256_gcm.update(message); - let b2 = opt_result!(aes256_gcm.finalize(), "Invalid envelop: {}"); - b1.extend_from_slice(&b2); - key.zeroize(); - Ok(b1) + Ok(opt_result!(aes_gcm_stream::aes_256_gcm_decrypt(key, nonce, message), "Bad key or cipher text: {}")) } pub fn aes_gcm_encrypt_with_salt(key: &[u8], nonce: &[u8], salt: &[u8], message: &[u8]) -> XResult> { @@ -26,14 +18,7 @@ pub fn aes_gcm_encrypt_with_salt(key: &[u8], nonce: &[u8], salt: &[u8], message: } pub fn aes_gcm_encrypt(key: &[u8], nonce: &[u8], message: &[u8]) -> XResult> { - let mut key: [u8; 32] = opt_result!(key.try_into(), "Invalid envelop: {}"); - let mut aes256_gcm = Aes256GcmStreamEncryptor::new(key, nonce); - let mut b1 = aes256_gcm.update(message); - let (b2, tag) = aes256_gcm.finalize(); - b1.extend_from_slice(&b2); - b1.extend_from_slice(&tag); - key.zeroize(); - Ok(b1) + Ok(opt_result!(aes_gcm_stream::aes_256_gcm_encrypt(key, nonce, message), "Bad key length: {}")) } fn build_salted_nonce(nonce: &[u8], salt: &[u8]) -> Vec {