Thanks to visit codestin.com
Credit goes to lib.rs

#blockchain #amadeus #blockchain-cryptography #bls #database

amadeus-utils

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

5 stable releases

Uses new Rust 2024

1.3.5 Dec 30, 2025
1.3.4 Dec 23, 2025
1.3.2 Dec 19, 2025
1.3.1 Dec 16, 2025

#5 in #blockchain-cryptography


Used in 3 crates

Apache-2.0

270KB
6K SLoC

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

Dependencies

~52MB
~1M SLoC