Warning
This SDK is in early stages of development and different crates may have different levels of conformance and testing rigour. The completeness of one crate does not imply the completeness of others.
As with any alternate implementation, unintended deviations from the reference implementation (i.e. Dash Core) are possible and must be accounted for as a risk when building on this SDK. If requirements demand strict conformance guarantees, it is recommended to interface with Dash Core through RPC, REST or ZMQ instead.
base-sdk is a parsing and stateless verification SDK for Dash's layer 1 blockchain.
| Crate | Description | CI (develop) |
Coverage |
|---|---|---|---|
| dash-num | Hash blobs, 256-bit arithmetic, compact target encoding | ||
| dash-p2p-core | P2P message types and wire format | ||
| dash-params | Chain parameters for mainnet, testnet3, and regtest |
||
| dash-pkc | BLS (legacy + IETF) and secp256k1 operations | ||
| dash-pow | Proof of work scheme | ||
| dash-primitives | Blocks, transactions, payloads, governance objects | ||
| dash-script | Script opcodes, classification, and address derivation |
Note
Solid lines are build dependencies. Dotted lines are test dependencies.
graph LR
subgraph " "
num[dash-num]
script[dash-script]
end
subgraph " "
pow[dash-pow]
pkc[dash-pkc]
primitives[dash-primitives]
end
subgraph " "
params[dash-params]
p2p_core[dash-p2p-core]
end
num --> pow
num --> pkc
num --> primitives
script --> primitives
pow -.-> primitives
primitives --> params
num --> params
pow -.-> params
primitives --> p2p_core
params --> p2p_core
num --> p2p_core
All crates support these standard features:
| Feature | Description | Crates |
|---|---|---|
default |
no_std + alloc (always enabled) |
All |
std |
Enable standard library support | All |
serde |
Enable serde serialization (where applicable) | pkc |
full |
Enables all non-conflicting features | All |
Specific crates define additional features:
| Feature | Description | Crates |
|---|---|---|
k256 |
Enable secp256k1 support | pkc |
bls_ietf |
Enable standard (IETF) BLS support | pkc |
bls_chia |
Enable legacy (Chia) BLS support | pkc |
_internal |
Access to package internals, reserved for testing and benchmarks. Not part of API contract. | pow |
aes_hw |
Enable hardware-accelerated AES on supported platforms | pow |
simd |
Use SIMD backends (requires nightly) | pow |
Copyright © 2026-present, The Dash Core developers. See the accompanying file LICENSE or https://opensource.org/license/MIT