openssl 3.2.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.md +120 -0
  3. data/History.md +716 -0
  4. data/README.md +83 -0
  5. metadata +70 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a6e67359ff6684ac6aaab8dd96a5ad514607061684599c8aeb05539efed688b2
4
+ data.tar.gz: 5a984028d3fabef8316e217bca7bdaccb4b94f86e53a07c8f142262f904b03f5
5
+ SHA512:
6
+ metadata.gz: a7fba22ae1dd763555cc2dccf7ab839211ea32e4721e71eab2fe8553641848828898d66f22bdab8ba9910b6582180ab1c091d9df39792088ffbf8205e45224a3
7
+ data.tar.gz: 20a51085a52be2d6c72fe03cb77ecfb8f8efab15a2148ef0ba0f0a32052679ec65fb3fd4c0a45f2ff7c834861b272b1478ee34a653127ad16433e4420313a31a
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,120 @@
1
+ # Contributing to Ruby OpenSSL
2
+
3
+ Thank you for your interest in contributing to Ruby OpenSSL!
4
+
5
+ This documentation provides an overview how you can contribute.
6
+
7
+ ## Bugs and feature requests
8
+
9
+ Bugs and feature requests are tracked on [GitHub].
10
+
11
+ If you think you found a bug, file a ticket on GitHub. Please DO NOT report
12
+ security issues here, there is a separate procedure which is described on
13
+ ["Security at ruby-lang.org"](https://www.ruby-lang.org/en/security/).
14
+
15
+ When reporting a bug, please make sure you include:
16
+
17
+ * Ruby version (`ruby -v`)
18
+ * `openssl` gem version (`gem list openssl` and `OpenSSL::VERSION`)
19
+ * OpenSSL library version (`OpenSSL::OPENSSL_VERSION`)
20
+ * A sample file that illustrates the problem or link to the repository or
21
+ gem that is associated with the bug.
22
+
23
+ There are a number of unresolved issues and feature requests for openssl that
24
+ need review. Before submitting a new ticket, it is recommended to check
25
+ [known issues].
26
+
27
+ ## Submitting patches
28
+
29
+ Patches are also very welcome!
30
+
31
+ Please submit a [pull request] with your changes.
32
+
33
+ Make sure that your branch does:
34
+
35
+ * Have good commit messages
36
+ * Follow Ruby's coding style ([DeveloperHowTo])
37
+ * Pass the test suite successfully (see "Testing")
38
+
39
+ ## Testing
40
+
41
+ We have a test suite!
42
+
43
+ Test cases are located under the
44
+ [`test/openssl`](https://github.com/ruby/openssl/tree/master/test/openssl)
45
+ directory.
46
+
47
+ You can run it with the following three commands:
48
+
49
+ ```
50
+ $ bundle install # installs rake-compiler, test-unit, ...
51
+ $ bundle exec rake compile
52
+ $ bundle exec rake test
53
+ ```
54
+
55
+ ### With different versions of OpenSSL
56
+
57
+ Ruby OpenSSL supports various versions of OpenSSL library. The test suite needs
58
+ to pass on all supported combinations.
59
+
60
+ Similarly to when installing `openssl` gem via the `gem` command,
61
+ you can pass a `--with-openssl-dir` argument to `rake compile`
62
+ to specify the OpenSSL library to build against.
63
+
64
+ ```
65
+ $ ( curl -OL https://ftp.openssl.org/source/openssl-3.0.1.tar.gz &&
66
+ tar xf openssl-3.0.1.tar.gz &&
67
+ cd openssl-3.0.1 &&
68
+ ./config --prefix=$HOME/.openssl/openssl-3.0.1 --libdir=lib &&
69
+ make -j4 &&
70
+ make install )
71
+
72
+ $ # in Ruby/OpenSSL's source directory
73
+ $ bundle exec rake clean
74
+ $ bundle exec rake compile -- --with-openssl-dir=$HOME/.openssl/openssl-3.0.1
75
+ $ bundle exec rake test
76
+ ```
77
+
78
+ The GitHub Actions workflow file
79
+ [`test.yml`](https://github.com/ruby/openssl/tree/master/.github/workflows/test.yml)
80
+ contains useful information for building OpenSSL/LibreSSL and testing against
81
+ them.
82
+
83
+
84
+ ## Relation with Ruby source tree
85
+
86
+ After Ruby 2.3, `ext/openssl` was converted into a "default gem", a library
87
+ which ships with standard Ruby builds but can be upgraded via RubyGems. This
88
+ means the development of this gem has migrated to a [separate
89
+ repository][GitHub] and will be released independently.
90
+
91
+ The version included in the Ruby source tree (trunk branch) is synchronized with
92
+ the latest release.
93
+
94
+ ## Release policy
95
+
96
+ Bug fixes (including security fixes) will be made only for the version series
97
+ included in a stable Ruby release.
98
+
99
+ ## Security
100
+
101
+ If you discovered a security issue, please send us in private, using the
102
+ security issue handling procedure for Ruby core.
103
+
104
+ You can either use [HackerOne] or send an email to security@ruby-lang.org.
105
+
106
+ Please see [Security] page on ruby-lang.org website for details.
107
+
108
+ Reported problems will be published after a fix is released.
109
+
110
+ _Thanks for your contributions!_
111
+
112
+ _\- The Ruby OpenSSL team_
113
+
114
+ [GitHub]: https://github.com/ruby/openssl
115
+ [known issues]: https://github.com/ruby/openssl/issues
116
+ [DeveloperHowTo]: https://bugs.ruby-lang.org/projects/ruby/wiki/DeveloperHowto
117
+ [HackerOne]: https://hackerone.com/ruby
118
+ [Security]: https://www.ruby-lang.org/en/security/
119
+ [pull request]: https://github.com/ruby/openssl/compare
120
+ [History.md]: https://github.com/ruby/openssl/tree/master/History.md
data/History.md ADDED
@@ -0,0 +1,716 @@
1
+ Version 3.2.0
2
+ =============
3
+
4
+ Compatibility
5
+ -------------
6
+
7
+ * Ruby >= 2.7
8
+ - Support for Ruby 2.6 has been removed. Note that Ruby 2.6 reached the
9
+ end-of-life in 2022-04.
10
+ [[GitHub #639]](https://github.com/ruby/openssl/pull/639)
11
+ * OpenSSL >= 1.0.2 or LibreSSL >= 3.1
12
+
13
+ Notable changes
14
+ ---------------
15
+
16
+ * Add a stub gemspec for JRuby, which depends on the `jruby-openssl` gem.
17
+ [[GitHub #598]](https://github.com/ruby/openssl/pull/598)
18
+ * Add support for the FIPS module in OpenSSL 3.0/3.1.
19
+ [[GitHub #608]](https://github.com/ruby/openssl/pull/608)
20
+ * Rework `OpenSSL::PKey` routines for loading DER or PEM encoded keys for better
21
+ compatibility with OpenSSL 3.0/3.1 with the FIPS module.
22
+ [[GitHub #615]](https://github.com/ruby/openssl/pull/615)
23
+ [[GitHub #669]](https://github.com/ruby/openssl/pull/669)
24
+ * Add `OpenSSL::Provider` module for loading and unloading OpenSSL 3 providers.
25
+ [[GitHub #635]](https://github.com/ruby/openssl/pull/635)
26
+ * Add `OpenSSL::PKey.new_raw_private_key`, `.new_raw_public_key`,
27
+ `OpenSSL::PKey::PKey#raw_private_key`, and `#raw_public_key` for public key
28
+ algorithms that use "raw private/public key", such as X25519 and Ed25519.
29
+ [[GitHub #646]](https://github.com/ruby/openssl/pull/646)
30
+ * Improve OpenSSL error messages to include additional information when
31
+ it is available in OpenSSL's error queue.
32
+ [[GitHub #648]](https://github.com/ruby/openssl/pull/648)
33
+ * Change `OpenSSL::SSL::SSLContext#ca_file=` and `#ca_path=` to raise
34
+ `OpenSSL::SSL::SSLError` instead of printing a warning message.
35
+ [[GitHub #659]](https://github.com/ruby/openssl/pull/659)
36
+ * Allow `OpenSSL::X509::ExtensionFactory#create_extension` to take OIDs in the
37
+ dotted-decimal notation.
38
+ [[GitHub #141]](https://github.com/ruby/openssl/pull/141)
39
+
40
+
41
+ Version 3.1.0
42
+ =============
43
+
44
+ Ruby/OpenSSL 3.1 will be maintained for the lifetime of Ruby 3.2.
45
+
46
+ Merged bug fixes in 2.2.3 and 3.0.2. Among the new features and changes are:
47
+
48
+ Notable changes
49
+ ---------------
50
+
51
+ * Add `OpenSSL::SSL::SSLContext#ciphersuites=` to allow setting TLS 1.3 cipher
52
+ suites.
53
+ [[GitHub #493]](https://github.com/ruby/openssl/pull/493)
54
+ * Add `OpenSSL::SSL::SSLSocket#export_keying_material` for exporting keying
55
+ material of the session, as defined in RFC 5705.
56
+ [[GitHub #530]](https://github.com/ruby/openssl/pull/530)
57
+ * Add `OpenSSL::SSL::SSLContext#keylog_cb=` for setting the TLS key logging
58
+ callback, which is useful for supporting NSS's SSLKEYLOGFILE debugging output.
59
+ [[GitHub #536]](https://github.com/ruby/openssl/pull/536)
60
+ * Remove the default digest algorithm from `OpenSSL::OCSP::BasicResponse#sign`
61
+ and `OpenSSL::OCSP::Request#sign`. Omitting the 5th parameter of these
62
+ methods used to be equivalent of specifying SHA-1. This default value is now
63
+ removed and we will let the underlying OpenSSL library decide instead.
64
+ [[GitHub #507]](https://github.com/ruby/openssl/pull/507)
65
+ * Add `OpenSSL::BN#mod_sqrt`.
66
+ [[GitHub #553]](https://github.com/ruby/openssl/pull/553)
67
+ * Allow calling `OpenSSL::Cipher#update` with an empty string. This was
68
+ prohibited to workaround an ancient bug in OpenSSL.
69
+ [[GitHub #568]](https://github.com/ruby/openssl/pull/568)
70
+ * Fix build on platforms without socket support, such as WASI. `OpenSSL::SSL`
71
+ will not be defined if OpenSSL is compiled with `OPENSSL_NO_SOCK`.
72
+ [[GitHub #558]](https://github.com/ruby/openssl/pull/558)
73
+ * Improve support for recent LibreSSL versions. This includes HKDF support in
74
+ LibreSSL 3.6 and Ed25519 support in LibreSSL 3.7.
75
+
76
+
77
+ Version 3.0.2
78
+ =============
79
+
80
+ Merged changes in 2.2.3. Additionally, the following issues are fixed by this
81
+ release.
82
+
83
+ Bug fixes
84
+ ---------
85
+
86
+ * Fix OpenSSL::PKey::EC#check_key not working correctly on OpenSSL 3.0.
87
+ [[GitHub #563]](https://github.com/ruby/openssl/issues/563)
88
+ [[GitHub #580]](https://github.com/ruby/openssl/pull/580)
89
+
90
+
91
+ Version 3.0.1
92
+ =============
93
+
94
+ Merged changes in 2.1.4 and 2.2.2. Additionally, the following issues are fixed
95
+ by this release.
96
+
97
+ Bug fixes
98
+ ---------
99
+
100
+ * Add missing type check in OpenSSL::PKey::PKey#sign's optional parameters.
101
+ [[GitHub #531]](https://github.com/ruby/openssl/pull/531)
102
+ * Work around OpenSSL 3.0's HMAC issues with a zero-length key.
103
+ [[GitHub #538]](https://github.com/ruby/openssl/pull/538)
104
+ * Fix a regression in OpenSSL::PKey::DSA.generate's default of 'q' size.
105
+ [[GitHub #483]](https://github.com/ruby/openssl/issues/483)
106
+ [[GitHub #539]](https://github.com/ruby/openssl/pull/539)
107
+ * Restore OpenSSL::PKey.read's ability to decode "openssl ecparam -genkey"
108
+ output when linked against OpenSSL 3.0.
109
+ [[GitHub #535]](https://github.com/ruby/openssl/pull/535)
110
+ [[GitHub #540]](https://github.com/ruby/openssl/pull/540)
111
+ * Restore error checks in OpenSSL::PKey::EC#{to_der,to_pem}.
112
+ [[GitHub #541]](https://github.com/ruby/openssl/pull/541)
113
+
114
+
115
+ Version 3.0.0
116
+ =============
117
+
118
+ Compatibility notes
119
+ -------------------
120
+
121
+ * OpenSSL 1.0.1 and Ruby 2.3-2.5 are no longer supported.
122
+ [[GitHub #396]](https://github.com/ruby/openssl/pull/396)
123
+ [[GitHub #466]](https://github.com/ruby/openssl/pull/466)
124
+
125
+ * OpenSSL 3.0 support is added. It is the first major version bump from OpenSSL
126
+ 1.1 and contains incompatible changes that affect Ruby/OpenSSL.
127
+ Note that OpenSSL 3.0 support is preliminary and not all features are
128
+ currently available:
129
+ [[GitHub #369]](https://github.com/ruby/openssl/issues/369)
130
+
131
+ - Deprecate the ability to modify `OpenSSL::PKey::PKey` instances. OpenSSL 3.0
132
+ made EVP_PKEY structure immutable, and hence the following methods are not
133
+ available when Ruby/OpenSSL is linked against OpenSSL 3.0.
134
+ [[GitHub #480]](https://github.com/ruby/openssl/pull/480)
135
+
136
+ - `OpenSSL::PKey::RSA#set_key`, `#set_factors`, `#set_crt_params`
137
+ - `OpenSSL::PKey::DSA#set_pqg`, `#set_key`
138
+ - `OpenSSL::PKey::DH#set_pqg`, `#set_key`, `#generate_key!`
139
+ - `OpenSSL::PKey::EC#private_key=`, `#public_key=`, `#group=`, `#generate_key!`
140
+
141
+ - Deprecate `OpenSSL::Engine`. The ENGINE API has been deprecated in OpenSSL 3.0
142
+ in favor of the new "provider" concept and will be removed in a future
143
+ version.
144
+ [[GitHub #481]](https://github.com/ruby/openssl/pull/481)
145
+
146
+ * `OpenSSL::SSL::SSLContext#tmp_ecdh_callback` has been removed. It has been
147
+ deprecated since v2.0.0 because it is incompatible with modern OpenSSL
148
+ versions.
149
+ [[GitHub #394]](https://github.com/ruby/openssl/pull/394)
150
+
151
+ * `OpenSSL::SSL::SSLSocket#read` and `#write` now raise `OpenSSL::SSL::SSLError`
152
+ if called before a TLS connection is established. Historically, they
153
+ read/wrote unencrypted data to the underlying socket directly in that case.
154
+ [[GitHub #9]](https://github.com/ruby/openssl/issues/9)
155
+ [[GitHub #469]](https://github.com/ruby/openssl/pull/469)
156
+
157
+
158
+ Notable changes
159
+ ---------------
160
+
161
+ * Enhance OpenSSL::PKey's common interface.
162
+ [[GitHub #370]](https://github.com/ruby/openssl/issues/370)
163
+
164
+ - Key deserialization: Enhance `OpenSSL::PKey.read` to handle PEM encoding of
165
+ DH parameters, which used to be only deserialized by `OpenSSL::PKey::DH.new`.
166
+ [[GitHub #328]](https://github.com/ruby/openssl/issues/328)
167
+ - Key generation: Add `OpenSSL::PKey.generate_parameters` and
168
+ `OpenSSL::PKey.generate_key`.
169
+ [[GitHub #329]](https://github.com/ruby/openssl/issues/329)
170
+ - Public key signing: Enhance `OpenSSL::PKey::PKey#sign` and `#verify` to use
171
+ the new EVP_DigestSign() family to enable PureEdDSA support on OpenSSL 1.1.1
172
+ or later. They also now take optional algorithm-specific parameters for more
173
+ control.
174
+ [[GitHub #329]](https://github.com/ruby/openssl/issues/329)
175
+ - Low-level public key signing and verification: Add
176
+ `OpenSSL::PKey::PKey#sign_raw`, `#verify_raw`, and `#verify_recover`.
177
+ [[GitHub #382]](https://github.com/ruby/openssl/issues/382)
178
+ - Public key encryption: Add `OpenSSL::PKey::PKey#encrypt` and `#decrypt`.
179
+ [[GitHub #382]](https://github.com/ruby/openssl/issues/382)
180
+ - Key agreement: Add `OpenSSL::PKey::PKey#derive`.
181
+ [[GitHub #329]](https://github.com/ruby/openssl/issues/329)
182
+ - Key comparison: Add `OpenSSL::PKey::PKey#compare?` to conveniently check
183
+ that two keys have common parameters and a public key.
184
+ [[GitHub #383]](https://github.com/ruby/openssl/issues/383)
185
+
186
+ * Add `OpenSSL::BN#set_flags` and `#get_flags`. This can be used in combination
187
+ with `OpenSSL::BN::CONSTTIME` to force constant-time computation.
188
+ [[GitHub #417]](https://github.com/ruby/openssl/issues/417)
189
+
190
+ * Add `OpenSSL::BN#abs` to get the absolute value of the BIGNUM.
191
+ [[GitHub #430]](https://github.com/ruby/openssl/issues/430)
192
+
193
+ * Add `OpenSSL::SSL::SSLSocket#getbyte`.
194
+ [[GitHub #438]](https://github.com/ruby/openssl/issues/438)
195
+
196
+ * Add `OpenSSL::SSL::SSLContext#tmp_dh=`.
197
+ [[GitHub #459]](https://github.com/ruby/openssl/pull/459)
198
+
199
+ * Add `OpenSSL::X509::Certificate.load` to load a PEM-encoded and concatenated
200
+ list of X.509 certificates at once.
201
+ [[GitHub #441]](https://github.com/ruby/openssl/pull/441)
202
+
203
+ * Change `OpenSSL::X509::Certificate.new` to attempt to deserialize the given
204
+ string first as DER encoding first and then as PEM encoding to ensure the
205
+ round-trip consistency.
206
+ [[GitHub #442]](https://github.com/ruby/openssl/pull/442)
207
+
208
+ * Update various part of the code base to use the modern API. No breaking
209
+ changes are intended with this. This includes:
210
+
211
+ - `OpenSSL::HMAC` uses the EVP API.
212
+ [[GitHub #371]](https://github.com/ruby/openssl/issues/371)
213
+ - `OpenSSL::Config` uses native OpenSSL API to parse config files.
214
+ [[GitHub #342]](https://github.com/ruby/openssl/issues/342)
215
+
216
+
217
+ Version 2.2.3
218
+ =============
219
+
220
+ Bug fixes
221
+ ---------
222
+
223
+ * Fix serveral methods in OpenSSL::PKey::EC::Point attempting to raise an error
224
+ with an incorrect class, which would end up with a TypeError.
225
+ [[GitHub #570]](https://github.com/ruby/openssl/pull/570)
226
+ * Fix OpenSSL::PKey::EC::Point#eql? and OpenSSL::PKey::EC::Group#eql?
227
+ incorrectly treated OpenSSL's internal errors as "not equal".
228
+ [[GitHub #564]](https://github.com/ruby/openssl/pull/564)
229
+ * Fix build with LibreSSL 3.5 or later.
230
+
231
+
232
+ Version 2.2.2
233
+ =============
234
+
235
+ Merged changes in 2.1.4.
236
+
237
+
238
+ Version 2.2.1
239
+ =============
240
+
241
+ Merged changes in 2.1.3. Additionally, the following issues are fixed by this
242
+ release.
243
+
244
+ Bug fixes
245
+ ---------
246
+
247
+ * Fix crash in `OpenSSL::Timestamp::{Request,Response,TokenInfo}.new` when
248
+ invalid arguments are given.
249
+ [[GitHub #407]](https://github.com/ruby/openssl/pull/407)
250
+ * Fix `OpenSSL::Timestamp::Factory#create_timestamp` with LibreSSL on platforms
251
+ where `time_t` has a different size from `long`.
252
+ [[GitHub #454]](https://github.com/ruby/openssl/pull/454)
253
+
254
+
255
+ Version 2.2.0
256
+ =============
257
+
258
+ Compatibility notes
259
+ -------------------
260
+
261
+ * Remove unsupported MDC2, DSS, DSS1, and SHA algorithms.
262
+ * Remove `OpenSSL::PKCS7::SignerInfo#name` alias for `#issuer`.
263
+ [[GitHub #266]](https://github.com/ruby/openssl/pull/266)
264
+ * Deprecate `OpenSSL::Config#add_value` and `#[]=` for future removal.
265
+ [[GitHub #322]](https://github.com/ruby/openssl/pull/322)
266
+
267
+
268
+ Notable changes
269
+ ---------------
270
+
271
+ * Change default `OpenSSL::SSL::SSLServer#listen` backlog argument from
272
+ 5 to `Socket::SOMAXCONN`.
273
+ [[GitHub #286]](https://github.com/ruby/openssl/issues/286)
274
+ * Make `OpenSSL::HMAC#==` use a timing safe string comparison.
275
+ [[GitHub #284]](https://github.com/ruby/openssl/pull/284)
276
+ * Add support for SHA3 and BLAKE digests.
277
+ [[GitHub #282]](https://github.com/ruby/openssl/pull/282)
278
+ * Add `OpenSSL::SSL::SSLSocket.open` for opening a `TCPSocket` and
279
+ returning an `OpenSSL::SSL::SSLSocket` for it.
280
+ [[GitHub #225]](https://github.com/ruby/openssl/issues/225)
281
+ * Support marshalling of `OpenSSL::X509` and `OpenSSL::PKey` objects.
282
+ [[GitHub #281]](https://github.com/ruby/openssl/pull/281)
283
+ [[GitHub #363]](https://github.com/ruby/openssl/pull/363)
284
+ * Add `OpenSSL.secure_compare` for timing safe string comparison for
285
+ strings of possibly unequal length.
286
+ [[GitHub #280]](https://github.com/ruby/openssl/pull/280)
287
+ * Add `OpenSSL.fixed_length_secure_compare` for timing safe string
288
+ comparison for strings of equal length.
289
+ [[GitHub #269]](https://github.com/ruby/openssl/pull/269)
290
+ * Add `OpenSSL::SSL::SSLSocket#{finished_message,peer_finished_message}`
291
+ for last finished message sent and received.
292
+ [[GitHub #250]](https://github.com/ruby/openssl/pull/250)
293
+ * Add `OpenSSL::Timestamp` module for handing timestamp requests and
294
+ responses.
295
+ [[GitHub #204]](https://github.com/ruby/openssl/pull/204)
296
+ * Add helper methods for `OpenSSL::X509::Certificate`:
297
+ `find_extension`, `subject_key_identifier`,
298
+ `authority_key_identifier`, `crl_uris`, `ca_issuer_uris` and
299
+ `ocsp_uris`, and for `OpenSSL::X509::CRL`:
300
+ `find_extension` and `subject_key_identifier`.
301
+ [[GitHub #260]](https://github.com/ruby/openssl/pull/260)
302
+ [[GitHub #275]](https://github.com/ruby/openssl/pull/275)
303
+ [[GitHub #293]](https://github.com/ruby/openssl/pull/293)
304
+ * Add `OpenSSL::ECPoint#add` for performing elliptic curve point addition.
305
+ [[GitHub #261]](https://github.com/ruby/openssl/pull/261)
306
+ * Make `OpenSSL::PKey::RSA#{export,to_der}` check `key`, `factors`, and
307
+ `crt_params` to do proper private key serialization.
308
+ [[GitHub #258]](https://github.com/ruby/openssl/pull/258)
309
+ * Add `OpenSSL::SSL::{SSLSocket,SSLServer}#fileno`, returning the
310
+ underlying socket file descriptor number.
311
+ [[GitHub #247]](https://github.com/ruby/openssl/pull/247)
312
+ * Support client certificates with TLS 1.3, and support post-handshake
313
+ authentication with OpenSSL 1.1.1+.
314
+ [[GitHub #239]](https://github.com/ruby/openssl/pull/239)
315
+ * Add `OpenSSL::ASN1::ObjectId#==` for equality testing.
316
+ * Add `OpenSSL::X509::Extension#value_der` for the raw value of
317
+ the extension.
318
+ [[GitHub #234]](https://github.com/ruby/openssl/pull/234)
319
+ * Significantly reduce allocated memory in `OpenSSL::Buffering#do_write`.
320
+ [[GitHub #212]](https://github.com/ruby/openssl/pull/212)
321
+ * Ensure all valid IPv6 addresses are considered valid as elements
322
+ of subjectAlternativeName in certificates.
323
+ [[GitHub #185]](https://github.com/ruby/openssl/pull/185)
324
+ * Allow recipient's certificate to be omitted in PCKS7#decrypt.
325
+ [[GitHub #183]](https://github.com/ruby/openssl/pull/183)
326
+ * Add support for reading keys in PKCS #8 format and export via instance methods
327
+ added to `OpenSSL::PKey` classes: `private_to_der`, `private_to_pem`,
328
+ `public_to_der` and `public_to_pem`.
329
+ [[GitHub #297]](https://github.com/ruby/openssl/pull/297)
330
+
331
+
332
+ Version 2.1.4
333
+ =============
334
+
335
+ Bug fixes
336
+ ---------
337
+
338
+ * Do not use pkg-config if --with-openssl-dir option is specified.
339
+ [[GitHub #486]](https://github.com/ruby/openssl/pull/486)
340
+
341
+
342
+ Version 2.1.3
343
+ =============
344
+
345
+ Bug fixes
346
+ ---------
347
+
348
+ * Fix deprecation warnings on Ruby 3.0.
349
+ * Add ".include" directive support in `OpenSSL::Config`.
350
+ [[GitHub #216]](https://github.com/ruby/openssl/pull/216)
351
+ * Fix handling of IPv6 address SANs.
352
+ [[GitHub #185]](https://github.com/ruby/openssl/pull/185)
353
+ * Hostname verification failure with `OpenSSL::SSL::SSLContext#verify_hostname=`
354
+ sets a proper error code.
355
+ [[GitHub #350]](https://github.com/ruby/openssl/pull/350)
356
+ * Fix crash with `OpenSSL::BN.new(nil, 2)`.
357
+ [[Bug #15760]](https://bugs.ruby-lang.org/issues/15760)
358
+ * `OpenSSL::SSL::SSLSocket#sys{read,write}` prevent internal string buffers from
359
+ being modified by another thread.
360
+ [[GitHub #453]](https://github.com/ruby/openssl/pull/453)
361
+ * Fix misuse of input record separator in `OpenSSL::Buffering` where it was
362
+ for output.
363
+ * Fix wrong integer casting in `OpenSSL::PKey::EC#dsa_verify_asn1`.
364
+ [[GitHub #460]](https://github.com/ruby/openssl/pull/460)
365
+ * `extconf.rb` explicitly checks that OpenSSL's version number is 1.0.1 or
366
+ newer but also less than 3.0. Ruby/OpenSSL v2.1.x and v2.2.x will not support
367
+ OpenSSL 3.0 API.
368
+ [[GitHub #458]](https://github.com/ruby/openssl/pull/458)
369
+ * Activate `digest` gem correctly. `digest` library could go into an
370
+ inconsistent state if there are multiple versions of `digest` is installed
371
+ and `openssl` is `require`d before `digest`.
372
+ [[GitHub #463]](https://github.com/ruby/openssl/pull/463)
373
+ * Fix GC.compact compatibility.
374
+ [[GitHub #464]](https://github.com/ruby/openssl/issues/464)
375
+ [[GitHub #465]](https://github.com/ruby/openssl/pull/465)
376
+
377
+
378
+ Version 2.1.2
379
+ =============
380
+
381
+ Merged changes in 2.0.9.
382
+
383
+
384
+ Version 2.1.1
385
+ =============
386
+
387
+ Merged changes in 2.0.8.
388
+
389
+
390
+ Version 2.1.0
391
+ =============
392
+
393
+ Notable changes
394
+ ---------------
395
+
396
+ * Support for OpenSSL versions before 1.0.1 and LibreSSL versions before 2.5
397
+ is removed.
398
+ [[GitHub #86]](https://github.com/ruby/openssl/pull/86)
399
+ * OpenSSL::BN#negative?, #+@, and #-@ are added.
400
+ * OpenSSL::SSL::SSLSocket#connect raises a more informative exception when
401
+ certificate verification fails.
402
+ [[GitHub #99]](https://github.com/ruby/openssl/pull/99)
403
+ * OpenSSL::KDF module is newly added. In addition to PBKDF2-HMAC that has moved
404
+ from OpenSSL::PKCS5, scrypt and HKDF are supported.
405
+ [[GitHub #109]](https://github.com/ruby/openssl/pull/109)
406
+ [[GitHub #173]](https://github.com/ruby/openssl/pull/173)
407
+ * OpenSSL.fips_mode is added. We had the setter, but not the getter.
408
+ [[GitHub #125]](https://github.com/ruby/openssl/pull/125)
409
+ * OpenSSL::OCSP::Request#signed? is added.
410
+ * OpenSSL::ASN1 handles the indefinite length form better. OpenSSL::ASN1.decode
411
+ no longer wrongly treats the end-of-contents octets as part of the content.
412
+ OpenSSL::ASN1::ASN1Data#infinite_length is renamed to #indefinite_length.
413
+ [[GitHub #98]](https://github.com/ruby/openssl/pull/98)
414
+ * OpenSSL::X509::Name#add_entry now accepts two additional keyword arguments
415
+ 'loc' and 'set'.
416
+ [[GitHub #94]](https://github.com/ruby/openssl/issues/94)
417
+ * OpenSSL::SSL::SSLContext#min_version= and #max_version= are added to replace
418
+ #ssl_version= that was built on top of the deprecated OpenSSL C API. Use of
419
+ that method and the constant OpenSSL::SSL::SSLContext::METHODS is now
420
+ deprecated.
421
+ [[GitHub #142]](https://github.com/ruby/openssl/pull/142)
422
+ * OpenSSL::X509::Name#to_utf8 is added.
423
+ [[GitHub #26]](https://github.com/ruby/openssl/issues/26)
424
+ [[GitHub #143]](https://github.com/ruby/openssl/pull/143)
425
+ * OpenSSL::X509::{Extension,Attribute,Certificate,CRL,Revoked,Request} can be
426
+ compared with == operator.
427
+ [[GitHub #161]](https://github.com/ruby/openssl/pull/161)
428
+ * TLS Fallback Signaling Cipher Suite Value (SCSV) support is added.
429
+ [[GitHub #165]](https://github.com/ruby/openssl/pull/165)
430
+ * Build failure with OpenSSL 1.1 built with no-deprecated is fixed.
431
+ [[GitHub #160]](https://github.com/ruby/openssl/pull/160)
432
+ * OpenSSL::Buffering#write accepts an arbitrary number of arguments.
433
+ [[Feature #9323]](https://bugs.ruby-lang.org/issues/9323)
434
+ [[GitHub #162]](https://github.com/ruby/openssl/pull/162)
435
+ * OpenSSL::PKey::RSA#sign_pss and #verify_pss are added. They perform RSA-PSS
436
+ signature and verification.
437
+ [[GitHub #75]](https://github.com/ruby/openssl/issues/75)
438
+ [[GitHub #76]](https://github.com/ruby/openssl/pull/76)
439
+ [[GitHub #169]](https://github.com/ruby/openssl/pull/169)
440
+ * OpenSSL::SSL::SSLContext#add_certificate is added.
441
+ [[GitHub #167]](https://github.com/ruby/openssl/pull/167)
442
+ * OpenSSL::PKey::EC::Point#to_octet_string is added.
443
+ OpenSSL::PKey::EC::Point.new can now take String as the second argument.
444
+ [[GitHub #177]](https://github.com/ruby/openssl/pull/177)
445
+
446
+
447
+ Version 2.0.9
448
+ =============
449
+
450
+ Security fixes
451
+ --------------
452
+
453
+ * OpenSSL::X509::Name#<=> could incorrectly return 0 (= equal) for non-equal
454
+ objects. CVE-2018-16395 is assigned for this issue.
455
+ https://hackerone.com/reports/387250
456
+
457
+ Bug fixes
458
+ ---------
459
+
460
+ * Fixed OpenSSL::PKey::*.{new,generate} immediately aborting if the thread is
461
+ interrupted.
462
+ [[Bug #14882]](https://bugs.ruby-lang.org/issues/14882)
463
+ [[GitHub #205]](https://github.com/ruby/openssl/pull/205)
464
+ * Fixed OpenSSL::X509::Name#to_s failing with OpenSSL::X509::NameError if
465
+ called against an empty instance.
466
+ [[GitHub #200]](https://github.com/ruby/openssl/issues/200)
467
+ [[GitHub #211]](https://github.com/ruby/openssl/pull/211)
468
+
469
+
470
+ Version 2.0.8
471
+ =============
472
+
473
+ Bug fixes
474
+ ---------
475
+
476
+ * OpenSSL::Cipher#pkcs5_keyivgen raises an error when a negative iteration
477
+ count is given.
478
+ [[GitHub #184]](https://github.com/ruby/openssl/pull/184)
479
+ * Fixed build with LibreSSL 2.7.
480
+ [[GitHub #192]](https://github.com/ruby/openssl/issues/192)
481
+ [[GitHub #193]](https://github.com/ruby/openssl/pull/193)
482
+
483
+
484
+ Version 2.0.7
485
+ =============
486
+
487
+ Bug fixes
488
+ ---------
489
+
490
+ * OpenSSL::Cipher#auth_data= could segfault if called against a non-AEAD cipher.
491
+ [[Bug #14024]](https://bugs.ruby-lang.org/issues/14024)
492
+ * OpenSSL::X509::Certificate#public_key= (and similar methods) could segfault
493
+ when an instance of OpenSSL::PKey::PKey with no public key components is
494
+ passed.
495
+ [[Bug #14087]](https://bugs.ruby-lang.org/issues/14087)
496
+ [[GitHub #168]](https://github.com/ruby/openssl/pull/168)
497
+
498
+
499
+ Version 2.0.6
500
+ =============
501
+
502
+ Bug fixes
503
+ ---------
504
+
505
+ * The session_remove_cb set to an OpenSSL::SSL::SSLContext is no longer called
506
+ during GC.
507
+ * A possible deadlock in OpenSSL::SSL::SSLSocket#sysread is fixed.
508
+ [[GitHub #139]](https://github.com/ruby/openssl/pull/139)
509
+ * OpenSSL::BN#hash could return an unnormalized fixnum value on Windows.
510
+ [[Bug #13877]](https://bugs.ruby-lang.org/issues/13877)
511
+ * OpenSSL::SSL::SSLSocket#sysread and #sysread_nonblock set the length of the
512
+ destination buffer String to 0 on error.
513
+ [[GitHub #153]](https://github.com/ruby/openssl/pull/153)
514
+ * Possible deadlock is fixed. This happened only when built with older versions
515
+ of OpenSSL (before 1.1.0) or LibreSSL.
516
+ [[GitHub #155]](https://github.com/ruby/openssl/pull/155)
517
+
518
+
519
+ Version 2.0.5
520
+ =============
521
+
522
+ Bug fixes
523
+ ---------
524
+
525
+ * Reading a PEM/DER-encoded private key or certificate from an IO object did
526
+ not work properly on mswin platforms.
527
+ [[ruby/openssl#128]](https://github.com/ruby/openssl/issues/128)
528
+ * Broken length check in the PEM passphrase callback is fixed.
529
+ * It failed to compile when OpenSSL is configured without TLS 1.0 support.
530
+
531
+
532
+ Version 2.0.4
533
+ =============
534
+
535
+ Bug fixes
536
+ ---------
537
+
538
+ * It now compiles with LibreSSL without renaming on Windows (mswin).
539
+ * A workaround for the error queue leak of X509_load_cert_crl_file() that
540
+ causes random errors is added.
541
+ [[Bug #11033]](https://bugs.ruby-lang.org/issues/11033)
542
+
543
+
544
+ Version 2.0.3
545
+ =============
546
+
547
+ Bug fixes
548
+ ---------
549
+
550
+ * OpenSSL::ASN1::Constructive#each which was broken by 2.0.0 is fixed.
551
+ [[ruby/openssl#96]](https://github.com/ruby/openssl/pull/96)
552
+ * Fixed build with static OpenSSL libraries on Windows.
553
+ [[Bug #13080]](https://bugs.ruby-lang.org/issues/13080)
554
+ * OpenSSL::X509::Name#eql? which was broken by 2.0.0 is fixed.
555
+
556
+
557
+ Version 2.0.2
558
+ =============
559
+
560
+ Bug fixes
561
+ ---------
562
+
563
+ * Fix build with early 0.9.8 series which did not have SSL_CTX_clear_options().
564
+ [ruby-core:78693]
565
+
566
+
567
+ Version 2.0.1
568
+ =============
569
+
570
+ Bug fixes
571
+ ---------
572
+
573
+ * A GC issue around OpenSSL::BN is fixed.
574
+ [[ruby/openssl#87]](https://github.com/ruby/openssl/issues/87)
575
+ * OpenSSL::ASN1 now parses BER encoding of GeneralizedTime without seconds.
576
+ [[ruby/openssl#88]](https://github.com/ruby/openssl/pull/88)
577
+
578
+
579
+ Version 2.0.0
580
+ =============
581
+
582
+ This is the first release of openssl gem, formerly a standard library of Ruby,
583
+ ext/openssl. This is the successor of the version included in Ruby 2.3.
584
+
585
+ Compatibility notes
586
+ -------------------
587
+
588
+ * Support for OpenSSL version 0.9.6 and 0.9.7 is completely removed. openssl gem
589
+ still works with OpenSSL 0.9.8, but users are strongly encouraged to upgrade
590
+ to at least 1.0.1, as OpenSSL < 1.0.1 will not receive any security fixes from
591
+ the OpenSSL development team.
592
+
593
+ Supported platforms
594
+ -------------------
595
+
596
+ * OpenSSL 1.0.0, 1.0.1, 1.0.2, 1.1.0
597
+ * OpenSSL < 0.9.8 is no longer supported.
598
+ * LibreSSL 2.3, 2.4, 2.5
599
+ * Ruby 2.3, 2.4
600
+
601
+ Notable changes
602
+ ---------------
603
+
604
+ * Add support for OpenSSL 1.1.0.
605
+ [[Feature #12324]](https://bugs.ruby-lang.org/issues/12324)
606
+ * Add support for LibreSSL
607
+
608
+ * OpenSSL::Cipher
609
+
610
+ - OpenSSL::Cipher#key= and #iv= reject too long inputs. They used to truncate
611
+ silently. [[Bug #12561]](https://bugs.ruby-lang.org/issues/12561)
612
+
613
+ - OpenSSL::Cipher#iv_len= is added. It allows changing IV (nonce) length if
614
+ using AEAD ciphers.
615
+ [[Bug #8667]](https://bugs.ruby-lang.org/issues/8667),
616
+ [[Bug #10420]](https://bugs.ruby-lang.org/issues/10420),
617
+ [[GH ruby/ruby#569]](https://github.com/ruby/ruby/pull/569),
618
+ [[GH ruby/openssl#58]](https://github.com/ruby/openssl/pull/58)
619
+
620
+ - OpenSSL::Cipher#auth_tag_len= is added. This sets the authentication tag
621
+ length to be generated by an AEAD cipher.
622
+
623
+ * OpenSSL::OCSP
624
+
625
+ - Accessor methods are added to OpenSSL::OCSP::CertificateId.
626
+ [[Feature #7181]](https://bugs.ruby-lang.org/issues/7181)
627
+
628
+ - OpenSSL::OCSP::Request and BasicResponse can be signed with non-SHA-1 hash
629
+ algorithm. [[Feature #11552]](https://bugs.ruby-lang.org/issues/11552)
630
+
631
+ - OpenSSL::OCSP::CertificateId and BasicResponse can be encoded into DER.
632
+
633
+ - A new class OpenSSL::OCSP::SingleResponse is added for convenience.
634
+
635
+ - OpenSSL::OCSP::BasicResponse#add_status accepts absolute times. They used to
636
+ accept only relative seconds from the current time.
637
+
638
+ * OpenSSL::PKey
639
+
640
+ - OpenSSL::PKey::EC follows the general PKey interface.
641
+ [[Bug #6567]](https://bugs.ruby-lang.org/issues/6567)
642
+
643
+ - OpenSSL::PKey.read raises OpenSSL::PKey::PKeyError instead of ArgumentError
644
+ for consistency with OpenSSL::PKey::{DH,DSA,RSA,EC}#new.
645
+ [[Bug #11774]](https://bugs.ruby-lang.org/issues/11774),
646
+ [[GH ruby/openssl#55]](https://github.com/ruby/openssl/pull/55)
647
+
648
+ - OpenSSL::PKey::EC::Group retrieved by OpenSSL::PKey::EC#group is no longer
649
+ linked with the EC key. Modifications to the EC::Group have no effect on the
650
+ key. [[GH ruby/openssl#71]](https://github.com/ruby/openssl/pull/71)
651
+
652
+ - OpenSSL::PKey::EC::Point#to_bn allows specifying the point conversion form
653
+ by the optional argument.
654
+
655
+ * OpenSSL::SSL
656
+
657
+ - OpenSSL::SSL::SSLSocket#tmp_key is added. A client can call it after the
658
+ connection is established to retrieve the ephemeral key.
659
+ [[GH ruby/ruby#1318]](https://github.com/ruby/ruby/pull/1318)
660
+
661
+ - The automatic ephemeral ECDH curve selection is enabled by default when
662
+ built with OpenSSL >= 1.0.2 or LibreSSL.
663
+
664
+ - OpenSSL::SSL::SSLContext#security_level= is added. You can set the "security
665
+ level" of the SSL context. This is effective only when built with OpenSSL
666
+ 1.1.0.
667
+
668
+ - A new option 'verify_hostname' is added to OpenSSL::SSL::SSLContext. When it
669
+ is enabled, and the SNI hostname is also set, the hostname verification on
670
+ the server certificate is automatically performed. It is now enabled by
671
+ OpenSSL::SSL::SSLContext#set_params.
672
+ [[GH ruby/openssl#60]](https://github.com/ruby/openssl/pull/60)
673
+
674
+ Removals
675
+ --------
676
+
677
+ * OpenSSL::Engine
678
+
679
+ - OpenSSL::Engine.cleanup does nothing when built with OpenSSL 1.1.0.
680
+
681
+ * OpenSSL::SSL
682
+
683
+ - OpenSSL::PKey::DH::DEFAULT_512 is removed. Hence servers no longer use
684
+ 512-bit DH group by default. It is considered too weak nowadays.
685
+ [[Bug #11968]](https://bugs.ruby-lang.org/issues/11968),
686
+ [[GH ruby/ruby#1196]](https://github.com/ruby/ruby/pull/1196)
687
+
688
+ - RC4 cipher suites are removed from OpenSSL::SSL::SSLContext::DEFAULT_PARAMS.
689
+ RC4 is now considered to be weak.
690
+ [[GH ruby/openssl#50]](https://github.com/ruby/openssl/pull/50)
691
+
692
+ Deprecations
693
+ ------------
694
+
695
+ * OpenSSL::PKey
696
+
697
+ - OpenSSL::PKey::RSA#n=, #e=, #d=, #p=, #q=, #dmp1=, #dmq1=, #iqmp=,
698
+ OpenSSL::PKey::DSA#p=, #q=, #g=, #priv_key=, #pub_key=,
699
+ OpenSSL::PKey::DH#p=, #g=, #priv_key= and #pub_key= are deprecated. They are
700
+ disabled when built with OpenSSL 1.1.0, due to its API change. Instead,
701
+ OpenSSL::PKey::RSA#set_key, #set_factors, #set_crt_params,
702
+ OpenSSL::PKey::DSA#set_pqg, #set_key, OpenSSL::PKey::DH#set_pqg and #set_key
703
+ are added.
704
+
705
+ * OpenSSL::Random
706
+
707
+ - OpenSSL::Random.pseudo_bytes is deprecated, and not defined when built with
708
+ OpenSSL 1.1.0. Use OpenSSL::Random.random_bytes instead.
709
+
710
+ * OpenSSL::SSL
711
+
712
+ - OpenSSL::SSL::SSLContext#tmp_ecdh_callback is deprecated, as the underlying
713
+ API SSL_CTX_set_tmp_ecdh_callback() is removed in OpenSSL 1.1.0. It was
714
+ first added in Ruby 2.3.0. To specify the curve to be used in ephemeral
715
+ ECDH, use OpenSSL::SSL::SSLContext#ecdh_curves=. The automatic curve
716
+ selection is also now enabled by default when built with a capable OpenSSL.
data/README.md ADDED
@@ -0,0 +1,83 @@
1
+ # OpenSSL for Ruby
2
+
3
+ [![Actions Status](https://github.com/ruby/openssl/workflows/CI/badge.svg)](https://github.com/ruby/openssl/actions?workflow=CI)
4
+
5
+ **OpenSSL for Ruby** provides access to SSL/TLS and general-purpose
6
+ cryptography based on the OpenSSL library.
7
+
8
+ OpenSSL for Ruby is sometimes referred to as **openssl** in all lowercase
9
+ or **Ruby/OpenSSL** for disambiguation.
10
+
11
+ ## Compatibility and maintenance policy
12
+
13
+ OpenSSL for Ruby is released as a RubyGems gem. At the same time, it is part of
14
+ the standard library of Ruby. This is called a [default gem].
15
+
16
+ Each stable branch of OpenSSL for Ruby will remain supported as long as it is
17
+ included as a default gem in [supported Ruby branches][Ruby Maintenance Branches].
18
+
19
+ |Version|Maintenance status |Ruby compatibility|OpenSSL compatibility |
20
+ |-------|-------------------------------|------------------|--------------------------------------------|
21
+ |3.2.x |normal maintenance (Ruby 3.3) |Ruby 2.7+ |OpenSSL 1.0.2-3.1 (current) or LibreSSL 3.1+|
22
+ |3.1.x |normal maintenance (Ruby 3.2) |Ruby 2.6+ |OpenSSL 1.0.2-3.1 (current) or LibreSSL 3.1+|
23
+ |3.0.x |normal maintenance (Ruby 3.1) |Ruby 2.6+ |OpenSSL 1.0.2-3.1 (current) or LibreSSL 3.1+|
24
+ |2.2.x |security maintenance (Ruby 3.0)|Ruby 2.3+ |OpenSSL 1.0.1-1.1.1 or LibreSSL 2.9+ |
25
+ |2.1.x |end-of-life (Ruby 2.5-2.7) |Ruby 2.3+ |OpenSSL 1.0.1-1.1.1 or LibreSSL 2.5+ |
26
+ |2.0.x |end-of-life (Ruby 2.4) |Ruby 2.3+ |OpenSSL 0.9.8-1.1.1 or LibreSSL 2.3+ |
27
+
28
+ [default gem]: https://docs.ruby-lang.org/en/master/standard_library_rdoc.html
29
+ [Ruby Maintenance Branches]: https://www.ruby-lang.org/en/downloads/branches/
30
+
31
+ ## Installation
32
+
33
+ > **Note**
34
+ > The openssl gem is included with Ruby by default, but you may wish to upgrade
35
+ > it to a newer version available at
36
+ > [rubygems.org](https://rubygems.org/gems/openssl).
37
+
38
+ To upgrade it, you can use RubyGems:
39
+
40
+ ```
41
+ gem install openssl
42
+ ```
43
+
44
+ In some cases, it may be necessary to specify the path to the installation
45
+ directory of the OpenSSL library.
46
+
47
+ ```
48
+ gem install openssl -- --with-openssl-dir=/opt/openssl
49
+ ```
50
+
51
+ Alternatively, you can install the gem with Bundler:
52
+
53
+ ```ruby
54
+ # Gemfile
55
+ gem 'openssl'
56
+ # or specify git master
57
+ gem 'openssl', git: 'https://github.com/ruby/openssl'
58
+ ```
59
+
60
+ After running `bundle install`, you should have the gem installed in your bundle.
61
+
62
+ ## Usage
63
+
64
+ Once installed, you can require "openssl" in your application.
65
+
66
+ ```ruby
67
+ require "openssl"
68
+ ```
69
+
70
+ ## Documentation
71
+
72
+ See https://ruby.github.io/openssl/.
73
+
74
+ ## Contributing
75
+
76
+ Please read our [CONTRIBUTING.md] for instructions.
77
+
78
+ [CONTRIBUTING.md]: https://github.com/ruby/openssl/tree/master/CONTRIBUTING.md
79
+
80
+ ## Security
81
+
82
+ Security issues should be reported to ruby-core by following the process
83
+ described on ["Security at ruby-lang.org"](https://www.ruby-lang.org/en/security/).
metadata ADDED
@@ -0,0 +1,70 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: openssl
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.2.0
5
+ platform: java
6
+ authors:
7
+ - Martin Bosslet
8
+ - SHIBATA Hiroshi
9
+ - Zachary Scott
10
+ - Kazuki Yamaguchi
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2023-09-21 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '0.14'
22
+ name: jruby-openssl
23
+ prerelease: false
24
+ type: :runtime
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '0.14'
30
+ description: OpenSSL for Ruby provides access to SSL/TLS and general-purpose cryptography
31
+ based on the OpenSSL library.
32
+ email:
33
+ - ruby-core@ruby-lang.org
34
+ executables: []
35
+ extensions: []
36
+ extra_rdoc_files:
37
+ - CONTRIBUTING.md
38
+ - History.md
39
+ - README.md
40
+ files:
41
+ - CONTRIBUTING.md
42
+ - History.md
43
+ - README.md
44
+ homepage: https://github.com/ruby/openssl
45
+ licenses:
46
+ - Ruby
47
+ metadata:
48
+ msys2_mingw_dependencies: openssl
49
+ post_install_message:
50
+ rdoc_options:
51
+ - "--main"
52
+ - README.md
53
+ require_paths:
54
+ - lib
55
+ required_ruby_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: 2.7.0
60
+ required_rubygems_version: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: '0'
65
+ requirements: []
66
+ rubygems_version: 3.3.26
67
+ signing_key:
68
+ specification_version: 4
69
+ summary: SSL/TLS and general-purpose cryptography for Ruby
70
+ test_files: []