Enum block_padding::ZeroPadding
source · pub enum ZeroPadding {}Expand description
Pad block with zeros.
use block_padding::{ZeroPadding, Padding};
let msg = b"test";
let n = msg.len();
let mut buffer = [0xff; 16];
buffer[..n].copy_from_slice(msg);
let padded_msg = ZeroPadding::pad(&mut buffer, n, 8).unwrap();
assert_eq!(padded_msg, b"test\x00\x00\x00\x00");
assert_eq!(ZeroPadding::unpad(&padded_msg).unwrap(), msg);let padded_msg = ZeroPadding::pad(&mut buffer, n, 2).unwrap();
assert_eq!(padded_msg, b"test");
assert_eq!(ZeroPadding::unpad(&padded_msg).unwrap(), msg);Note that zero padding may not be reversible if the original message ends with one or more zero bytes.
Trait Implementations§
source§impl Clone for ZeroPadding
impl Clone for ZeroPadding
source§fn clone(&self) -> ZeroPadding
fn clone(&self) -> ZeroPadding
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more