Function aes_frast::padding_128bit::pa_zeros_ifnotcomplete
[−]
[src]
pub fn pa_zeros_ifnotcomplete(input_vec: &mut Vec<u8>)
Zeros padding only if not complete
This padding has never been standardized in cryptography specifications. So, NOT recommended.
Different from the pa_zeros
function, this function only adds zeros to the incomplete end-block.
When the end-block is complete, it keeps it unchanged.
[Attention!] If the origin data ends with zero(s) (one or more 0xFF), depadding will remove all these zeros.
Examples
use aes_frast::padding_128bit::pa_zeros_ifnotcomplete; let mut origin = vec![0xFFu8; 7]; pa_zeros_ifnotcomplete(&mut origin); assert_eq!(origin, vec![0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8]); origin = vec![0xFFu8; 16]; pa_zeros_ifnotcomplete(&mut origin); assert_eq!(origin, vec![0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8]);