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
| Module | Responsibility |
|---|---|
utils | Utility functions and helpers |
error | Unified error types |
edwards | Cryptographic curve operations |
schema | Signature schemes and key validation |
coin | Coin format, mining, and validation |
transaction | Transaction types and verification |
block | Block structure and hash validation |
state | Real-time blockchain state management |
pool | Transaction pooling before block creation |
seed | Mnemonic generation and deterministic keys |
blockchain | Persistent 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
errormodule in theuqoin-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
Schemastructure 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
utilsmodule in theuqoin-corelibrary 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: