Function aes_frast::padding_128bit::de_ansix923_pkcs7
source · pub fn de_ansix923_pkcs7(input_vec: &mut Vec<u8>) -> usize
Expand description
Remove ANSIX923 or PKCS #7 padding
- parameter
input_vec
: the vec that contains original data. - return : the removed bytes’ length.
Attention! Please be sure the parameter ends with exactly the ANSIX923 or PKCS #7 padding string. This function does NOT perform checks.
Examples
use aes_frast::padding_128bit::de_ansix923_pkcs7;
let mut ansix923 = vec![0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0x00u8,
0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x09u8];
let padding_ansix923_length = de_ansix923_pkcs7(&mut ansix923);
let mut pkcs7 = vec![0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0x09u8,
0x09u8, 0x09u8, 0x09u8, 0x09u8, 0x09u8, 0x09u8, 0x09u8, 0x09u8];
let padding_pkcs7_length = de_ansix923_pkcs7(&mut pkcs7);
let expected = vec![0xFFu8; 7];
assert_eq!(padding_ansix923_length, 9);
assert_eq!(padding_pkcs7_length, 9);
assert_eq!(ansix923, expected);
assert_eq!(pkcs7, expected);