jruby-openssl 0.7.4 → 0.7.6.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. data/.gemtest +0 -0
  2. data/History.txt +51 -14
  3. data/Manifest.txt +136 -79
  4. data/README.txt +1 -1
  5. data/Rakefile +17 -8
  6. data/lib/{openssl → 1.8/openssl}/bn.rb +2 -2
  7. data/lib/{openssl → 1.8/openssl}/buffering.rb +3 -1
  8. data/lib/{openssl → 1.8/openssl}/cipher.rb +0 -0
  9. data/lib/{openssl → 1.8/openssl}/config.rb +1 -1
  10. data/lib/{openssl → 1.8/openssl}/digest.rb +2 -2
  11. data/lib/{openssl → 1.8/openssl}/pkcs7.rb +0 -0
  12. data/lib/{openssl/ssl.rb → 1.8/openssl/ssl-internal.rb} +2 -2
  13. data/lib/1.8/openssl/ssl.rb +1 -0
  14. data/lib/{openssl/x509.rb → 1.8/openssl/x509-internal.rb} +8 -9
  15. data/lib/1.8/openssl/x509.rb +1 -0
  16. data/lib/{openssl.rb → 1.8/openssl.rb} +2 -11
  17. data/lib/1.9/openssl/bn.rb +35 -0
  18. data/lib/1.9/openssl/buffering.rb +448 -0
  19. data/lib/1.9/openssl/cipher.rb +65 -0
  20. data/lib/1.9/openssl/config.rb +313 -0
  21. data/lib/1.9/openssl/digest.rb +72 -0
  22. data/lib/1.9/openssl/ssl-internal.rb +177 -0
  23. data/lib/1.9/openssl/ssl.rb +2 -0
  24. data/lib/1.9/openssl/x509-internal.rb +158 -0
  25. data/lib/1.9/openssl/x509.rb +2 -0
  26. data/lib/1.9/openssl.rb +22 -0
  27. data/lib/{jopenssl → shared/jopenssl}/version.rb +1 -1
  28. data/lib/shared/jopenssl.jar +0 -0
  29. data/lib/{openssl → shared/openssl}/dummy.rb +0 -0
  30. data/lib/{openssl → shared/openssl}/dummyssl.rb +0 -0
  31. data/lib/shared/openssl/pkcs12.rb +50 -0
  32. data/lib/shared/openssl/ssl.rb +1 -0
  33. data/lib/shared/openssl/x509.rb +1 -0
  34. data/lib/shared/openssl.rb +20 -0
  35. data/test/{openssl → 1.8}/ssl_server.rb +0 -0
  36. data/test/{openssl → 1.8}/test_asn1.rb +15 -0
  37. data/test/{openssl → 1.8}/test_cipher.rb +0 -0
  38. data/test/{openssl → 1.8}/test_config.rb +0 -0
  39. data/test/{openssl → 1.8}/test_digest.rb +0 -0
  40. data/test/{openssl → 1.8}/test_ec.rb +0 -0
  41. data/test/{openssl → 1.8}/test_hmac.rb +0 -0
  42. data/test/{openssl → 1.8}/test_ns_spki.rb +0 -0
  43. data/test/{openssl → 1.8}/test_pair.rb +10 -2
  44. data/test/{openssl → 1.8}/test_pkcs7.rb +0 -0
  45. data/test/{openssl → 1.8}/test_pkey_rsa.rb +0 -0
  46. data/test/{openssl → 1.8}/test_ssl.rb +17 -20
  47. data/test/{openssl → 1.8}/test_x509cert.rb +0 -0
  48. data/test/{openssl → 1.8}/test_x509crl.rb +0 -0
  49. data/test/{openssl → 1.8}/test_x509ext.rb +0 -0
  50. data/test/{openssl → 1.8}/test_x509name.rb +0 -0
  51. data/test/{openssl → 1.8}/test_x509req.rb +0 -0
  52. data/test/{openssl → 1.8}/test_x509store.rb +0 -0
  53. data/test/{openssl → 1.8}/utils.rb +0 -0
  54. data/test/1.9/ssl_server.rb +81 -0
  55. data/test/1.9/test_asn1.rb +589 -0
  56. data/test/1.9/test_bn.rb +23 -0
  57. data/test/1.9/test_buffering.rb +88 -0
  58. data/test/1.9/test_cipher.rb +107 -0
  59. data/test/1.9/test_config.rb +288 -0
  60. data/test/1.9/test_digest.rb +118 -0
  61. data/test/1.9/test_engine.rb +15 -0
  62. data/test/1.9/test_hmac.rb +32 -0
  63. data/test/1.9/test_ns_spki.rb +50 -0
  64. data/test/1.9/test_ocsp.rb +47 -0
  65. data/test/1.9/test_pair.rb +257 -0
  66. data/test/1.9/test_pkcs12.rb +209 -0
  67. data/test/1.9/test_pkcs7.rb +151 -0
  68. data/test/1.9/test_pkey_dh.rb +72 -0
  69. data/test/1.9/test_pkey_dsa.rb +224 -0
  70. data/test/1.9/test_pkey_ec.rb +182 -0
  71. data/test/1.9/test_pkey_rsa.rb +244 -0
  72. data/test/1.9/test_ssl.rb +455 -0
  73. data/test/1.9/test_ssl_session.rb +327 -0
  74. data/test/1.9/test_x509cert.rb +217 -0
  75. data/test/1.9/test_x509crl.rb +221 -0
  76. data/test/1.9/test_x509ext.rb +69 -0
  77. data/test/1.9/test_x509name.rb +296 -0
  78. data/test/1.9/test_x509req.rb +150 -0
  79. data/test/1.9/test_x509store.rb +229 -0
  80. data/test/1.9/utils.rb +304 -0
  81. data/test/fixture/ids_in_subject_rdn_set.pem +31 -0
  82. data/test/fixture/purpose/ca/ca_config.rb +1 -1
  83. data/test/fixture/purpose/ca/gen_cert.rb +128 -0
  84. data/test/fixture/purpose/ca/newcerts/4_cert.pem +19 -0
  85. data/test/fixture/purpose/ca/serial +1 -1
  86. data/test/fixture/purpose/sslserver_no_dsig_in_keyUsage.pem +19 -0
  87. data/test/ruby/envutil.rb +208 -0
  88. data/test/ruby/ut_eof.rb +128 -0
  89. data/test/test_certificate.rb +9 -0
  90. data/test/test_java.rb +1 -1
  91. data/test/test_openssl.rb +1 -1
  92. data/test/test_pkcs7.rb +16 -0
  93. data/test/test_pkey_dsa.rb +180 -0
  94. data/test/test_pkey_rsa.rb +298 -0
  95. data/test/test_ssl.rb +1 -1
  96. data/test/test_x509store.rb +8 -0
  97. metadata +133 -73
  98. data/lib/jopenssl.jar +0 -0
  99. data/test/test_pkey.rb +0 -204
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: jruby-openssl
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.7.4
5
+ version: 0.7.6.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Ola Bini and JRuby contributors
@@ -10,8 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-04-28 00:00:00 +09:00
14
- default_executable:
13
+ date: 2012-02-15 00:00:00 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: bouncy-castle-java
@@ -21,9 +20,20 @@ dependencies:
21
20
  requirements:
22
21
  - - ">="
23
22
  - !ruby/object:Gem::Version
24
- version: "0"
23
+ version: 1.5.0146.1
25
24
  type: :runtime
26
25
  version_requirements: *id001
26
+ - !ruby/object:Gem::Dependency
27
+ name: rdoc
28
+ prerelease: false
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
32
+ - - ~>
33
+ - !ruby/object:Gem::Version
34
+ version: "3.10"
35
+ type: :development
36
+ version_requirements: *id002
27
37
  description: JRuby-OpenSSL is an add-on gem for JRuby that emulates the Ruby OpenSSL native library.
28
38
  email: ola.bini@gmail.com
29
39
  executables: []
@@ -41,102 +51,152 @@ files:
41
51
  - Manifest.txt
42
52
  - README.txt
43
53
  - License.txt
44
- - lib/jopenssl.jar
45
- - lib/openssl.rb
46
- - lib/openssl/dummy.rb
47
- - lib/openssl/dummyssl.rb
48
- - lib/openssl/config.rb
49
- - lib/openssl/cipher.rb
50
- - lib/openssl/ssl.rb
51
- - lib/openssl/bn.rb
52
- - lib/openssl/x509.rb
53
- - lib/openssl/digest.rb
54
- - lib/openssl/buffering.rb
55
- - lib/openssl/pkcs7.rb
56
- - lib/jopenssl/version.rb
57
- - test/test_imaps.rb
54
+ - lib/shared/jopenssl.jar
55
+ - lib/1.9/openssl.rb
56
+ - lib/1.9/openssl/bn.rb
57
+ - lib/1.9/openssl/x509-internal.rb
58
+ - lib/1.9/openssl/cipher.rb
59
+ - lib/1.9/openssl/digest.rb
60
+ - lib/1.9/openssl/ssl.rb
61
+ - lib/1.9/openssl/buffering.rb
62
+ - lib/1.9/openssl/ssl-internal.rb
63
+ - lib/1.9/openssl/x509.rb
64
+ - lib/1.9/openssl/config.rb
65
+ - lib/shared/openssl.rb
66
+ - lib/shared/openssl/dummyssl.rb
67
+ - lib/shared/openssl/ssl.rb
68
+ - lib/shared/openssl/pkcs12.rb
69
+ - lib/shared/openssl/x509.rb
70
+ - lib/shared/openssl/dummy.rb
71
+ - lib/shared/jopenssl/version.rb
72
+ - lib/1.8/openssl.rb
73
+ - lib/1.8/openssl/bn.rb
74
+ - lib/1.8/openssl/pkcs7.rb
75
+ - lib/1.8/openssl/x509-internal.rb
76
+ - lib/1.8/openssl/cipher.rb
77
+ - lib/1.8/openssl/digest.rb
78
+ - lib/1.8/openssl/ssl.rb
79
+ - lib/1.8/openssl/buffering.rb
80
+ - lib/1.8/openssl/ssl-internal.rb
81
+ - lib/1.8/openssl/x509.rb
82
+ - lib/1.8/openssl/config.rb
58
83
  - test/test_all.rb
84
+ - test/test_pkey_dsa.rb
59
85
  - test/test_integration.rb
60
- - test/ut_eof.rb
61
- - test/test_java.rb
86
+ - test/test_ssl.rb
87
+ - test/test_parse_certificate.rb
62
88
  - test/test_openssl.rb
63
- - test/test_pkey.rb
64
- - test/test_cipher.rb
65
89
  - test/cert_with_ec_pk.cer
66
- - test/test_pkcs7.rb
90
+ - test/ut_eof.rb
67
91
  - test/test_x509store.rb
92
+ - test/test_imaps.rb
68
93
  - test/test_certificate.rb
69
- - test/test_parse_certificate.rb
70
- - test/test_ssl.rb
71
- - test/openssl/test_x509name.rb
72
- - test/openssl/test_ns_spki.rb
73
- - test/openssl/test_x509cert.rb
74
- - test/openssl/ssl_server.rb
75
- - test/openssl/test_pair.rb
76
- - test/openssl/test_ec.rb
77
- - test/openssl/test_config.rb
78
- - test/openssl/utils.rb
79
- - test/openssl/test_x509req.rb
80
- - test/openssl/test_cipher.rb
81
- - test/openssl/test_digest.rb
82
- - test/openssl/test_x509ext.rb
83
- - test/openssl/test_asn1.rb
84
- - test/openssl/test_pkcs7.rb
85
- - test/openssl/test_x509store.rb
86
- - test/openssl/test_pkey_rsa.rb
87
- - test/openssl/test_ssl.rb
88
- - test/openssl/test_x509crl.rb
89
- - test/openssl/test_hmac.rb
90
- - test/ref/compile.rb
94
+ - test/test_pkcs7.rb
95
+ - test/test_cipher.rb
96
+ - test/test_pkey_rsa.rb
97
+ - test/test_java.rb
98
+ - test/1.9/test_ssl_session.rb
99
+ - test/1.9/test_engine.rb
100
+ - test/1.9/test_asn1.rb
101
+ - test/1.9/test_pkey_dh.rb
102
+ - test/1.9/test_pkey_dsa.rb
103
+ - test/1.9/test_ocsp.rb
104
+ - test/1.9/ssl_server.rb
105
+ - test/1.9/test_x509ext.rb
106
+ - test/1.9/utils.rb
107
+ - test/1.9/test_ssl.rb
108
+ - test/1.9/test_buffering.rb
109
+ - test/1.9/test_ns_spki.rb
110
+ - test/1.9/test_digest.rb
111
+ - test/1.9/test_pair.rb
112
+ - test/1.9/test_x509crl.rb
113
+ - test/1.9/test_x509store.rb
114
+ - test/1.9/test_bn.rb
115
+ - test/1.9/test_pkey_ec.rb
116
+ - test/1.9/test_pkcs7.rb
117
+ - test/1.9/test_pkcs12.rb
118
+ - test/1.9/test_cipher.rb
119
+ - test/1.9/test_pkey_rsa.rb
120
+ - test/1.9/test_x509req.rb
121
+ - test/1.9/test_x509name.rb
122
+ - test/1.9/test_hmac.rb
123
+ - test/1.9/test_x509cert.rb
124
+ - test/1.9/test_config.rb
91
125
  - test/ref/a.out
92
126
  - test/ref/pkcs1
93
127
  - test/ref/pkcs1.c
94
- - test/fixture/cacert.pem
95
- - test/fixture/ca-bundle.crt
128
+ - test/ref/compile.rb
96
129
  - test/fixture/common.pem
97
130
  - test/fixture/key_then_cert.pem
131
+ - test/fixture/keypair.pem
132
+ - test/fixture/cacert.pem
98
133
  - test/fixture/verisign.pem
99
134
  - test/fixture/cert_localhost.pem
100
- - test/fixture/localhost_keypair.pem
101
- - test/fixture/verisign_c3.pem
102
135
  - test/fixture/selfcert.pem
103
136
  - test/fixture/max.pem
104
- - test/fixture/keypair.pem
137
+ - test/fixture/localhost_keypair.pem
138
+ - test/fixture/ids_in_subject_rdn_set.pem
139
+ - test/fixture/ca-bundle.crt
140
+ - test/fixture/verisign_c3.pem
141
+ - test/fixture/ca_path/72fa7371.0
142
+ - test/fixture/ca_path/verisign.pem
143
+ - test/fixture/imaps/cacert.pem
144
+ - test/fixture/imaps/server.crt
145
+ - test/fixture/imaps/server.key
146
+ - test/fixture/purpose/sslserver_no_dsig_in_keyUsage.pem
105
147
  - test/fixture/purpose/cacert.pem
106
- - test/fixture/purpose/b70a5bc1.0
107
- - test/fixture/purpose/sslclient.pem
108
148
  - test/fixture/purpose/sslserver.pem
109
- - test/fixture/purpose/sslclient/sslclient.pem
110
- - test/fixture/purpose/sslclient/csr.pem
111
- - test/fixture/purpose/sslclient/keypair.pem
112
- - test/fixture/purpose/ca/cacert.pem
149
+ - test/fixture/purpose/sslclient.pem
150
+ - test/fixture/purpose/b70a5bc1.0
151
+ - test/fixture/purpose/ca/serial
152
+ - test/fixture/purpose/ca/gen_cert.rb
113
153
  - test/fixture/purpose/ca/PASSWD_OF_CA_KEY_IS_1234
114
154
  - test/fixture/purpose/ca/ca_config.rb
115
- - test/fixture/purpose/ca/serial
116
- - test/fixture/purpose/ca/newcerts/2_cert.pem
117
- - test/fixture/purpose/ca/newcerts/3_cert.pem
155
+ - test/fixture/purpose/ca/cacert.pem
118
156
  - test/fixture/purpose/ca/private/cakeypair.pem
157
+ - test/fixture/purpose/ca/newcerts/4_cert.pem
158
+ - test/fixture/purpose/ca/newcerts/3_cert.pem
159
+ - test/fixture/purpose/ca/newcerts/2_cert.pem
160
+ - test/fixture/purpose/sslclient/csr.pem
161
+ - test/fixture/purpose/sslclient/keypair.pem
162
+ - test/fixture/purpose/sslclient/sslclient.pem
119
163
  - test/fixture/purpose/scripts/gen_cert.rb
120
164
  - test/fixture/purpose/scripts/init_ca.rb
121
165
  - test/fixture/purpose/scripts/gen_csr.rb
122
- - test/fixture/purpose/sslserver/sslserver.pem
123
166
  - test/fixture/purpose/sslserver/csr.pem
124
167
  - test/fixture/purpose/sslserver/keypair.pem
125
- - test/fixture/imaps/cacert.pem
126
- - test/fixture/imaps/server.crt
127
- - test/fixture/imaps/server.key
128
- - test/fixture/ca_path/verisign.pem
129
- - test/fixture/ca_path/72fa7371.0
168
+ - test/fixture/purpose/sslserver/sslserver.pem
169
+ - test/ruby/ut_eof.rb
170
+ - test/ruby/envutil.rb
130
171
  - test/java/pkcs7_mime_enveloped.message
131
- - test/java/pkcs7_mime_signed.message
172
+ - test/java/test_java_attribute.rb
132
173
  - test/java/test_java_pkcs7.rb
133
- - test/java/test_java_bio.rb
134
- - test/java/pkcs7_multipart_signed.message
135
174
  - test/java/test_java_mime.rb
136
- - test/java/test_java_attribute.rb
175
+ - test/java/pkcs7_mime_signed.message
137
176
  - test/java/test_java_smime.rb
138
- has_rdoc: true
139
- homepage: http://jruby-extras.rubyforge.org/jruby-openssl
177
+ - test/java/pkcs7_multipart_signed.message
178
+ - test/java/test_java_bio.rb
179
+ - test/1.8/test_asn1.rb
180
+ - test/1.8/ssl_server.rb
181
+ - test/1.8/test_x509ext.rb
182
+ - test/1.8/utils.rb
183
+ - test/1.8/test_ssl.rb
184
+ - test/1.8/test_ec.rb
185
+ - test/1.8/test_ns_spki.rb
186
+ - test/1.8/test_digest.rb
187
+ - test/1.8/test_pair.rb
188
+ - test/1.8/test_x509crl.rb
189
+ - test/1.8/test_x509store.rb
190
+ - test/1.8/test_pkcs7.rb
191
+ - test/1.8/test_cipher.rb
192
+ - test/1.8/test_pkey_rsa.rb
193
+ - test/1.8/test_x509req.rb
194
+ - test/1.8/test_x509name.rb
195
+ - test/1.8/test_hmac.rb
196
+ - test/1.8/test_x509cert.rb
197
+ - test/1.8/test_config.rb
198
+ - .gemtest
199
+ homepage: https://github.com/jruby/jruby-ossl
140
200
  licenses: []
141
201
 
142
202
  post_install_message:
@@ -144,7 +204,7 @@ rdoc_options:
144
204
  - --main
145
205
  - README.txt
146
206
  require_paths:
147
- - lib
207
+ - lib/shared
148
208
  required_ruby_version: !ruby/object:Gem::Requirement
149
209
  none: false
150
210
  requirements:
@@ -160,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
160
220
  requirements: []
161
221
 
162
222
  rubyforge_project: jruby-extras
163
- rubygems_version: 1.5.1
223
+ rubygems_version: 1.8.15
164
224
  signing_key:
165
225
  specification_version: 3
166
226
  summary: OpenSSL add-on for JRuby
data/lib/jopenssl.jar DELETED
Binary file
data/test/test_pkey.rb DELETED
@@ -1,204 +0,0 @@
1
- begin
2
- require "openssl"
3
- rescue LoadError
4
- end
5
-
6
- require "test/unit"
7
-
8
- class TestPKey < Test::Unit::TestCase
9
- def test_has_correct_methods
10
- pkey_methods = OpenSSL::PKey::PKey.instance_methods(false).sort - ["initialize"]
11
- assert_equal ["sign", "verify"], pkey_methods
12
-
13
- rsa_methods = OpenSSL::PKey::RSA.instance_methods(false).sort - ["initialize"]
14
- assert_equal ["d", "d=", "dmp1", "dmp1=", "dmq1", "dmq1=", "e", "e=", "export", "iqmp", "iqmp=", "n", "n=", "p", "p=", "params", "private?", "private_decrypt", "private_encrypt", "public?", "public_decrypt", "public_encrypt", "public_key", "q", "q=", "to_der", "to_pem", "to_s", "to_text"], rsa_methods
15
-
16
- assert_equal ["generate"], OpenSSL::PKey::RSA.methods(false)
17
-
18
- # dsa_methods = OpenSSL::PKey::DSA.instance_methods(false).sort - ["initialize"]
19
- # assert_equal ["export", "g", "g=", "p", "p=", "params", "priv_key", "priv_key=", "private?", "pub_key", "pub_key=", "public?", "public_key", "q", "q=", "syssign", "sysverify", "to_der", "to_pem", "to_s", "to_text"], dsa_methods
20
-
21
- # assert_equal ["generate"], OpenSSL::PKey::DSA.methods(false)
22
- end
23
-
24
- #iqmp == coefficient
25
- #e == public exponent
26
- #n == modulus
27
- #d == private exponent
28
- #p == prime1
29
- #q == prime2
30
- #dmq1 == exponent2
31
- #dmp1 == exponent1
32
-
33
- def test_can_generate_rsa_key
34
- OpenSSL::PKey::RSA.generate(512)
35
- end
36
-
37
- def test_can_generate_dsa_key
38
- OpenSSL::PKey::DSA.generate(512)
39
- end
40
-
41
- def test_malformed_rsa_handling
42
- pem = <<__EOP__
43
- -----BEGIN PUBLIC KEY-----
44
- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtiU1/UMzIQ1On9OlZGoV
45
- S0yySFYWoXLH12nmP69fg9jwdRbQlb0rxLn7zATbwfqcvGpCcW+8SmdwW74elNrc
46
- wRtbKjJKfbJCsVfDssbbj6BF+Bcq3ihi8+CGNXFdJOYhZZ+5Adg2Qc9Qp3Ubw9wu
47
- /3Ai87+1aQxoZPMFwdX2BRiZvxch9dwHVyL8EuFGUOYId/8JQepHyZMbTqp/8wlA
48
- UAbMcPW+IKp3N0WMgred3CjXKHAqqM0Ira9RLSXdlO2uFV4OrM0ak8rnTN5w1DsI
49
- McjvVvOck0aIxfHEEmeadt3YMn4PCW33/j8geulZLvt0ci60/OWMSCcIqByITlvY
50
- DwIDAQAB
51
- -----END PUBLIC KEY-----
52
- __EOP__
53
- pkey = OpenSSL::PKey::RSA.new(pem)
54
- # jruby-openssl/0.6 raises NativeException
55
- assert_raise(OpenSSL::PKey::RSAError, 'JRUBY-4492') do
56
- pkey.public_decrypt("rah")
57
- end
58
- end
59
-
60
- # http://github.com/jruby/jruby-openssl/issues#issue/1
61
- def test_load_pkey_rsa
62
- pem = <<__EOP__
63
- -----BEGIN PRIVATE KEY-----
64
- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALRiMLAh9iimur8V
65
- A7qVvdqxevEuUkW4K+2KdMXmnQbG9Aa7k7eBjK1S+0LYmVjPKlJGNXHDGuy5Fw/d
66
- 7rjVJ0BLB+ubPK8iA/Tw3hLQgXMRRGRXXCn8ikfuQfjUS1uZSatdLB81mydBETlJ
67
- hI6GH4twrbDJCR2Bwy/XWXgqgGRzAgMBAAECgYBYWVtleUzavkbrPjy0T5FMou8H
68
- X9u2AC2ry8vD/l7cqedtwMPp9k7TubgNFo+NGvKsl2ynyprOZR1xjQ7WgrgVB+mm
69
- uScOM/5HVceFuGRDhYTCObE+y1kxRloNYXnx3ei1zbeYLPCHdhxRYW7T0qcynNmw
70
- rn05/KO2RLjgQNalsQJBANeA3Q4Nugqy4QBUCEC09SqylT2K9FrrItqL2QKc9v0Z
71
- zO2uwllCbg0dwpVuYPYXYvikNHHg+aCWF+VXsb9rpPsCQQDWR9TT4ORdzoj+Nccn
72
- qkMsDmzt0EfNaAOwHOmVJ2RVBspPcxt5iN4HI7HNeG6U5YsFBb+/GZbgfBT3kpNG
73
- WPTpAkBI+gFhjfJvRw38n3g/+UeAkwMI2TJQS4n8+hid0uus3/zOjDySH3XHCUno
74
- cn1xOJAyZODBo47E+67R4jV1/gzbAkEAklJaspRPXP877NssM5nAZMU0/O/NGCZ+
75
- 3jPgDUno6WbJn5cqm8MqWhW1xGkImgRk+fkDBquiq4gPiT898jusgQJAd5Zrr6Q8
76
- AO/0isr/3aa6O6NLQxISLKcPDk2NOccAfS/xOtfOz4sJYM3+Bs4Io9+dZGSDCA54
77
- Lw03eHTNQghS0A==
78
- -----END PRIVATE KEY-----
79
- __EOP__
80
- assert_nothing_raised do
81
- pkey = OpenSSL::PKey::RSA.new(pem)
82
- pkey2 = OpenSSL::PKey::RSA.new(pkey.to_pem)
83
- assert_equal(pkey.n, pkey2.n)
84
- assert_equal(pkey.e, pkey2.e)
85
- assert_equal(pkey.d, pkey2.d)
86
- end
87
- end
88
-
89
- def test_load_pkey_rsa_enc
90
- # password is '1234'
91
- pem = <<__EOP__
92
- -----BEGIN ENCRYPTED PRIVATE KEY-----
93
- MIICoTAbBgkqhkiG9w0BBQMwDgQIfvehP6JEg2wCAggABIICgD7kzSr+xWgdAuzG
94
- cYNkCEWyKF6V0cJ58AKSoL4FQ59OQvQP/hMnSZEMiUpeGNRE6efC7O02RUjNarIk
95
- ciCYIBqd5EFG3OSypK5l777AbCChIkzZHbyE/pIbadr8ZX9C4pkwzPqS0Avzavxi
96
- 5s1WDX2GggJkBcQUijqG9QuOZcOvoYbojHPT4tdJq+J6s+0LFas9Jp3a6dYkxtgv
97
- u8Z6EFDZoLGOSVy/jCSMuZAnhoOxUCYqd9FFo2jryV7tQ/CaYAUApAQFTLgBA9qk
98
- 4WmyKRpwzIx6EG1pkqulvPXJCcTat9YwllEDVuQ2rKVwDepSl9O7X170Kx1sBecz
99
- mGcfqviU9xwP5mkXO/TLoTZExkHF08Y3d/PTMdxGEDZH37/yRqCIb3Uyqv/jLibM
100
- /s9fm52aWsfO1ndHEhciovlMJvGXq3+e+9gmq1w2TyNQahRc5fwfhwWKhPKfYDBk
101
- 7AtjPGfELDX61WZ5m+4Kb70BcGSAEgXCaBydVsMROy0B8jkYgtAnVBb4EMrGOsCG
102
- jmNeW9MRIhrhDcifdyq1DMNg7IONMF+5mDdQ3FhK6WzlFU+8cTN517qA8L3A3+ZX
103
- asiS+rx5/50InINknjuvVkmTGMzjl89nMNrZCjhx9sIDfXQ3ZKFmh1mvnXq/fLan
104
- CgXn/UtLoykrSlobgqIxZslhj3p01kMCgGe62S3kokYrDTQEc57rlKWWR3Xyjy/T
105
- LsecXAKEROj95IHSMMnT4jl+TJnbvGKQ2U9tOOB3W+OOOlDEFE59pQlcmQPAwdzr
106
- mzI4kupi3QRTFjOgvX29leII9sPtpr4dKMKVIRxKnvMZhUAkS/n3+Szfa6zKexLa
107
- 4CHVgDo=
108
- -----END ENCRYPTED PRIVATE KEY-----
109
- __EOP__
110
- assert_nothing_raised do
111
- pkey = OpenSSL::PKey::RSA.new(pem, '1234')
112
- pkey2 = OpenSSL::PKey::RSA.new(pkey.to_pem)
113
- assert_equal(pkey.n, pkey2.n)
114
- assert_equal(pkey.e, pkey2.e)
115
- assert_equal(pkey.d, pkey2.d)
116
- end
117
- end
118
-
119
- # jruby-openssl/0.6 causes NPE
120
- def test_generate_pkey_rsa_empty
121
- assert_nothing_raised do
122
- OpenSSL::PKey::RSA.new.to_pem
123
- end
124
- end
125
-
126
- def test_generate_pkey_rsa_length
127
- assert_nothing_raised do
128
- OpenSSL::PKey::RSA.new(512).to_pem
129
- end
130
- end
131
-
132
- def test_generate_pkey_rsa_to_text
133
- assert_match(
134
- /Private-Key: \(512 bit\)/,
135
- OpenSSL::PKey::RSA.new(512).to_text
136
- )
137
- end
138
-
139
- def test_load_pkey_rsa
140
- pkey = OpenSSL::PKey::RSA.new(512)
141
- assert_equal(pkey.to_pem, OpenSSL::PKey::RSA.new(pkey.to_pem).to_pem)
142
- end
143
-
144
- def test_load_pkey_rsa_public
145
- pkey = OpenSSL::PKey::RSA.new(512).public_key
146
- assert_equal(pkey.to_pem, OpenSSL::PKey::RSA.new(pkey.to_pem).to_pem)
147
- end
148
-
149
- def test_load_pkey_rsa_der
150
- pkey = OpenSSL::PKey::RSA.new(512)
151
- assert_equal(pkey.to_der, OpenSSL::PKey::RSA.new(pkey.to_der).to_der)
152
- end
153
-
154
- def test_load_pkey_rsa_public_der
155
- pkey = OpenSSL::PKey::RSA.new(512).public_key
156
- assert_equal(pkey.to_der, OpenSSL::PKey::RSA.new(pkey.to_der).to_der)
157
- end
158
-
159
- # jruby-openssl/0.6 causes NPE
160
- def test_generate_pkey_dsa_empty
161
- assert_nothing_raised do
162
- OpenSSL::PKey::DSA.new.to_pem
163
- end
164
- end
165
-
166
- # jruby-openssl/0.6 ignores fixnum arg => to_pem returned 65 bytes with 'MAA='
167
- def test_generate_pkey_dsa_length
168
- assert(OpenSSL::PKey::DSA.new(512).to_pem.size > 100)
169
- end
170
-
171
- # jruby-openssl/0.6 returns nil for DSA#to_text
172
- def test_generate_pkey_dsa_to_text
173
- assert_match(
174
- /Private-Key: \(512 bit\)/,
175
- OpenSSL::PKey::DSA.new(512).to_text
176
- )
177
- end
178
-
179
- def test_load_pkey_dsa
180
- pkey = OpenSSL::PKey::DSA.new(512)
181
- assert_equal(pkey.to_pem, OpenSSL::PKey::DSA.new(pkey.to_pem).to_pem)
182
- end
183
-
184
- def test_load_pkey_dsa_public
185
- pkey = OpenSSL::PKey::DSA.new(512).public_key
186
- assert_equal(pkey.to_pem, OpenSSL::PKey::DSA.new(pkey.to_pem).to_pem)
187
- end
188
-
189
- def test_load_pkey_dsa_der
190
- pkey = OpenSSL::PKey::DSA.new(512)
191
- assert_equal(pkey.to_der, OpenSSL::PKey::DSA.new(pkey.to_der).to_der)
192
- end
193
-
194
- def test_load_pkey_dsa_public_der
195
- pkey = OpenSSL::PKey::DSA.new(512).public_key
196
- assert_equal(pkey.to_der, OpenSSL::PKey::DSA.new(pkey.to_der).to_der)
197
- end
198
-
199
- def test_load_pkey_dsa_net_ssh
200
- blob = "0\201\367\002\001\000\002A\000\203\316/\037u\272&J\265\003l3\315d\324h\372{\t8\252#\331_\026\006\035\270\266\255\343\353Z\302\276\335\336\306\220\375\202L\244\244J\206>\346\b\315\211\302L\246x\247u\a\376\366\345\302\016#\002\025\000\244\274\302\221Og\275/\302+\356\346\360\024\373wI\2573\361\002@\027\215\270r*\f\213\350C\245\021:\350 \006\\\376\345\022`\210b\262\3643\023XLKS\320\370\002\276\347A\nU\204\276\324\256`=\026\240\330\306J\316V\213\024\e\030\215\355\006\037q\337\356ln\002@\017\257\034\f\260\333'S\271#\237\230E\321\312\027\021\226\331\251Vj\220\305\316\036\v\266+\000\230\270\177B\003?t\a\305]e\344\261\334\023\253\323\251\223M\2175)a(\004\"lI8\312\303\307\a\002\024_\aznW\345\343\203V\326\246ua\203\376\201o\350\302\002"
201
- pkey = OpenSSL::PKey::DSA.new(blob)
202
- assert_equal(blob, pkey.to_der)
203
- end
204
- end