Crate uqoin_core

Crate uqoin_core 

Source
Expand description

§uqoin-core

uqoin-core is the foundational library for the Uqoin cryptocurrency
protocol. It provides all essential components for managing coins, transactions, blocks, and blockchain state in a secure, efficient, and deterministic way.


§Features

  • Elliptic Curve Cryptography (Ed25519 signatures and key operations)
  • Deterministic Key Generation (BIP-39 style mnemonic seeds)
  • Coin Structure and Mining (unique order-based mining validation)
  • Transaction System (transfer, fee, split, and merge types)
  • Block Management (validation, linking, and complexity proofs)
  • State Management (dynamic tracking of coin ownership and counters)
  • Asynchronous Storage (disk-based persistence with Lbasedb)
  • Transaction Pool (preparation of transactions for new blocks)

§Components

ModuleResponsibility
utilsUtility functions and helpers
errorUnified error types
edwardsCryptographic curve operations
schemaSignature schemes and key validation
coinCoin format, mining, and validation
transactionTransaction types and verification
blockBlock structure and hash validation
stateReal-time blockchain state management
poolTransaction pooling before block creation
seedMnemonic generation and deterministic keys
blockchainPersistent blockchain storage

§Philosophy

  • Minimalistic and protocol-focused design
  • Deterministic and reproducible operations
  • High-performance and scalable storage
  • Secure cryptographic foundations

uqoin-core — powering the future of simple, fair, and efficient blockchain systems.

Modules§

block
Defines the structure and validation logic for blocks within the Uqoin blockchain.
coin
Provides utilities for representing, validating, and mining coins in the Uqoin protocol.
edwards
Provides a pure Rust implementation of the Ed25519 elliptic curve, a high-performance, secure, and deterministic digital signature scheme, widely used in modern cryptographic applications.
error
The error module in the uqoin-core library defines a structured approach to error handling within the Uqoin cryptocurrency protocol. It introduces a comprehensive enumeration of error kinds that represent various failure scenarios encountered during protocol operations, such as coin validation, transaction processing, and block verification. By encapsulating these error conditions, the module facilitates robust error management and propagation throughout the system.
pool
Manages a pool of transaction groups pending inclusion in a new block.
schema
Implements the Schema structure for cryptographic operations based on the EdDSA algorithm using the Ed25519 twisted Edwards curve.
seed
Provides functionality for generating and handling mnemonic phrases and seeds, facilitating deterministic key generation for wallets.
state
Represents the current dynamic state of the Uqoin blockchain, including coin ownership and metadata.
transaction
Defines the structure and behavior of transactions within the Uqoin protocol.
utils
The utils module in the uqoin-core library provides essential utility functions and type aliases that support the core operations of the Uqoin cryptocurrency protocol. These utilities facilitate tasks such as hashing, vector manipulation, and validation checks, ensuring efficient and reliable functionality throughout the system.

Macros§

validate
Shortcut for converting boolean check into error. A utility macro to streamline error checking: