| Crates.io | miden-tx |
| lib.rs | miden-tx |
| version | 0.11.4 |
| created_at | 2024-03-05 10:29:28.317438+00 |
| updated_at | 2025-09-17 22:26:18.099943+00 |
| description | Miden blockchain transaction executor and prover |
| homepage | https://miden.xyz |
| repository | https://github.com/0xMiden/miden-base |
| max_upload_size | |
| id | 1162926 |
| size | 229,173 |
This crate contains tool for creating, executing, and proving Miden blockchain transaction.
This crate exposes a few components to compile, run, and prove transactions.
The first requirement is to have a DataStore implementation. DataStore objects are responsible to load the data needed by the transactions executor, especially the account's code, the reference block data, and the note's inputs.
let store = DataStore:new();
Once a store is available, a TransactionExecutor object can be used to execute a transaction. Consuming a zero or more notes, and possibly calling some of the account's code.
let executor = TransactionExecutor::new(store);
let executed_transaction = executor.execute_transaction(account_id, block_ref, notes, tx_args);
With the transaction execution done, it is then possible to create a proof:
let prover = LocalTransactionProver::new(ProvingOptions::default());
let proven_transaction = prover.prove(executed_transaction);
And to verify a proof:
let verifier = TransactionVerifier::new(SECURITY_LEVEL);
verifier.verify(proven_transaction);
| Features | Description |
|---|---|
std |
Enable usage of Rust's std, use --no-default-features for no-std support. |
concurrent |
Enables concurrent code to speed up runtime execution. |
This project is MIT licensed.