Method: String#without_pkcs7_padding

Defined in:
lib/crypto_toolchain/extensions/string_extensions.rb

#without_pkcs7_padding(blocksize = CryptoToolchain::AES_BLOCK_SIZE, raise_error: false) ⇒ Object



143
144
145
146
147
148
149
# File 'lib/crypto_toolchain/extensions/string_extensions.rb', line 143

def without_pkcs7_padding(blocksize = CryptoToolchain::AES_BLOCK_SIZE, raise_error: false)
  if !is_pkcs7_padded?(blocksize)
    raise ArgumentError.new("Not PKCS7 padded") unless is_pkcs7_padded?(blocksize) if raise_error
    return self
  end
  self[0..(bytesize - (1 + bytes.last))]
end