技术概述

此页面为您提供Stacks的技术信息。
有关Stacks的整体概念,包括去中心化应用、传输证明共识机制(Proof of Transfer / PoX)等,请访问 “了解Stacks” 页面。

四个基础:

Clarity智能合约

一个更安全,并且可预测的智能合约语言。

Stacks区块链

连接到比特币链的1层区块链。

传输证明

连接Stacks链和比特币链的共识机制。

比特币

结算,安全,储备资产。

比特币:

比特币提供结算和安全性,是Stacks网络的储备资产。

结算和安全

Stacks不对比特币设计进行任何修改。 它使用比特币在每个区块上结算比特币区块链上的交易。 这使得所有Stacks交易都继承了比特币的最终状态和结算,因为Stacks交易可以在比特币区块链上进行验证。

扩展比特币

在Stacks出现之前,在比特币上构建新功能是个问题。 比特币是安全的,因为它稳定且抗变化。 比特币的脚本语言非常有限,攻击面很小,并且交易空间也很有限。 也正因此,向比特币核心协议引入新功能非常困难,而且也不理想,因为这些功能会增加复杂性。Stacks通过传输证明,微区块和Clarity智能合约语言来解决此问题。 它的设计目的是使开发者可以从比特币的财产中受益,并且无需修改比特币本身。

传输证明(Proof of Transfer / PoX):

传输证明是Stacks与比特币之间的共识机制。

传输证明怎么工作?

传输证明是一种挖掘机制和全新的共识,它允许工作证明链(此处为比特币)被扩展。 所有Stacks交易均以比特币结算,这使Stacks交易受益于比特币的安全性。 每个比特币块,Stacks交易都在比特币区块链上进行打包处理和哈希处理。

传输证明挖矿

传输证明是工作量证明的升级。 借助传输证明,矿工们无需用电力和计算能力来赚取区块奖励和交易费。 相反,他们将工作量证明货币,也就是比特币,转移给Stacks币的持有者。 这使Stacks币的持有人能够从共识中获得比特币 - 此过程称为栈押(Stacking)。 领导人选举在比特币上进行,新的区块写在Stacks区块链上。

传输证明的好处

✔️ Stacks及其应用继承了比特币的安全性和结算。
✔️ 基于Stacks构建的应用程序可以与比特币链上的数据和状态进行交互。
✔️ 任何人都可以挖矿,不需要特殊的硬件。

相关资源

传输证明白皮书
传输证明GitHub
挖矿文档

Stacks区块链:

Stacks区块链是比特币之上的灵活层面,可实现去中心化应用,智能合约和数字资产。

Stacks是一个一层区块链

像比特币一样,Stacks是第一层区块链。 传输证明以1:1的区块比例将其连接到比特币。 Stacks区块链比比特币更灵活,并支持智能合约,数字资产和连接回比特币的去中心化应用程序。

独立于比特币的扩展

比特币出块时间太慢,无法支持去中心化应用程序。 为了解决比特币有限的速度,Stacks使用了微块,从而在Stacks区块链上实现近乎即时的确认。 以比特币出块速度,这些区块将从Stacks结算到比特币,从而受益于比特币的最终性和安全性。独立于比特币进行扩展可确保Stacks交易足够快,适用于去中心化应用程序,同时仍可受益于比特币的安全性和结算。

Stacks币

Stacks币(STX)是Stacks区块链上的原生资产,用作交易的燃料。 从执行Clarity智能合约到创建数字资产的所有交易均以STX支付。

Stacks区块链的好处

✔️ Stacks区块链上发生的任何事情都以比特币为结算依据。
✔️ 比特币之上的灵活层,可实现智能合约,数字资产和去中心化应用程序。
✔️ Stacks区块链的扩展独立于比特币。

相关资源

Stacks 2.0 中文白皮书
Stacks区块链GitHub
Stacks区块链文档

Clarity:

Clarity是一个安全且可预测的智能合约语言。 Clarity智能合约可见比特币状态,并且可以包括基于比特币的逻辑。

优化安全性

Clarity是现有智能合约语言的升级,其他语言中充斥着弊大于利的功能。 智能合约中的错误或恶意漏洞会造成大规模且不可逆转的伤害。 Clarity可减少这些错误的可能性,使写程序的人难以编写危险的代码,并让编写人员易于在运行之前查看代码的作用。

用户体验的飞跃

如今,无法审核智能合约代码的非技术用户别无选择,只能相信开发人员编写的代码中没有错误或恶意漏洞。Clarity为非技术用户提供了熟悉的Web 2.0用户体验,并无需仅仅依赖信任。 由于可以提前知道Clarity合同在执行之前会做些什么,因此用户会在界面中确切看到他们的余额将要发生什么。 后置条件 (post-conditions) 使用户或其钱包可以设置在合同完成运行时必须为 "对“ 的条件。 如果不满足这些条件,例如,合同尝试转让过多代币,则交易中止。

基于比特币的逻辑。

Clarity内置SPV证明,并且可以看到比特币链状态,从而可以轻松地将基于比特币的逻辑编写到您的智能合约和应用中。

Clarity的设计

✔️ 编程语言。 没有编译器,没有汇编,没有字节码。
✔️ 源代码在链上解释。 所见即所得。
✔️ Clarity语言是决定性的,是图灵不完备的(Turing-incomplete)。 在代码运行之前您可以肯定地知道它会做什么。
✔️ 用户使用后置条件(post-conditions)来保护其资产,后置条件必须在智能合约完成运行时为 ”对“。

Clarity的好处

✔️ 安全可靠的智能合约。
✔️ 使用基于比特币的逻辑进行编程。
✔️ 更可靠和熟悉的用户体验

相关资源

Clarity网站
Clarity引用(reference)
智能合约文档
查看已发布的智能合约

回到开发者首页继续学习和构建

使用Stacks

Stacks钱包
获取STX
栈押 (Stacking)
挖矿
去中心化应用 (Dapps)
稳定币 (Stablecoin)

学习

了解Stacks
Stacks 2.0 中文白皮书
传输证明 (PoX) 白皮书
Stacks改进提议 (SIPs)

开发者

开发者主页
文档
Stacks GitHub
Clarity智能合约语言网站
Clarity文档
Clarity教程
Clarity GitHub

生态

Discord
电报中文群
微信公众号和微信群
赠款 (Grants)
社区改进提案 (SIPs)
Stacks品牌资产

由Stacks中文社区创建并维护的Stacks中文网站。

上次更新:2022年1月