Method: String#decrypt_ecb
- Defined in:
- lib/crypto_toolchain/extensions/string_extensions.rb
#decrypt_ecb(key:, blocksize: CryptoToolchain::AES_BLOCK_SIZE, cipher: 'AES-128') ⇒ Object
151 152 153 154 155 156 157 158 159 160 |
# File 'lib/crypto_toolchain/extensions/string_extensions.rb', line 151 def decrypt_ecb(key: , blocksize: CryptoToolchain::AES_BLOCK_SIZE, cipher: 'AES-128') in_blocks(blocksize).each_with_object("") do |block, memo| dec = OpenSSL::Cipher.new("#{cipher}-ECB") dec.decrypt dec.key = key dec.padding = 0 plain = dec.update(block) + dec.final memo << plain end.without_pkcs7_padding(blocksize) end |