Skip to content

Small crypto utility to encrypt serde-compatible data type.

License

Notifications You must be signed in to change notification settings

dariusc93/crypto-seal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crypto-seal

Overview

crypto-seal is a small utility designed to securely "package" or seal serde-compatible data type that can passed around in an uncompromised manner.

Usage

Note: ED25519 is used by default for encryption and signing. If AES256-GCM is used, signing will only supply an encrypted SHA512 hash using the key. This will be replaced in the future as this may not be a desirable option

use crypto_seal::{ToOpen, ToSeal, error::Error};

fn main() -> Result<(), Error> {

    let my_data = b"Hello, World!";

    let (my_key, sealed_data) = my_data.seal()?;

    let unsealed_data = sealed_data.open(&my_key)?;

    assert_eq!(b"Hello, World!", &unsealed_data);
    Ok(())
}

MSRV

The minimum supported rust version is 1.74, which can be changed in the future. There is no guarantee that this library will work on older versions of rust.

License

This crate is licensed under either Apache 2.0 or MIT.

About

Small crypto utility to encrypt serde-compatible data type.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages