Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/qwyng/openssl_provider
This Gem provides OpenSSL::Provider class with APIs to load providers
https://github.com/qwyng/openssl_provider
gem openssl ruby
Last synced: 26 days ago
JSON representation
This Gem provides OpenSSL::Provider class with APIs to load providers
- Host: GitHub
- URL: https://github.com/qwyng/openssl_provider
- Owner: QWYNG
- License: mit
- Created: 2023-05-28T02:33:30.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-18T13:24:12.000Z (over 1 year ago)
- Last Synced: 2024-11-18T12:39:21.523Z (about 1 month ago)
- Topics: gem, openssl, ruby
- Language: C
- Homepage: https://rubygems.org/gems/openssl_provider
- Size: 14.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
## NOTICE
The functionality of this Gem has been merged into `ruby/openssl`
For further information, please visit https://github.com/ruby/openssl/pull/635.# OpenSSL::Provider
The concept of provider was introduced with OpenSSL 3.
https://www.openssl.org/docs/man3.0/man7/migration_guide.htmlWith OpenSSL 3, it is possible to specify the provider to be used by any application, either programmatically or through a configuration file.
However, `ruby/openssl` 3.1.0 does not have an API to load providers without configuration file.
This Gem provides `OpenSSL::Provider` class with APIs to load providers.## Installation
Install the gem and add to the application's Gemfile by executing:
$ bundle add openssl_provider
If bundler is not being used to manage dependencies, install the gem by executing:
$ gem install openssl_provider
## Usage
```ruby
require 'openssl_provider'legacy = OpenSSL::Provider.load("legacy")
OpenSSL::Provider.providers
# => [#, #]# default provider does not support RC4
# OpenSSL::Cipher.new("RC4")
# => OpenSSL::Cipher::CipherError: unsupported
cipher = OpenSSL::Cipher.new("RC4")# do something with cipher...
OpenSSL::Provider.unload(legacy)
```## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/QWYNG/openssl_provider. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/QWYNG/openssl_provider/blob/main/CODE_OF_CONDUCT.md).
## License
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
## Code of Conduct
Everyone interacting in the OpensslProvider project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/QWYNG/openssl_provider/blob/main/CODE_OF_CONDUCT.md).