Pad block with byte sequence \x80 00...00 00
.
use block_padding::{Iso7816, Padding};
let msg = b"test";
let n = msg.len();
let mut buffer = [0xff; 16];
buffer[..n].copy_from_slice(msg);
let padded_msg = Iso7816::pad(&mut buffer, n, 8).unwrap();
assert_eq!(padded_msg, b"test\x80\x00\x00\x00");
assert_eq!(Iso7816::unpad(&padded_msg).unwrap(), msg);
let padded_msg = Iso7816::pad(&mut buffer, n, 2).unwrap();
assert_eq!(padded_msg, b"test\x80\x00");
assert_eq!(Iso7816::unpad(&padded_msg).unwrap(), msg);
Pads block
filled with data up to pos
. Read more
Unpad given data
by truncating it according to the used padding. In case of the malformed padding will return UnpadError
Read more
Pads message with length pos
in the provided buffer. Read more
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static