作家
登录

Filecoin: 一个去中心式存储网络之三

作者: 来源: 2018-03-29 09:39:36 阅读 我要评论

沙龙晃荡 | 3月31日 京东、微博、华为拭魅战专家与你合营商量容器技巧实践!


3. 复制证实与时空证实

在Filecoin协定中,存储供给商必须让客户信赖,他们的数据已经被无缺存储。在实际操作中,存储供给商会生成存储证实(Proofs-of-Storage,POS)给区块链收集(或客户本身)进行验证。

本节中,我们将展示和概括在Filecoin中所应用的复制证实(Proof-of-Replication,PoRep)和时空证实(Proof-of-Spacetime,PoSt)实现筹划。

3.1 念头

存储证实(POS)筹划,例如可证实数据拥有(PDP)以及可恢复性证实(PoR)筹划,它许可用户(即审核人V)将数据外包给办事器(既证实人P)以检查办事器是否依然存储数据D。用户可以用比下载数据还便捷的方法,来验证外包给办事器数据的完全性。办事器经由过程对一组区块进行随机采样和传送少量数据,来生成概率性的拥有证实,以此作为给用户的困惑/响应协定。

PDP和PoR筹划只许可证实人在困惑/响应的时刻拥有某些数据。在Filecoin中,我们须要更强大年夜的保障,来阻拦恶意矿工经由过程进击获得不该得的嘉奖。常见的三种进击类型有:女巫进击(Sybil attack)、外包进击(outsourcing attacks)、生成进击(generation attacks)。

3.2 复制证实

复制证实(PoRep)是一个新型的存储证实,它许可办事器(证实人P)向用户(审核人V)证实:数据D已被复制到它专有的物理存储上了。我们的筹划是一种交互式协定,证实人P:(a)承诺存储数据D的n个不合的拷贝(自力物理拷贝),然后(b)经由过程困惑/响应协定来使审核人V信赖P确切已经存储了每个拷贝。我们今朝已经知道,PoRep在PDP和PoR筹划中,阻拦女巫进击、外包进击、生成进击的才能会有所进步。

留意,想要PoRep正式的定义,以及懂得它的属性和深刻研究的,我们推荐参考[5]

(Setup, Prove, Verify)

  • Setup(1λ, D) → R, SP , SV, 个中SP和SV是为筹划专门设定的P和V变量,λ是一个安然参数。PoRep.Setup用来生成副本R,以及赐与P和V须要的信息来运行PoRep.Prove 和 PoRep.Verify。一些筹划可能会请求证实人或者第三方交互来运算PoRep.Setup。
  • Prove(SP, R, c) → πc,个中c是审核人V发出的随机质疑, πc是证实人产生的拜访R的证实,R是D的特定副本。PoRep.Prove由P运行,为V生成πc。
  • Verify(Sv, c, πc)→ {0, 1},用来检测证实是否精确。PoRep.Verify由V运行,并使V信赖P已经存储了R。

3.3 时空证实

存储证实筹划许可用户检查存储供给商当时是否存储了外包数据。我们若何应用PoS筹划来证实在一段时光内数据被存储了?一个异常天然的谜底是请求用户反复(例如,每分钟)对存储供给商发送请求。然而如许的交互所须要的通信复杂度会成为一些体系的瓶颈。像Filecoin如许,存储供给商会被请求提交证实到区块链收集。

为懂得决这个问题,我们介绍一个新的证实,时空证实(Proof-of-Spacetime),它可以让审核人检查存储供给商是否在一段时光内存储了他的外包数据。这就对证实人产生了直不雅的请求:(1)生成持续的存储证实(在本文中是“复制证实”)来作为确准时光的一种办法。(2)递归履行来生成简单的证实。

【定义七】  (时空证实)Post筹划可使有效的证实人P可以或许说服一个审核人V信赖P在一段时光内存储了数据D。PoSt是多项式时光算法的元组:

  (Setup, Prove, Verify)

  • Setup(1λ, D) → R, SP , SV, 个中SP和SV是为筹划专门设定的P和V变量,λ是一个安然参数。PoRep.Setup用来生成副本R,以及赐与P和V须要的信息来运行PoRep.Prove 和 PoRep.Verify。一些筹划可能会请求证实人或者第三方交互来运算PoRep.Setup。
  • Prove(SP, R, c) → πc,个中c是审核人V发出的随机质疑, πc是证实人产生的拜访R的证实,R是D的特定副本。PoRep.Prove由P运行,为V生成πc。
  • Verify(Sv, c, πc)→ {0, 1},用来检测证实是否精确。PoRep.Verify由V运行,并使V信赖P已经存储了R。

3.4 PoRep和PoSt实际应用

我们对PoRep和PoSt在现有体系上的应用很感兴趣,欲望能构建一个实用性体系,但不依附任何的中间式第三方或者硬件。我们给出了一个PoRep架构(见“密封的复制证实”[5]),它须要在Setup过程中履行迟缓的次序计算密封来生成副本。PoRep和PoSt的协定草图详见图4,Post证实步调的底趁机制的见图3。

防碰撞散列。我们应用一个防碰撞散列函数:CRH : {0, 1}* → {0, 1}O(λ)。以及另一个一个防碰撞散列函数MerkleCRH,它可以将字符串瓜分成多个部分,构造二叉树并将递归应用到CRH,最后输出根。

zk-SNARKs。我们对PoRep和PoSt的实现依附于零常识的简洁非交互见常识论(zero-knowledge Succinct Noninteractive ARguments of Knowledge,zk-SNARKs)[6,7,8]。因为zk-SNARKs异常简洁,证实短并且轻易验证。情势上来说,就是让L作为NP说话,并用C做为L的判决电路。中间式信赖方履行一次设置会产生两个公共密钥:证实密钥pk和验证密钥vk。证实密钥pk可使任何(非信赖的)的证实人都能生成证实π来证实x∈L,x是任一实例。非交互式证实π是零常识的,也是常识证实的。任何人都可以使悠揭捉?证密钥vk来验证π证实。尤其zk-SNARK的证实是可公开验证的:任何人都可以验证π,而不须要与生成π的证实者进行交互。π证实具有恒定的大年夜小,并且可以在| x |的线性时光内获得及时验证。


  推荐阅读

  Docker 创始人 Solomon Hykes 宣布从 Docker 离职

沙龙晃荡 | 3月31日 京东、微博、华为拭魅战专家与你合营商量容器技巧实践!最新消息,Docker 开创人 Solomon Hykes 今日在 Docker 博客上宣布已正式大年夜 Docker 公司离职,不再担负公司的日常运作工>>>详细阅读


本文标题:Filecoin: 一个去中心式存储网络之三

地址:http://www.17bianji.com/lsqh/41028.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)