Я использую OpenSSL::Cipher.new('AES-256-CBC')
до encrypt
и decrypt
файл.Когда я запускаю код ниже в консоли rails, он работает нормально.Но при выполнении задания wrong final block length
возникает исключение на cipher.final
tmp_file
- ссылка на файл GCS
Encrypt.generate_enc_keys
- генерация ключа lib
с использованием OpenSSL::PKCS5.pbkdf2_hmac
def generate_decrypted_agreement tmp_file
cipher = OpenSSL::Cipher.new('AES-256-CBC')
cipher.decrypt
cipher.key = Encrypt.generate_enc_keys('testkey1234', 'test', 10, 32)
cipher.iv = Encrypt.generate_enc_keys('testiv1234', 'test', 10, 16)
buf = ''
File.open("la.pdf", "wb") do |outf|
open(tmp_file) do |inf|
while inf.read(4096, buf)
outf << cipher.update(buf)
end
outf << cipher.final
end
end
конец