Implementation of `clvm` for Chia Network's cryptocurrency
Project description
Rust implementation of clvm.
Python Wheel
Use maturin
to build the python interface. First, install into current virtualenv with
$ pip install maturin
Build clvm_rs
directly into the current virtualenv with
$ maturin develop --release
On UNIX-based platforms, you may get a speed boost on sha256
operations by building
with OpenSSL.
$ maturin develop --release --cargo-extra-args="--features=openssl"
To build the wheel, do
$ maturin build --release --no-sdist
or
$ maturin build --release --no-sdist --cargo-extra-args="--features=openssl"
WASM
Use wasm-pack
to build the wasm pkg
file used with npm. Install it with:
$ cargo install wasm-pack
Then build with
$ wasm-pack build --release
TESTS
In order to run the unit tests, run:
cargo test
Fuzzing
The fuzzing infrastructure for clvm_rs
uses cargo-fuzz.
Documentation for setting up fuzzing in rust can be found here.
To generate an initial corpus (for the run_program
fuzzer), run:
cd fuzz
mkdir -p corpus/fuzz_run_program/
python gen_corpus.py
To get started, run:
cargo fuzz run fuzz_run_program --jobs=32 -- -rss_limit_mb=4096
But with whatever number of jobs works best for you.
If you find issues in clvm_rs
please see the Bug Bounty program.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for clvm_rs-0.1.16-cp37-abi3-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f48b68d04202e77a178a902e9e3b44bc3bcffa49045d9905d6ad37036121b13f |
|
MD5 | 3a606adbc6a88bc1b51d56382d4103f9 |
|
BLAKE2b-256 | 0c1653349fcf85947cf6ec2d019de1e5096991567c49d098f49fa3d8d13692a4 |
Hashes for clvm_rs-0.1.16-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2259ee93f047cea3d1b6d053967c21ed483b34adbca519e9a25bd266486a1e0 |
|
MD5 | 9f537551fcecaa6a42f48487f1edd643 |
|
BLAKE2b-256 | 55bf918c48dc0e06150e3f34ddf06b699011428f51d48e72423fb89617f3fff8 |
Hashes for clvm_rs-0.1.16-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9979971e8887a57f6d5439c6450859f35f4a00bf895106b4ff52e3b3fa5e75e1 |
|
MD5 | 5e2c7eceae0d4ef7d21663b51a61c50e |
|
BLAKE2b-256 | 2a144f2bc00adfe94c9c38b4945fbbac460c94be236d9ea40a470d80fa03b1fa |
Hashes for clvm_rs-0.1.16-cp37-abi3-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fbaceafa20d0253e16af58d4d98ec6ccb5b9e2b81322a848cb7dd7b6b02cea2 |
|
MD5 | 7f905af231299401122273211caa72d6 |
|
BLAKE2b-256 | 5af587aa995725684ca03cb99dbe754a5a6fe598ae90545ab3548a45d2d66335 |
Hashes for clvm_rs-0.1.16-cp37-abi3-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27dab8065d2893d2e32f3e21bc89dc60ee7790cc835cf3feb55691b04f1b89ea |
|
MD5 | 5fa29f22c2b0c52038716224c9a8d45f |
|
BLAKE2b-256 | 833818732aea3807c70bdc824e0ecd11e5d953e27f8ad251f3ff2b9b72417264 |