Rubyで暗号化したデータをJavaで復号化、またその逆を行ってみた。 今回はAES128ビットの暗号化モードCBC、パディングはPKCS#5で実施。 まずRuby側のコード。 require 'openssl' require 'base64' class CryptUtil def self.encrypt(pass, value) enc = OpenSSL::Cipher.new('aes-128-cbc') # 暗号化or復号化どちらを行うかセット(今回は暗号化)、復号化の場合はdecrypt enc.encrypt # ivを生成 iv = OpenSSL::Random.random_bytes(16) # 暗号化する際のキー文字列をセット enc.key = pass # ivをセット enc.iv = iv crypted = "" crypted << enc.upda