Component Relationships
BLVM implements a 6-tier layered architecture where each tier builds upon the previous one.
Dependency Graph
Edges point from a crate toward a crate it depends on (library import direction). The Orange Paper is not a Rust crate; it informs consensus (dotted).
blvm-primitives (types, serialization, crypto) sits under blvm-consensus and blvm-protocol; it is not shown as its own tier here.
Layer Descriptions
Tier 1: Orange Paper (blvm-spec)
- Purpose: Mathematical foundation - timeless consensus rules
- Type: Documentation and specification
- Governance: Layer 1 (Constitutional - 6-of-7 maintainers, 180 days, see Layer-Tier Model)
Tier 2: Consensus Layer (blvm-consensus)
- Purpose: Pure mathematical implementation of Orange Paper functions
- Type: Rust library (pure functions, no side effects)
- Dependencies: blvm-primitives (shared types, serialization, consensus crypto); pinned transitive crates as in
Cargo.toml - Governance: Layer 2 (Constitutional - 6-of-7 maintainers, 180 days, see Layer-Tier Model)
- Key Functions: CheckTransaction, ConnectBlock, EvalScript, VerifyScript
Tier 3: Protocol Layer (blvm-protocol)
- Purpose: Protocol abstraction layer for multiple Bitcoin variants
- Type: Rust library
- Dependencies: blvm-consensus and blvm-primitives (exact / ranged versions per
Cargo.toml) - Governance: Layer 3 (Implementation - 4-of-5 maintainers, 90 days, see Layer-Tier Model)
- Supports: mainnet, testnet, regtest, and additional protocol variants
Tier 4: Node Implementation (blvm-node)
- Purpose: Minimal reference full node—non-consensus infrastructure only; deploy with security hardening and check System Status for governance and maturity
- Type: Rust binaries (full node)
- Dependencies: blvm-protocol, blvm-consensus (exact versions)
- Governance: Layer 4 (Application - 3-of-5 maintainers, 60 days, see Layer-Tier Model)
- Components: Block validation, storage, P2P networking, RPC, mining
Tier 5: Developer SDK (blvm-sdk)
- Purpose: Developer toolkit and governance cryptographic primitives
- Type: Rust library and CLI tools
- Dependencies: Declares
blvm-protocolandblvm-consensuson crates.io (for composition and module tooling); optionalblvm-nodevia the defaultnodefeature. See the crateCargo.toml. - Governance: Layer 5 (Extension - 2-of-3 maintainers, 14 days, see Layer-Tier Model)
- Components: Key generation, signing, verification, multisig operations
Tier 6: Governance Infrastructure (blvm-commons)
- Purpose: Cryptographic governance enforcement
- Type: Rust service (GitHub App / server binaries)
- Dependencies:
blvm-sdk,blvm-protocol(seeblvm-commons/Cargo.toml) - Governance: Layer 5 (Extension - 2-of-3 maintainers, 14 days)
- Components: GitHub integration, signature verification, status checks
Data flow
The dependency graph above is the accurate picture for crate dependencies. At runtime, blocks and transactions flow through the node, which calls into protocol and consensus libraries to validate; the Orange Paper remains the specification those libraries implement.
Figure: Operational view (IBD, validation, modules, governance). For which crate depends on which, use the dependency graph in this page.
- Orange Paper specifies consensus rules.
- blvm-consensus implements those rules (pure functions).
- blvm-protocol layers network parameters, wire helpers, and protocol policy on top of consensus types.
- blvm-node runs networking, storage, RPC, and orchestration; validation calls into protocol + consensus.
- blvm-sdk supplies governance crypto, composition, and (optional) node integration for modules.
- blvm-commons runs governance enforcement services using blvm-sdk and blvm-protocol types.
Cross-Layer Validation
- Dependencies between layers are strictly enforced in the crate graph (no application layer should reimplement consensus).
- Consensus rule modifications are prevented in application layers by design (validation calls into blvm-consensus).
- The Orange Paper is the specification; blvm-consensus is checked with formal verification, tests, and review—not a single “one-shot” equivalence proof of the whole spec.
- Version coordination (Cargo / release sets) keeps compatible crate versions together.
See Also
- System Overview - High-level architecture overview
- Design Philosophy - Core design principles
- Consensus Architecture - Consensus layer details
- Protocol Architecture - Protocol layer details
- Node Overview - Node implementation details