在复制证明中,存储矿工证明他们正在存储数据的物理唯一副本或副本。在矿工首次存储数据时,复制证明仅发生一次。
当存储矿工收到每条客户数据时,他们会将其放入一个扇区。部门是Filecoin中基本的存储单位,可以包含来自多个交易和客户的碎片。扇区填满后,将生成一个CommD(数据提交,也称为UnsealedSectorCID),代表该扇区中所有CID的根节点。
接下来,发生称为密封的过程。
在密封期间,通过一系列图形和哈希处理对扇区数据(由CommD标识)进行编码,以创建唯一的副本。所得副本的Merkle树的根哈希是CommRLast。(在我们的分散数据结构教程中了解有关merkle树的更多信息。)
然后,将CommRLast与CommC(来自复制证明的另一个merkle根输出)一起哈希处理。这将生成CommR(复制承诺,也称为SealedSectorCID),并记录到公共区块链中。CommRLast由矿工私下保存,以备将来在时空证明中使用,但未保存到链中。
编码过程被设计为缓慢且计算繁重,因此难以欺骗。(请注意,编码与加密不同。如果要存储私人数据,则必须先对其进行加密,然后再将其添加到Filecoin网络中。)
CommR提供了我们所需要的证明,表明矿工正在存储客户数据的物理唯一副本。如果您将相同的数据存储在多个存储矿工中,或者使用一个矿工对同一数据进行多个存储交易,则每个交易将具有不同的CommR。
密封过程还使用zk-SNARKs压缩了复制证明,以保持链条较小,以便Filecoin网络的所有成员都可以存储该链条以进行验证。在以后的课程中,我们将学习有关zk-SNARK的更多信息。
——End——
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。