▌2.3.业务详情2.3.1.业务逻辑在介绍Arweave目前的业务情况之前,在此需要先对Arweave的网络结构和共识机制进行说明,方便读者理解。 网络结构和共识机制 Arweave通过Blockweave数据结构和SPoRA共识机制实现了信息永久存储的功能。 区块纺 (Blockweave) 传统区块链的区块是一个个相连, 因此形成了一条链式的结构。而Arweave的区块在这个基础上, 还指向了一个随机的先前回忆区块 (recall chunk) , 因此构成了一个纺状的区块结构。 Arweave的区块结构,来源:Arweave黄皮书 而区块坊的设计,最重要的还是服务于Arweave的共识机制——SPoRA(随机访问的简洁证明Succinct Proofs of Random Access)。 SPoRA共识机制 Arweave在使用SPoRA共识机制之前, 使用的是PoA+PoW机制。PoW大家比较熟悉,在此不展开说明。 而PoA代表了Proof of Access:访问证明。在该机制下,Arweave要求网络中的每个矿工节点如果想要生成新的区块并获得奖励, 那么就必须在本地访问随机的一个回忆区块,如果他没有储存该区块,就没有办法生成新区块。 在这种情况下,如果矿工想尽可能获得较高的挖矿收益, 那么他会去选择存储所有区块,因为每个下一个区块会指向当前区块以及之前随机的一个区块,储存的区块越多,就越有资格产出区块和获得奖励。PoA激励了矿工去多存储Arweave的区块, 并且这也鼓励矿工去存储一些大家较少存储的区块, 来提高满足PoA的概率。 然而单独的PoA机制下, 如果所有矿工都把所有区块存储了, 那么每个人的出块概率就是完全一样的,所以在PoA之外,Arweave又引入了PoW机制来丰富出块的竞争维度。 Arweave在去年2月把PoA+POW升级为SPoRA。单纯的PoA+PoW机制保证了数据的永久存储,但是没有保证数据的访问速度,而PoW还有耗电的环保问题。SPoRA机制降低了之前矿工出块概率中PoW的权重,加入了数据访问速度的维度。除此之外,SPoRA让矿工更加专注于维护自己本地的硬件和节点, 避免矿工们都把数据存储在同一个费率低的数据中心, 便于节点地理位置的多样化,提高了整个网络去中心化的程度。 Wildfire Wildfire是Arweave数据读取的激励措施。由于Arweave仅对数据存储收费,读取免费,为了鼓励节点对读取请求的响应和出块速度,Arweave增加了Wildfire:节点评分机制。其工作原理是让Arweave节点创建一个对其他节点的排名系统,该排名依据来自于两点:1.慷慨性:即发送新交易和区块的次数;2.响应度:对网络请求的响应速度。各节点给相邻节点的评分越高,对方节点出块概率更大。 BlockShadow 节点验证时无需验证整个存储文件。节点在出块时并不是将整个存储文件交给其他节点审阅,而是将存储内容放在区块内,只传输一段哈希值和账户列表。这段哈希值代表了这部分内容,其他节点通过验证这段哈希值和文件池内的是否能对应的上。这种方式加快了验证的效率,将一部分的工作转移到链下进行。同样的,调用时也只需要BlockShadow就能定位到存储的区块完成调用。 网络参与者 Arweave网络的参与者分为两类,矿工和用户。用户支付AR将数据添加到网络,网络中的矿工收取AR以开采新区块,它们需要储存和提供数据。整个网络在两者中进行整体的协调和分配奖励。 |