1 unstable release

0.1.0 Mar 28, 2024
0.1.0-pre2 Sep 17, 2024

#1374 in Cryptography

Download history 182/week @ 2024-12-01 318/week @ 2024-12-08 267/week @ 2024-12-15 9/week @ 2024-12-22 28/week @ 2024-12-29 234/week @ 2025-01-05 206/week @ 2025-01-12 39/week @ 2025-01-19 21/week @ 2025-01-26 69/week @ 2025-02-02 158/week @ 2025-02-09 208/week @ 2025-02-16 176/week @ 2025-02-23 187/week @ 2025-03-02 83/week @ 2025-03-09 50/week @ 2025-03-16

497 downloads per month
Used in 2 crates (via cllw-ore)

MIT license

38KB
593 lines

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:

cargo add vitaminc --features protected,random

Or, if you only need a specific capability, you can install a crate directly:

cargo add vitaminc-protected

Features and sub-crates

Feature Source Crates.io Documentation
protected vitaminc-protected crates.io docs.rs
permutation vitaminc-permutation crates.io docs.rs
random vitaminc-random crates.io docs.rs
traits vitaminc-traits crates.io docs.rs
async-traits vitaminc-async-traits crates.io docs.rs
kms vitaminc-kms crates.io docs.rs

Dependencies

~0–8MB
~63K SLoC