Sha256: 1b59b0f65262a6ef0ff584eea3a1642b16aef2459a07beb6fb77e0d200bece1c

Contents?: true

Size: 905 Bytes

Versions: 1

Compression:

Stored size: 905 Bytes

Contents

require 'helper'

class TestAES < Test::Unit::TestCase
    
  should "encrypt and decrypt a string" do
    key = "01234567890123456789012345678901"
    msg = "This is a message that nobody should ever see"
    enc = AES.encrypt(msg, key)
    assert_equal msg, AES.decrypt(enc, key)
    enc = AES.encrypt(msg, key, {:format => :plain})
    assert_equal msg, AES.decrypt(enc, key, {:format => :plain})
  end
  
  should "produce the same encrypted string when provided an identical key and iv" do
    key  = "01234567890123456789012345678901"
    msg  = "This is a message that nobody should ever see"
    iv   = AES.iv(:base_64)
    enc1 = AES.encrypt(msg, key, {:iv => iv})
    enc2 = AES.encrypt(msg, key, {:iv => iv})
    assert_equal enc1, enc2
  end
  
  should "generate a new key when AES#key" do
    assert_equal 32, AES.key.length
    assert_equal 44, AES.key(256, :base_64).length
  end
    
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aes-0.4.0 test/test_aes.rb