OpenSSL key length too short in Ruby, not in Bash

Viewed 1558

I originally experimented with a simple encryption script in Bash and it worked pretty much as expected. However, I'm now trying to do the same thing in Ruby and the Ruby version seems function a little differently.

Bash

Encrypt

echo 'hello' | openssl enc -aes-256-cbc -a

Password: mypass

Result: U2FsdGVkX19rERfOXiKs97FgwIkLy3+ttZzaHkEoQyE=

Decrypt

echo 'U2FsdGVkX19rERfOXiKs97FgwIkLy3+ttZzaHkEoQyE=' | openssl aes-256-cbc -d -a

Password: mypass

Result: hello


Ruby

require "openssl"
require 'base64'

cipher = OpenSSL::Cipher.new('AES-256-CBC').encrypt
cipher.key = 'mypass'

This is what I've attempted in Ruby so far but I receive a OpenSSL::Cipher::CipherError: key length too short error. I would like to mimic Bash as much as possible.

1 Answers
Related