amadeus-utils

Crates.ioamadeus-utils
lib.rsamadeus-utils
version1.3.5
created_at2025-12-16 22:18:09.63901+00
updated_at2025-12-30 05:11:56.933442+00
descriptionUtility library for the Amadeus blockchain including cryptography, serialization, and data persistence
homepage
repositoryhttps://github.com/amadeusprotocol/rs_node
max_upload_size
id1988846
size308,537
Valentyn Faychuk (valentynfaychuk)

documentation

README

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

Commit count: 0

cargo fmt