1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* test/openssl/test_engine.rb: add test for engine cipher. RC4 is used

because AES is not supported by the "openssl" engine currently.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
emboss 2011-11-05 18:33:37 +00:00
parent 273c900be8
commit 600fcacc75
2 changed files with 27 additions and 0 deletions

View file

@ -1,3 +1,8 @@
Sun Nov 06 03:22:36 2011 Martin Bosslet <Martin.Bosslet@googlemail.com>
* test/openssl/test_engine.rb: add test for engine cipher. RC4 is used
because AES is not supported by the "openssl" engine currently.
Sun Nov 6 00:11:52 2011 Tanaka Akira <akr@fsij.org>
* lib/test/unit.rb (Test::Unit::Options#non_options): options[:ruby]

View file

@ -37,6 +37,28 @@ class OpenSSL::TestEngine < Test::Unit::TestCase
assert_not_nil(digest)
data = "test"
assert_equal(OpenSSL::Digest::SHA1.digest(data), digest.digest(data))
cleanup
end
def test_openssl_engine_cipher_rc4
engine = OpenSSL::Engine.by_id("openssl")
algo = "RC4" #AES is not supported by openssl Engine (<=1.0.0e)
data = "a" * 1000
key = OpenSSL::Random.random_bytes(16)
encipher = engine.cipher(algo)
encipher.encrypt
encipher.key = key
decipher = OpenSSL::Cipher.new(algo)
decipher.decrypt
decipher.key = key
encrypted = encipher.update(data) + encipher.final
decrypted = decipher.update(encrypted) + decipher.final
assert_equal(data, decrypted)
cleanup
end
private