5 unstable releases
0.4.0 | Aug 23, 2020 |
---|---|
0.2.1 | Sep 29, 2017 |
0.2.0 | Sep 29, 2017 |
0.1.2 | Jan 19, 2017 |
0.1.0 | Mar 19, 2016 |
#1355 in Cryptography
33 downloads per month
Used in 2 crates
32KB
1K
SLoC
sodalite
An implementation of tweetnacl in pure rust. Originally generated by manually translating tweetnacl.c
into rust. Tested by verifying outputs match those of tweetnacl.
Todo
- provide additional APIs:
- rather than take bare mutable references, use wrapper types around the refs to capture the underlying type (ie: prevent mixing keys between primitives)
- add a buffer and/or "set-only" abstraction to prevent unsafety wrt uninitialized values (also should allow some internal optimization).
- sodiumoxide style API that returns values rather than taking mutable refs
- Use namespacing to separate different APIs and backend impls
- start testing against sodiumoxide as well
- Provide some of the API improvements from libsodium that are missing nacl (disjoint signatures, not requiring special extra space in buffers)
License
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.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~7–290KB