dusk-core 1.6.0

Types used for interacting with Dusk's transfer and stake contracts.
Documentation

🧬 Dusk-core

Core types used within Dusk, for writing smart contracts and interacting with Dusk

Overview

Dusk-core is the foundation crate for the entire Rusk workspace. It provides the cryptographic primitives, transaction types, and contract ABI that nearly every other crate depends on. It is no_std compatible, making it suitable for use inside WASM smart contracts.

What It Provides

Area Description
Signatures BLS signatures (bls12-381) and Schnorr signatures (JubJub)
Zero-knowledge PLONK and Groth16 circuit types and proof structures
Transactions Types for both Phoenix (shielded/UTXO) and Moonlight (public/account) models
Contract ABI Host functions and interfaces for smart contract development
Serialization rkyv and dusk-bytes based encoding for all core types

abi / abi-dlmalloc feature

When importing core with abi-dlmalloc, a smart contract developer on Dusk is able to use the abi host functions provided through it.

The current available host functions can be seen in the host_queries module in abi.rs

Related Crates

Dusk-core is foundational — it is depended on by nearly every other crate in the workspace, including node-data, consensus, node, vm, rusk, wallet-core, rusk-prover, and the contracts.