diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-05-31 00:12:36 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-05-31 00:12:36 +0000 |
commit | 246df6f7c1f9c3a216d73eb15ac23e8725877c86 (patch) | |
tree | 7695cedd2c30e0edd4a764741cb23aa831381be7 /test/openssl | |
parent | 67cf90f6a4c74b3e5c881447ce9a762237d347a2 (diff) |
merges r31640 from trunk into ruby_1_9_2.
--
* test/openssl/test_pkey_rsa.rb: Add tests for sign/verify.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@31838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/openssl')
-rw-r--r-- | test/openssl/test_pkey_rsa.rb | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/test/openssl/test_pkey_rsa.rb b/test/openssl/test_pkey_rsa.rb index 445029ef27..4e07cbd500 100644 --- a/test/openssl/test_pkey_rsa.rb +++ b/test/openssl/test_pkey_rsa.rb @@ -51,6 +51,36 @@ class OpenSSL::TestPKeyRSA < Test::Unit::TestCase OpenSSL::PKey::RSA.new pem assert_equal([], OpenSSL.errors) end -end + def test_sign_verify + key = OpenSSL::PKey::RSA.new(512) + digest = OpenSSL::Digest::SHA1.new + data = 'Sign me!' + sig = key.sign(digest, data) + assert(key.verify(digest, sig, data)) + end + + def test_digest_state_irrelevant_sign + key = OpenSSL::PKey::RSA.new(512) + digest1 = OpenSSL::Digest::SHA1.new + digest2 = OpenSSL::Digest::SHA1.new + data = 'Sign me!' + digest1 << 'Change state of digest1' + sig1 = key.sign(digest1, data) + sig2 = key.sign(digest2, data) + assert_equal(sig1, sig2) + end + + def test_digest_state_irrelevant_verify + key = OpenSSL::PKey::RSA.new(512) + digest1 = OpenSSL::Digest::SHA1.new + digest2 = OpenSSL::Digest::SHA1.new + data = 'Sign me!' + sig = key.sign(digest1, data) + digest1.reset + digest1 << 'Change state of digest1' + assert(key.verify(digest1, sig, data)) + assert(key.verify(digest2, sig, data)) + end +end end |