https://github.com/rustcrypto/traits
Collection of cryptography-related traits
https://github.com/rustcrypto/traits
Last synced: 9 months ago
JSON representation
Collection of cryptography-related traits
- Host: GitHub
- URL: https://github.com/rustcrypto/traits
- Owner: RustCrypto
- Created: 2017-03-20T17:24:37.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2025-05-07T15:44:24.000Z (9 months ago)
- Last Synced: 2025-05-08T00:02:53.304Z (9 months ago)
- Language: Rust
- Homepage:
- Size: 2.8 MB
- Stars: 647
- Watchers: 17
- Forks: 215
- Open Issues: 57
-
Metadata Files:
- Readme: README.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# RustCrypto: Traits
[![Project Chat][chat-image]][chat-link] ![Apache2/MIT licensed][license-image] [![dependency status][deps-image]][deps-link]
Collection of traits which describe functionality of cryptographic primitives.
## Crates
| Name | Algorithm | Crates.io | Docs | MSRV |
|---------------------|-----------|:---------:|:-----:|:----:|
| [`aead`] | [Authenticated encryption] | [](https://crates.io/crates/aead) | [](https://docs.rs/aead) | ![MSRV 1.85][msrv-1.85] |
| [`async‑signature`] | [Digital signature] | [](https://crates.io/crates/async-signature) | [](https://docs.rs/async-signature) | ![MSRV 1.85][msrv-1.85] |
| [`cipher`] | [Block] and [stream cipher] | [](https://crates.io/crates/cipher) | [](https://docs.rs/cipher) | ![MSRV 1.85][msrv-1.85] |
| [`crypto‑common`] | Common cryptographic traits | [](https://crates.io/crates/crypto-common) | [](https://docs.rs/crypto-common) | ![MSRV 1.85][msrv-1.85] |
| [`digest`] | [Cryptographic hash function] | [](https://crates.io/crates/digest) | [](https://docs.rs/digest) | ![MSRV 1.85][msrv-1.85] |
| [`elliptic‑curve`] | [Elliptic curve cryptography] | [](https://crates.io/crates/elliptic-curve) | [](https://docs.rs/elliptic-curve) | ![MSRV 1.85][msrv-1.85] |
| [`kem`] | [Key encapsulation mechanism] | [](https://crates.io/crates/kem) | [](https://docs.rs/kem) | ![MSRV 1.85][msrv-1.85] |
| [`password-hash`] | [Password hashing] | [](https://crates.io/crates/password-hash) | [](https://docs.rs/password-hash) | ![MSRV 1.85][msrv-1.85] |
| [`signature`] | [Digital signature] | [](https://crates.io/crates/signature) | [](https://docs.rs/signature) | ![MSRV 1.85][msrv-1.85] |
| [`universal‑hash`] | [Universal hash function] | [](https://crates.io/crates/universal-hash) | [](https://docs.rs/universal-hash) | ![MSRV 1.85][msrv-1.85] |
### Additional Crates
| Crate name | Description | Crates.io | Docs | MSRV |
|------------|-------------------------|:---------:|:-----:|:----:|
| [`crypto`] | Facade for trait crates | [](https://crates.io/crates/crypto) | [](https://docs.rs/crypto) | ![MSRV 1.85][msrv-1.85] |
## License
All crates licensed under either of
* [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
* [MIT license](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.
[//]: # (badges)
[chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg
[chat-link]: https://rustcrypto.zulipchat.com/#narrow/stream/260050-traits
[license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg
[deps-image]: https://deps.rs/repo/github/RustCrypto/traits/status.svg
[deps-link]: https://deps.rs/repo/github/RustCrypto/traits
[msrv-1.85]: https://img.shields.io/badge/rustc-1.85.0+-blue.svg
[//]: # (crates)
[`aead`]: ./aead
[`async‑signature`]: ./signature/async
[`cipher`]: ./cipher
[`crypto‑common`]: ./crypto-common
[`crypto`]: ./crypto
[`digest`]: ./digest
[`elliptic‑curve`]: ./elliptic-curve
[`kem`]: ./kem
[`password-hash`]: ./password-hash
[`signature`]: ./signature
[`universal‑hash`]: ./universal-hash
[//]: # (algorithms)
[Authenticated encryption]: https://en.wikipedia.org/wiki/Authenticated_encryption
[Block]: https://en.wikipedia.org/wiki/Block_cipher
[Message authentication code]: https://en.wikipedia.org/wiki/Message_authentication_code
[Cryptographic hash function]: https://en.wikipedia.org/wiki/Cryptographic_hash_function
[Digital signature]: https://en.wikipedia.org/wiki/Digital_signature
[Elliptic curve cryptography]: https://en.wikipedia.org/wiki/Elliptic-curve_cryptography
[Key encapsulation mechanism]: https://en.wikipedia.org/wiki/Key_encapsulation
[Password hashing]: https://en.wikipedia.org/wiki/Cryptographic_hash_function#Password_verification
[Stream cipher]: https://en.wikipedia.org/wiki/Stream_cipher
[Universal hash function]: https://en.wikipedia.org/wiki/Universal_hashing