aboutsummaryrefslogtreecommitdiff
path: root/openssl
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2018-07-04 23:15:33 -0700
committerSteven Fackler <[email protected]>2018-07-04 23:15:33 -0700
commit6422ffb1b210180694620049fc858021b23902ed (patch)
tree4b4c7512d7965db5d1108ecd1d821161b5451e56 /openssl
parentMerge pull request #954 from pinkisemils/output-all-msvc-linker-args (diff)
downloadrust-openssl-6422ffb1b210180694620049fc858021b23902ed.tar.xz
rust-openssl-6422ffb1b210180694620049fc858021b23902ed.zip
Clean up IGE example
Closes #955
Diffstat (limited to 'openssl')
-rw-r--r--openssl/src/aes.rs33
1 files changed, 11 insertions, 22 deletions
diff --git a/openssl/src/aes.rs b/openssl/src/aes.rs
index c7cc0eef..de45d2ca 100644
--- a/openssl/src/aes.rs
+++ b/openssl/src/aes.rs
@@ -23,32 +23,21 @@
//! # Examples
//!
//! ```rust
-//! # extern crate openssl;
-//! extern crate hex;
-//! use openssl::aes::{AesKey, KeyError, aes_ige};
+//! use openssl::aes::{AesKey, aes_ige};
//! use openssl::symm::Mode;
-//! use hex::FromHex;
//!
-//! fn decrypt() -> Result<(), KeyError> {
-//! let raw_key = "000102030405060708090A0B0C0D0E0F";
-//! let hex_cipher = "12345678901234561234567890123456";
-//! let randomness = "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F";
-//! if let (Ok(key_as_u8), Ok(cipher_as_u8), Ok(mut iv_as_u8)) =
-//! (Vec::from_hex(raw_key), Vec::from_hex(hex_cipher), Vec::from_hex(randomness)) {
-//! let key = AesKey::new_encrypt(&key_as_u8)?;
-//! let mut output = vec![0u8; cipher_as_u8.len()];
-//! aes_ige(&cipher_as_u8, &mut output, &key, &mut iv_as_u8, Mode::Encrypt);
-//! assert_eq!(hex::encode(output), "a6ad974d5cea1d36d2f367980907ed32");
-//! }
-//! Ok(())
-//! }
+//! let key = b"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F";
+//! let plaintext = b"\x12\x34\x56\x78\x90\x12\x34\x56\x12\x34\x56\x78\x90\x12\x34\x56";
+//! let mut iv = *b"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F\
+//! \x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F";
//!
-//! # fn main() {
-//! # decrypt();
-//! # }
+//! let key = AesKey::new_encrypt(key).unwrap();
+//! let mut output = [0u8; 16];
+//! aes_ige(plaintext, &mut output, &key, &mut iv, Mode::Encrypt);
+//! assert_eq!(output, *b"\xa6\xad\x97\x4d\x5c\xea\x1d\x36\xd2\xf3\x67\x98\x09\x07\xed\x32");
use ffi;
-use std::mem;
use libc::c_int;
+use std::mem;
use symm::Mode;
@@ -151,8 +140,8 @@ pub fn aes_ige(in_: &[u8], out: &mut [u8], key: &AesKey, iv: &mut [u8], mode: Mo
mod test {
use hex::FromHex;
- use symm::Mode;
use super::*;
+ use symm::Mode;
// From https://www.mgp25.com/AESIGE/
#[test]