X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=src%2Fcrypto.rs;fp=src%2Fcrypto.rs;h=ddf257cd3b60d425a856792b4c10537ae86d4d5d;hb=96a5780355820bb1a78cb4ec8dff41dd30ef6ceb;hp=a7aa5b98f49faec4b47fd63b112f41eff0d1613e;hpb=c1a5fe1d8e733d744a94acf278903133e2a72115;p=rup.git diff --git a/src/crypto.rs b/src/crypto.rs index a7aa5b9..ddf257c 100644 --- a/src/crypto.rs +++ b/src/crypto.rs @@ -27,7 +27,7 @@ pub enum DecryptError { fn decode_key(key: &str) -> Result, KeyError> { match base64::decode(key) { - Ok(k) => if k.len() != 16 { return Err(KeyError::WrongKeyLength) } else { Ok(k) }, + Ok(k) => if k.len() != 16 { Err(KeyError::WrongKeyLength) } else { Ok(k) }, Err(_e) => Err(KeyError::UnableToDecodeBase64Key) } } @@ -37,7 +37,7 @@ fn decode_key(key: &str) -> Result, KeyError> { /// IV: 16 bytes randomized. /// Mode : CBC. pub fn encrypt(key: &str, plain_text: &str) -> Result { - let key_as_bytes = decode_key(key).map_err(|e| EncryptError::KeyError(e))?; + let key_as_bytes = decode_key(key).map_err(EncryptError::KeyError)?; let text_as_bytes = plain_text.as_bytes(); let iv = rand::thread_rng().gen::<[u8; 16]>(); @@ -59,7 +59,7 @@ pub fn encrypt(key: &str, plain_text: &str) -> Result { /// Decrypt the given text with the given key. The key length must be 128 bits encoded in base64. /// Input format: "1" + base_64( + + ) pub fn decrypt(key: &str, cipher_text: &str) -> Result { - let key_as_bytes = decode_key(key).map_err(|e| DecryptError::KeyError(e))?; + let key_as_bytes = decode_key(key).map_err(DecryptError::KeyError)?; // Can't decrypt a message with the wrong version. if !cipher_text.starts_with(consts::CURRENT_MESSAGE_VERSION) { return Err(DecryptError::WrongMessageVersion) }