xstream.rb
XSTREAM (pronounced "extreme!") is a public key encryption system combining X25519 Elliptic Curve Diffie-Hellman (RFC 7748) with the STREAM construction.
The implementations in this repository are built on top of the Miscreant misuse-resistant symmetric encryption library, which provides the AES-SIV and AES-PMAC-SIV algorithms.
More information on XSTREAM is available in the Wiki.
Help and Discussion
Have questions? Want to suggest a feature or change?
- Gitter: web-based chat about miscreant projects including miscreant.rb
- Google Group: join via web or email ([email protected])
Security Notice
Though this library is written by cryptographic professionals, it has not undergone a thorough security audit, and cryptographic professionals are still humans that make mistakes.
Use this library at your own risk.
Requirements
This library is tested against the following MRI versions:
- 2.2
- 2.3
- 2.4
- 2.5
Other Ruby versions may work, but are not officially supported.
Installation
Add this line to your application's Gemfile:
gem "xstream"
And then execute:
$ bundle
Or install it yourself as:
$ gem install xstream
Documentation
Please see the XSTREAM Wiki for API documentation.
Yard documentation is also available.
Code of Conduct
We abide by the Contributor Covenant and ask that you do as well.
For more information, please see CODE_OF_CONDUCT.md.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/miscreant/xstream.
License
Copyright (c) 2017 The Miscreant Developers.
All XSTREAM libraries are licensed under either of:
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.