Arweave 是一个去中心化存储网络,致力于为用户提供高效、低成本的永久数据储存。该网络基于几项核心技术,例如:Blockweave、Proof of Access、Wildfire 等。
Blockweave 是一个针对 Arweave 设计的编织状结构的区块链网络。与线性区块链(如:比特币、以太坊)类似,Blockweave 上的区块被用来存储数据,并与其他区块相连构成网络。但 Blockweave 网络中的并非是按时间顺序串联的,而是每一个区块都与上一个区块以及一个链上的随机区块相连,相互交织最终形成了一个编织状结构。
与传统区块链不同,Blockweave 不要求网络上的矿工成为全节点(full node),即包含链上所有交易副本的节点。Blockweave 要求每一个矿工下载两个表单:
这两个表单将每12个区块更新一次(约1个小时)
区块哈希表单在节点验证区块时使用。当矿工提交了一个新的区块时,节点可以使用表单中的过往区块哈希来验证区块是否有效,而不用回溯过往区块的详细交易信息。
钱包表单主要用来降低挖矿的准入门槛。该表单由所有矿工共同维护,包含了所有的钱包地址以及账户余额。通过这个表单,矿工在验证新交易时不需要回溯过往交易,而是可以直接验证交易是否钱包的所有者正确签署。
Proof of Access 是 Arweave 的共识机制,也是 Proof of Work 共识的一种衍生机制。
正如前文提到的,Blockweave 不要求矿工储存所有的链上数据和交易信息,以此提高网络的效率,避免过度存储。但是,数据也需要被适当的重复保存,以确保数据的可获得性以及安全性。因此,每个区块除了与上一个区块相连,还需要包含一个随机的过往区块的交易信息。(具体的区块生产见下图。)鉴于每一次区块生成矿工都需要证明其可以访问一个随机的过往区块的数据,这个机制被称为 Proof of Access(访问证明)。在这个机制下,每一个区块都将会保存在多个矿工的设备上。
此外,Arweave 的机制还能够鼓励矿工储存被复制次数少的区块,以保障网络的安全性。
Wildfire 是一个排名机制。Arweave 将会按照矿工的表现(如:回复交易请求的速度)对他们进行排名。然后,Arweave 会以此作为依据决定交易需求的分配。简而言之,表现越好的矿工被分配的任务越多,收益越高。
Permaweb 是建立在 Arweave 网络上的应用层。这些网络上的应用与传统网站类似,但上面的内容都将永久储存在 Arweave 上。这里我们列出了,Arweave 上的一些应用: