6 个稳定版本
2.3.0 | 2024 年 4 月 5 日 |
---|---|
2.1.1 | 2023 年 6 月 8 日 |
2.0.2 | 2023 年 3 月 13 日 |
2.0.1 | 2023 年 2 月 13 日 |
27 在 #bitcoin
222 每月下载量
用于 6 个 crate(2 个直接使用)
3MB
75K SLoC
Stacks 区块链
Stacks 区块链在 Rust 中的参考实现。
Stacks 是一个使用 Bitcoin 作为安全底层的一层区块链,并使用 Clarity 语言 通过去中心化应用程序和可预测的智能合约。Stacks 实现了 证明传输(PoX) 矿工,这些矿工锚定到 Bitcoin 安全性。领导者选举在 Bitcoin 区块链上发生,而 Stacks(STX)矿工在独立的 Stacks 区块链上写入新块。在 PoX 中,无需修改 Bitcoin 就可以启用智能合约和去中心化应用程序。
构建
1. 下载并安装 Rust
对于 Windows 上的构建,请按照 https://rustup.rs/ 的 rustup 安装程序说明进行操作。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
rustup component add rustfmt
- 构建
master
分支时,请确保您使用的是最新的稳定版本
rustup update
2. 克隆源代码仓库
git clone --depth=1 https://github.com/stacks-network/stacks-core.git
cd stacks-core
3. 构建项目
# Fully optimized release build
cargo build --release
# Faster but less optimized build. Necessary if < 16 GB RAM
cargo build --profile release-lite
构建说明:您可以将 RUSTFLAGS
设置为为您的原生 CPU 构建二进制文件
RUSTFLAGS="-Ctarget-cpu=native"
或取消注释 ./cargo/config
中的这些行
# [build]
# rustflags = ["-Ctarget-cpu=native"]
测试
运行测试
cargo test testnet -- --test-threads=1
使用 nextest 并行运行所有单元测试
警告:这通常需要几分钟
cargo nextest run
运行测试网
您可以通过运行以下命令在本地观察状态机的运行
cd testnet/stacks-node
cargo run --bin stacks-node -- start --config ./conf/testnet-follower-conf.toml
在Windows上,如果行结束符不是LF
,则许多测试将失败。请确保您在克隆存储库时git的core.autocrlf
设置为input
,以避免任何潜在问题。这是因为Clarity语言目前对行结束符敏感。
发布流程
Stacks区块链的发布流程在此处定义。
进一步阅读
您可以访问Stacks网站并查看文档来了解更多信息。
您还可以阅读技术论文
- "PoX: Proof of Transfer Mining with Bitcoin"(使用比特币进行证明传输挖矿),2020年5月
- "Stacks 2.0: Apps and Smart Contracts for Bitcoin"(Stacks 2.0:比特币的应用和智能合约),2020年12月
版权和许可
代码和文档的版权归stacks.org所有。
本代码在GPL v3许可下发布,文档在Creative Commons许可下发布。
依赖项
~5-26MB
~343K SLoC