[][src]Module selenite::crypto

The Core Module For Interacting With Keypairs/Signatures Through Their Traits.

Selenite: Lacuna's Core Crypto Module

Lacuna's Core Crypto Module consists of the structs of keypairs (FALCON512,FALCON1024,SPHINCS+), the signature struct, and most importantly the implemented traits.

When viewing documentation for a struct, make sure to look at the documentation for the traits Keypairs and Signatures as these contain the implemented methods.

Example Usage

use selenite::crypto::*;
 
fn main() {
    // Generates The Respected Keypair
    let keypair = SphincsKeypair::new();
 
    // Signs The Message as a UTF-8 Encoded String
    let mut sig = keypair.sign("message_to_sign");
     
    // Returns a boolean representing whether the signature is valid or not
    let is_verified = sig.verify();
}

Serialization

Serde-yaml is implemented by default for the serialization/deserialization of the data to the human-readable .yaml format.

More Information

This library is built on bindings to pqcrypto, a portable, post-quantum, cryptographic library.

Structs

Falcon512Keypair

Falcon512 Keypair

Falcon1024Keypair

Falcon1024 Keypair

Signature

The Signature Struct

SphincsKeypair

SPHINCS+ (SHAKE256) Keypair

Traits

Keypairs

Traits For Keypairs

Signatures

Traits For Signatures