More information on XSTREAM is available in the Wiki.
This library presently requires the following:
- x86_64 CPU architecture
- Rust nightly compiler
This library implements the AES cipher using the aesni crate, which uses the Intel AES-NI CPU instructions to provide a fast, constant-time hardware-based implementation. No software-only implementation of AES is provided. Additionally it includes Intel assembly language implementations of certain secret-dependent functions which have verified constant-time operation.
Supporting stable Rust will require upstream changes in the aesni crate, which is nightly-only due to its use of inline assembly.
Help and Discussion
Have questions? Want to suggest a feature or change?
- Gitter: web-based chat about Miscreant projects including miscreant.rs
- Google Group: join via web or email (email@example.com)
Please see the Rustdocs on docs.rs for API documentation.
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.
This library makes an effort to use constant time operations throughout its implementation, however actual constant time behavior has not been verified.
Use this library at your own risk.
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.
Bug reports and pull requests are welcome on GitHub at https://github.com/miscreant/xstream.
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.