Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cipherstash/vitaminc
Vitamins for your Rust cryptography code
https://github.com/cipherstash/vitaminc
cryptography rust
Last synced: 7 days ago
JSON representation
Vitamins for your Rust cryptography code
- Host: GitHub
- URL: https://github.com/cipherstash/vitaminc
- Owner: cipherstash
- License: mit
- Created: 2024-03-10T02:19:34.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-09-24T10:32:44.000Z (about 2 months ago)
- Last Synced: 2024-10-19T14:03:38.706Z (28 days ago)
- Topics: cryptography, rust
- Language: Rust
- Homepage: https://cipherstash.com
- Size: 354 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vitamin C
Vitamin C is like vitamins for your Rust code, especially code dealing with cryptography and managing sensitive data.
It is actually a suite of crates that you can use individually or via this top-level crate via features.Vitamin C is in active development and aims to address the following:
* **Misuse Resistance:** it aims to make it difficult to write code that is insecure.
* **Verified**: be verified using formal methods and testing and selects dependencies that are verified.
* **Vetted**: be vetted by security experts and selects dependencies that are vetted.
* **Minimal**: be minimal and only include what is necessary.
* **Consistent**: have a consistent interface with everything in one place.
* **Compatible**: support embedded (`no_std`) and WASM targets.
* **Fast**: speed and security _can_ be friends!
## Usage
You can install the top-level `vitaminc` crate and enable specific features:
```plaintext
cargo add vitaminc --features protected,random
```Or, if you only need a specific capability, you can install a crate directly:
```plaintext
cargo add vitaminc-protected
```# Features and sub-crates
| Feature | Source | Crates.io | Documentation |
|--------------|------------------|--------------------------------------------------------------------------------------------------------|---------------|
| `protected` | [`vitaminc-protected`](https://github.com/cipherstash/vitaminc/tree/main/packages/protected) | [![crates.io](https://img.shields.io/crates/v/vitaminc-protected.svg)](https://crates.io/crates/vitaminc-protected) | [![docs.rs](https://docs.rs/vitaminc-protected/badge.svg)](https://docs.rs/vitaminc-protected) |
| `permutation` | [`vitaminc-permutation`](https://github.com/cipherstash/vitaminc/tree/main/packages/permutation) | [![crates.io](https://img.shields.io/crates/v/vitaminc-permutation.svg)](https://crates.io/crates/vitaminc-permutation) | [![docs.rs](https://docs.rs/vitaminc-permutation/badge.svg)](https://docs.rs/vitaminc-permutation) |
| `random` | [`vitaminc-random`](https://github.com/cipherstash/vitaminc/tree/main/packages/random) | [![crates.io](https://img.shields.io/crates/v/vitaminc-random.svg)](https://crates.io/crates/vitaminc-random) | [![docs.rs](https://docs.rs/vitaminc-random/badge.svg)](https://docs.rs/vitaminc-random) |
| `traits` | [`vitaminc-traits`](https://github.com/cipherstash/vitaminc/tree/main/packages/traits) | [![crates.io](https://img.shields.io/crates/v/vitaminc-traits.svg)](https://crates.io/crates/vitaminc-traits) | [![docs.rs](https://docs.rs/vitaminc-traits/badge.svg)](https://docs.rs/vitaminc-traits) |
| `async-traits` | [`vitaminc-async-traits`](https://github.com/cipherstash/vitaminc/tree/main/packages/async-traits) | [![crates.io](https://img.shields.io/crates/v/vitaminc-async-traits.svg)](https://crates.io/crates/vitaminc-async-traits) | [![docs.rs](https://docs.rs/vitaminc-async-traits/badge.svg)](https://docs.rs/vitaminc-async-traits) |
| `kms` | [`vitaminc-kms`](https://github.com/cipherstash/vitaminc/tree/main/packages/kms) | [![crates.io](https://img.shields.io/crates/v/vitaminc-kms.svg)](https://crates.io/crates/vitaminc-kms) | [![docs.rs](https://docs.rs/vitaminc-kms/badge.svg)](https://docs.rs/vitaminc-kms) |