深入浅出IPFS

今天这篇文章想和大家分享下Filecoin协议里面的复制证明(Proof of Replication),由于协议涉及到很多概念,看起来可能有点枯燥,我尽量言简意赅的写完。

全是Filecoin干货

首先简单介绍下filecoin,filecoin是重新设计架构的核心网络基础设施。filecoin是一个非常重要的和雄心勃勃的在互联网规模的项目。然而,它是基于运动、生长和分散技术采用堆栈的团队创造了约规,支持分散的网络协议这是它的重要作用。

Filecoin中常见基本概念诠释:

挑战(challenge):问答形式,系统对矿工发起提问,矿工正确的答复,则挑战成功,否则失败。

证明者(prover):矿工向Filecoin系统提供有效的证明(类似于身份证的作用),来完成挑战。

检验者(verifier):系统代表用户向矿工发起挑战(相当于质检人员),来检测是否矿工完成了数据存储任务。

数据(data):用户向矿工提交的需要存储或者矿工已经存储的数据

证明(proof):矿工完成挑战时候的回答。

流程:系统向矿工发起挑,矿工答复证明,系统检验矿工的答复以判断矿工是否通过本次挑战。

全是Filecoin干货

Filecoin涉及到的证明概念:

数据持有性证明(Provable Data Possession ,PDP):用户发送数据给矿工进行存储,矿工证明数据已经被自己存储,用户可以重复检查矿工是否还在存储自己的数据。

可检索证明(Proof-of-Retrievability,PoRet):和PDP过程比较类似,证明矿工存储的数据是可以用来查询的。

存储证明(Proof-of-Storage ,PoS):利用存储空间进行的证明。工作量证明的一种。

复制证明(Proof-of-Replication,PoRep):新的 PoS(Proof-of-Storage),PoRep可以保证每份数据的存储都是独立的,可以防止女巫攻击,外源攻击和生成攻击。

工作量证明(Proof-of-Work,PoW):证明者向检验者证明自己花费了一定的资源,PoW被用在加密货币,拜占庭共识和其他各种区块链系统。BTC使用的就是这种类型的证明,依赖巨量的哈希计算和能源消耗来建立共识和保证btc网络的安全性。

全是Filecoin干货

空间证明(Proof-of-Space,PoSpace):Filecoin提出的概念,存储量的证明,PoSpace是PoW的一种,不同的是PoW使用的计算资源,而PoSpace使用的是存储资源。

时空证明(Proof-of-Spacetime,PoSt):时空证明,矿工证明自己花费了spacetime资源, 即:一定时间内的存储空间的使用,PoSt是基于PoReps实现的。

区块链为什么要搞这么复杂?

区块链复杂设计是为了保证矿工能够老老实实的帮助用户存储数据以及公平的分配代币。

全是Filecoin干货

深度剖析详解复制证明和时空证明

复制证明:

PoRep必须能够防范以下三种常见的攻击方式:女巫攻击,外源攻击和生成攻击,他们的共同特点是攻击矿工实际存储的数据大小要比声称存储的数据小,这样攻击矿工就能获得本不该他获得的报酬。

女巫攻击(Sybil Attack):利用n个身份,承诺存储n份数据D,而实际上存储小于n份,但是却提供了n份存储证明,攻击成功。

外部数据源攻击(Outsourcing Attack):当攻击者矿工收到检验者要求提供数据D的证明的时候,攻击者矿工从别的矿工那里生成证明,证明自己一直存储了数据D,而实际上没有存储,攻击成功

生成攻击(Generation Attack):攻击者A可以使用某种方式生成数据D,当检验者验证的时候,攻击者A就可以重新生成数据D来完成存储证明,攻击成功。

全是Filecoin干货

时空证明:

时空证明提出了证明链的数据结构,证明链把一些的提问和证明链接起来形成。在证明链的基础上添加上时间段,这样就得到了一段时间内的矿工存储数据的证明,这就是时空证明,可以证明在该段时间内矿工存储了特定的数据,并且利用时间戳锚定这些证明链,这样即使验证者不在线,也能够在将来去验证矿工在该段时间内生成了证明链。

Filecoin挖矿技术服务(排名服务、挖矿技术方案定制)

热门文章