Standard library for Miden VM.
Miden standard library provides a set of procedures which can be used by any Miden program. These procedures build on the core instruction set of Miden assembly expanding the functionality immediately available to the user.
The goals of Miden standard library are:
- Provide highly-optimized and battle-tested implementations of commonly-used primitives.
- Reduce the amount of code that needs to be shared between parties for proving and verifying program execution.
The second goal can be achieved because calls to procedures in the standard library can always be serialized as 32 bytes, regardless of how large the procedure is.
Currently, Miden standard library contains just a few modules, which are listed below. Over time, we plan to add many more modules which will include various cryptographic primitives, additional numeric data types and operations, and many others.
- std::crypto::hashes::blake3
- std::crypto::hashes::keccak256
- std::crypto::hashes::sha256
- std::crypto::fri::frie2f4
- std::math::u256
- std::math::u64
- std::math::secp256k1
- std::mem
- std::sys
At this point, all implementations listed above are considered to be experimental and are subject to change.
This project is MIT licensed.