Skip to content

sileneundula/libslug20

Repository files navigation

Slug20 Library

Static Badge Crates.io Version Crates.io License Deps.rs Crate Dependencies (latest) Crates.io Total Downloads Crates.io Dependents

Bluesky followers YouTube Channel Subscribers X (formerly Twitter) Follow X (formerly Twitter) Follow

Description

slug20 is a tool used to encrypt data inspired by minisign. It is simple, minimilastic, and has advanced security built-in. It implements zeroize, subtle, and subtle-encoding for maxmimum security.

On top of encryption, it creates a new standard for Modern Certificates using YAML. Its format (X59CERT) is lightweight and can easily be serialized.

It extends to include development of modern, decentralized PKI systems and modular formats for use with different systems.

Features

  • Default Encryption: ECIES Encryption over Curve25519 using AES-GCM
  • Post-Quantum Encryption: ML-KEM
  • Signature Schemes: ED25519, Schnorr over Ristretto (Curve25519), BLS12-381, ECDSA (secp256k1), Ed448
  • Post-Quantum Signature Schemes: SPHINCS+ (SHAKE256) (Level 5), ML_DSA56 (Level 3), FALCON1024
  • Hybrid Digital Signature Schemes: EsphandSigning (FALCON1024 + ED25519), ShulginSigning (SPHINCS+ & ED25519), AbsolveSigning (ML-DSA3 + ED25519)
  • Cert Format: X59 Certificate Standard, PEM
  • Message-Types: Supports UTF-8 Messages (so we can include emojis)
  • Encryption: AES-GCM 256 + XChaCha20-Poly1305
  • Randomness Generation: Supports Randomness Generation from the Operating System. Supports VRFs via Schnorr
  • BIP39: true, supported
  • BIP32: still in works

Table of Contents

  1. Symmetric Encryption
  2. Public Key Encryption
  3. Digital Signing
  4. Other

1: Symmetric Encryption

  • AES256-GCM
  • XChaCha20-POLY1305
  • Morus

2: Public Key Encryption

  • ECIES over ED25519 using SHA3 + AES-GCM
  • Kyber

3: Digital Signatures

3.1 Hybrid Digital Signature Schemes

  • ShulginSigning (SPHINCS+ (SHAKE256) + ED25519)
  • EsphandSigning (Falcon1024 + ED25519)
  • AbsolveSigning (MLDSA3 + ED25519)

3.2 Classical Signature Schemes

  • EdDSA
    • Ed25519
    • Ed448
  • ECDSA
    • Secp256k1
  • Other
    • BLS12-381
    • Schnorr Over Ristretto

3.3 Post-Quantum Digital Signature Schemes

  • SPHINCS+ (SHAKE256) (Level 5)
  • FALCON1024
  • MLDSA3 (Dilithium65)

4: Other

  • BIP39
  • BIP32
  • Schnorr VRF
  • Cryptographic Randomness
    • SecureRand-rs
    • From_OS
    • Schnorr VRF

Progress On Signatures

Classical

  • [Signature] ED25519-dalek
    • Generation
      • OSCSPRNG
      • Securerand-rs
    • Signing
    • Verifying

Post-Quantum

  • [Signature] FALCON1024
    • Generation
      • OSCSPRNG
    • silene/slugencode
    • Signing
    • Verifying
    • Serialization/Deserialization
    • Zeroize
    • Protocol Info
    • Derive Public Key From Secret
  • [Signature] SPHINCS+ (SHAKE256) Level 5
    • Generation
      • OSCSPRNG
    • Signing
    • Verifying
    • Serialization/Deserialization
    • Zeroize
    • Protocol Info
    • Other
      • Derive Public Key From Secret

X59Registar

X59Registar is a novel project being developed for decentralized public-key infrastructures using the X59CERT format in YAML.

About

libslug is the official library for cryptographic primitives used in slug20 including encryption, digital signatures, and certificates.

Topics

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages