amadeus-utils 1.3.5

Utility library for the Amadeus blockchain including cryptography, serialization, and data persistence
Documentation

amadeus-utils

Crates.io Documentation

Cryptography, serialization, and database utilities for the Amadeus blockchain.

Installation

[dependencies]
amadeus-utils = "1.3"

Features

  • BLS12-381 - BLS signatures and public key operations
  • Blake3 - Fast cryptographic hashing with optional parallelization
  • Reed-Solomon - Erasure coding for data sharding
  • vecpak - Efficient binary serialization (serde-compatible)
  • safe_etf - Deterministic Erlang Term Format encoding
  • RocksDB - Transactional key-value database wrapper

Quick Example

use amadeus_utils::bls12_381;

// Generate keypair and sign
let sk = bls12_381::generate_sk();
let pk = bls12_381::get_public_key(&sk)?;
let sig = bls12_381::sign(&sk, b"message", b"DOMAIN")?;

// Verify
bls12_381::verify(&pk, &sig, b"message", b"DOMAIN")?;
use amadeus_utils::blake3;

let hash = blake3::hash(b"data"); // [u8; 32]
use amadeus_utils::rocksdb::{RocksDb, Options};

let mut opts = Options::default();
opts.create_if_missing(true);

let db = RocksDb::open("path/to/db", opts, vec![])?;
let txn = db.transaction();
txn.put(b"key", b"value")?;
txn.commit()?;

Feature Flags

  • rayon - Enable parallel Blake3 hashing
  • system-metrics - System resource monitoring

Documentation

For detailed API documentation, see docs.rs/amadeus-utils.

License

Apache-2.0