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!
You can install the top-level vitaminc
crate and enable specific features:
cargo add vitaminc --features protected,random
Or, if you only need a specific capability, you can install a crate directly:
cargo add vitaminc-protected
Feature | Source | Crates.io | Documentation |
---|---|---|---|
protected |
vitaminc-protected |
||
permutation |
vitaminc-permutation |
||
random |
vitaminc-random |
||
traits |
vitaminc-traits |
||
async-traits |
vitaminc-async-traits |
||
kms |
vitaminc-kms |