Filecoin将区块链引入到分布式存储领域,Filecash通过新的技术探索权衡安全与效率。
撰文:Luff
正如比特币扩容之争分叉出比特现金,在Filecoin诞生三年后,基于不同理念的社区人士发起了首个分叉项目Filecash。Filecoin是将区块链引入分布式存储领域的第一个吃螃蟹的人,它希望通过一系列机制设计成为存储人类重要数据的激励相容的网络系统。
但复杂的系统设计使得Filecoin的进展举步维艰,执着于「存储有价值数据」的初衷让Filecoin饱受争议,主要体现为两点:
技术方案:高证明成本导致网络参与门槛过高经济模型:抵押、惩罚等机制对矿工过于严苛作为Filecoin的分叉项目,Filecash试图通过方案改进来平衡社区的利益纷争。本文主要从技术角度阐述Filecoin的运行方式及Filecash的新探索。
Filecoin市场机制
为更好理解Filecoin的技术原理,我们先简单介绍Filecoin的市场机制。Filecoin构建了两个市场:数据存储市场和数据检索市场,两个市场分别存在矿工和用户。
Filecoin存储市场与检索市场运行流程,来源Filecoin白皮书
存储市场
存储市场是由存储矿工与有数据存储需求的用户参与的市场。存储市场中客户提出存储数据的需求,而存储矿工,提供他们的存储空间和存储服务。一个完整的存储周期如下:
比特币分布式账本的大小接近0.5TB:金色财经报道,2022年10月15日,比特币区块链接近500 GB,或大约0.5 TB的空间,以便将整个分布式账本的历史存储在一个驱动器上。在撰写本文时,存储整个BTC区块链需要超过432,000兆字节 (MB) 或的空间。
而在2009年1月3日,在中本聪启动网络的那一天,区块链的大小还不到1千字节。直到2009年2月 16日,比特币的分布式账本的大小才超过1MB,到2012年2月13日,区块链的大小达到1GB。[2022/10/16 14:29:09]
第一,存储矿工提供自身价格及存储要求至订单簿。订单薄是公开的,任何人都可以查看,存储市场的服务价格是由市场所决定。第二,当客户的需求价格与存储矿工的订单相匹配时候,交易自动撮合。第三,验证者验证矿工是否存储有效数据,采用零知识的非交互式证明进行验证,有效保护隐私。
检索市场
检索市场为链下市场,用户可以通过检索市场访问自己所需要的数据,由检索矿工来提供检索服务。检索矿工不参与区块生成环节,直接从客户端获取相应服务费用。
一个完整的检索周期如下:
第一,用户与检索矿工广播出价单和报价单,如发现订单匹配,则在链下订单簿发起交易。第二,达成交易后,双方建立链下支付及数据传输信道完成交易。第三,交易完成后,订单和交易提交至区块链记录,并验证交易结果。
分布式数字身份产业联盟白皮书发布 百度等参与编写:8月18日消息,分布式数字身份产业联盟今日正式发布了《DIDA白皮书》,这是国内首个系统阐述分布式数字身份技术的白皮书。记者注意到,白皮书编写单位包括百度、微众银行、溪塔科技、中钞区块链技术研究院、飞天诚信、国家金融IC卡安全检测中心、腾讯云、浦发银行、亿联银行。(《科创板日报》)[2020/8/18]
Filecoin如何实现这样一个基于区块链的数据市场?共识机制是关键,它决定了区块链的基本运行逻辑并维护网络安全。
Filecoin共识机制:预期共识为主,复制证明时空证明为辅
Filecoin采用了预期共识为主,复制证明时空证明为辅的混合共识技术。其中预期共识决定在一个周期内由谁产生TipSet,而复制证明和时空证明则维护网络稳定安全运行。
预期共识
预期共识脱胎于权益证明共识机制,只不过将权益共识里面的代币权益换成了存储。每一轮选举一名或者多名领导矿工来创建新的区块,矿工赢得选举的可能性跟矿工当前的存储能力成正比。
每一轮,选举出来的领导矿工数期望值为e,被选举出来的矿工创建新的区块,并对网络进行广播。Filecoin区块链,每个区块高度对应到的是一个区块集合(Tipset),每个区块集合包含数量不定的区块,这种链式结构接近有向无环图(DAG)。
Filecoin希望构建一个开放的、人人可参与的、无需信任的经济系统。首先要保证系统安全稳定运行,防止网络攻击。从存储角度理解,网络面临两个问题:
动态 | 捷克区块链联盟计划通过分布式账本技术改变当地经济:据cryptovest报道,最近成立的区块链协会(捷克联盟)周二宣布,计划通过利用分布式账本技术(DLT)改变当地经济。该联盟由区块链创新技术孵化器Adel,科技巨头IBM,专业服务公司普华永道和全球律师事务所Squire Patton Boggs创立。[2018/9/13]
矿工确实按照用户需求存储了数据的相应备份,并且数据能够被访问;在合同有效期内,矿工不得删除用户数据。如何约束矿工实现以上两点?Filecoin存储证明就是解决之道。Filecoin存储证明由复制证明与时空证明两部分组成。其中复制证明用于解决第一个问题,而时空证明则解决第二个问题。
复制证明
简单来讲,复制证明就是矿工证明自己真的存储了用户的数据。
用其发明者BenFisch的话来解释:
「复制证明是一个交互式证明系统。在这个系统中,存储的提供者需要提供可公开验证的证明,来表明其为一个数据文件副本分配了独有的空间资源,而且所存储的数据是可检索的。
进一步说,PoRep使证明者能够证明他们正在使用不低于需要的最小空间来存储信息,并实际使用该空间来存储有用的信息。同时,PoRep可以有效地提取存储的任何数据。」在复制证明过程中,存储矿工将用户数据存储到扇区。扇区被存满后,矿工对扇区进行封装,封装是一个计算量很大的过程,它会生成数据的唯一标识码。一旦数据被封装,存储矿工生成证明,然后对证明进行零知识证明压缩,最后将压缩结果提交到链上,成为存储承诺完成的证明。
声音 | 以色列银行副行长:分布式账本和数字货币技术有潜力为金融体系做出贡献:7月20日消息,以色列银行副行长Nadine Bodo-Trachtenberg19日在拉马特甘举行的加密会议上表示,分布式账本和数字货币技术有潜力为长期的货币和金融体系做出贡献。
Bodo-Trachtenberg表示,数字货币可以让用户控制数据,并允许分权。令牌交易和智能合约是一种技术,可以扩展货币和资产交易的可能性,还能简化通过许多中介机构的流程。[2018/7/20]
复制证明通过四个阶段来完成:
密封预交付第1阶段:在这个阶段,进行PoRepSDR编码。这个阶段受CPU限制,是单线程的。这个阶段预计需要几个小时的时间,精确的时间取决于被密封的扇区的大小,当然,也取决于进行密封的机器的规格。密封预交付第2阶段:在这个阶段,Merkle树的生成是使用Poseidon哈希算法执行的。这个过程主要是GPU限制的,但应该预期会慢得多。当使用GPU时,此阶段预计需要45分钟到1小时。密封提交阶段1(C1):这是一个中间阶段,执行生成证据所需的准备工作。它受CPU限制,通常在几十秒内完成。密封提交阶段2(C2):最后,这个密封阶段涉及到创建一个SNARK,在它被广播到区块链之前,它被用来压缩必要的证据。这是一个GPU密集型过程,预计需要20-30分钟才能完成。时空证明
复制证明完成后,存储矿工必须证明其持续存储了用户数据,这将通过时空证明完成。时空证明是向存储矿工发出加密挑战的过程,只有直接封装扇区的矿工才能正确回答。存储矿工必须在严格的时间限制内应对这一挑战。Filecoin中时空证明有两大挑战:WindowPoSt和WinningPoSt,此处不作展开。
美国分布式商业应用公司创始人黄连金:DAPP开发有6个原则:
黄连金表示,DAPP开发要遵守六个原则,即LIPMST。其中L(life)代表寿命周期的管理,设计DAPP要考虑本身的生命周期;I(ID)代表身份,身份的验证与获取是要思考的;M(model)代表模块,我们要用模块化的方式来思考;P(privacy)代表隐私,在不同的国家有不同的隐私法;S有两个含义,一是储存(save),思考在链上还是链下来存储信息,另一个是安全(safe),确保能够不再丢币;T(token)代表代币,开发者要设计与众不同的代币模型。[2018/5/13]
时空证明底层机制,来源Filecoin白皮书
Filecoin安全机制
Filecoin白皮书中提到复制证明可有效防止女巫攻击、生成攻击和外包攻击。但需要考虑一个问题:复制证明作为一种证明算法,本身可以否被伪造?答案是肯定的,事实上任何公开的的证明都可以被伪造,机制设计的目的就是提高攻击者的成本,让其攻击成本高于获利就能避免攻击。
不难想象这样一种攻击行为:
矿工在存储用户数据的时候发起复制证明,然后在复制证明完成后删除数据;而在需要时空证明的时候再做一次复制证明。这样,存储矿工别没有持续保存用户数据的备份,但却依旧能够完成整个存储证明而获得奖励。
其实在Filecoin存储证明中,复制证明与时空证明是相互依赖的。Filecoin通过两个证明过程的时间要求来避免攻击。具体来说,时空证明必须在很短的时间内完成,否则无效;而复制证明如果不能在很短的时间内完成的话,就不能发起攻击。当这两个时间的差距越大,安全性就越高。Filecoin网络对证明时间的要求:
时空证明要在小于一个区块时间内完成,时空证明的时间是网络设定的;复制证明被设计成通过数小时才能完成,复制证明的时间消耗是由于算法的复杂性造成的。单纯从安全角度考虑,复制证明所消耗的时间越长,对网络而言越安全,可以从以下两个角度考虑延长复制证明所消耗的时间:
算法长度:步骤越多的算法需要的时间越长算法可并行性:并行度可以通过增加资源减少运算时间具体来说,当前Filecoin复制证明所采用的的SDR算法在这两方面都保证了足够的强度。
算法长度通过多步骤计算实现:比如在复制证明中要计算11层labels,这个层数可以调整,层数越多,步骤越多,时间越长;每层计算之间强依赖关系来去并行化:在计算labels时,每一步的计算都依赖上一步的结果,所以不能通过增加资源的方式来缩短计算时间;
但是,安全的代价往往是高成本。Filecoin在保证网络安全性的同时带来了几个问题:
高昂的计算成本降低了网络的经济效率,类似PoW一样通过消耗昂贵的计算资源仅仅达成存储证明,这一点与Filecoin白皮书提倡的「有用共识」相悖;复杂的证明过程提升了对矿机硬件配置的要求,特别是CPU、GPU与RAM上的成本。主流Filecoin矿商CPU与GPU配置对比
Filecash的技术权衡
尽管ProtocolLabs一直在优化复制证明算法,例如计划升级到NSE算法以改善成本和检索延迟,但短期内仍然无法解决效率问题。在安全性与成本的权衡中,Filecash选择了适当降低安全性,换取更低的参与门槛。
Filecoin计算资源消耗主要集中在复制证明第一阶段,Filecash方案优化也主要在这个阶段,体现为以下几点:
升级P1核心算法,将SHA256算法升级为SHA512。由于AMD处理器支持SHA256扩展,这样会使得AMD处理器在P1阶段具备极大优势,可能使用英特尔处理器计算P1过程需要30个小时,而是用AMD处理器去只需要4个小时。这将导致大量闲置的英特尔机器因为不具备经济效益,无法参与Filecoin网络。而升级到SHA512算法Filecash可同时接纳不同处理器机器。将P1阶段计算层数由11层减为8层。参考一些容量证明项目,8层的计算层数已经能够提供足够的安全性,但是却可以大大提高经济效益。修改扇区大小为16G,降低内存占用量。目前Filecoin的扇区大小是32G和64G,这就要求矿工的电脑也至少需要64G的内存。一般的普通用户或者家用电脑无法满足这个配置需求,他们将被排除在系统之外。通过降低扇区大小,可以让更多相对低配置的设备参与到早期网络。Filecash技术方案核心逻辑是在于降低生态的参与门槛,让大量的闲置的设备,还有家庭的客户能够参与到网络,给网络提供共识。强壮的共识能为生态保驾护航,强壮的共识底层能为生态吸引更多开发者和使用者,活跃的生态才能为矿工提供稳定的挖矿收益,稳定的挖矿收益促进更多矿工参与到挖矿行为中,生态形成良性循环。
Filecoin的预期共识机制相当于在PoS基础上引入复杂证明过程,在太空竞赛第一阶段中表现出的网络性能令人担忧,以至于交易手续费激增,脱离了实际应用场景。针对TPS不足,内容无法有效审查等问题,Filecash调整了共识机制采用了:DPoSPoRepPoSt混合共识。网络围绕矿工开展一系列经济活动,矿工作为底层支撑提供共识和Token;DPOS节点作为核心承载,提供可靠的高TPS和网络可用性。同时,Filecash针对虚拟机、跨链、预言机等多个组件进行重新设计和优化,使Filecash网络能够无缝的与ETH\DOT\BTC等成熟区块链进行交互,解决区块链间应用生态互通困难的问题。
分布式存储领域新格局
Filecoin早已声名在外,而Filecash作为后起之秀能否撼动Filecoin还未可知。但是在Filecoin团队与社区矿工的纷争之下,关于分叉的声音越来越盛。可以预料的是,随着Filecoin主网上线,分布式存储领域会冒出许多新面孔,它们会探索和Filecoin不一样的道路。
与其说,Filecash是在向Filecoin发起挑战,不如说Filecash是在为分布式存储领域探索新的可能。
毕竟,历史没有记住第一个吃螃蟹的人,却记住了螃蟹的美味。
标签:FILLECFILECOIfil币币币情Reflector FinanceFilecoin Standard Hashrate Tokencoinbase中国人可以注册吗
亲爱的用户:BigONE将于2020年10月13日16:00开启WAY-FProject交易,上线WAYF/USDT交易对,充值与提现服务同步开放.
1900/1/1 0:00:0010月10日,重庆市委副书记、市长唐良智会见了中国人民银行党委委员、副行长范一飞一行,并共同见证重庆国家金融科技认证中心成立.
1900/1/1 0:00:00亲爱的大币网(Dcoin)用户:FIL、TSPT将于近期上线大币网(Dcoin),详情请参考最新公告.
1900/1/1 0:00:00国庆假期刚结束一天,可能大家的心情还没有从愉快的玩耍中平复。但“洞中方一日,世上已千年”,行业变化非常快,我们今天不去对一个项目进行数据上的细致分析,而是对整体的架构做一下盘点.
1900/1/1 0:00:00亲爱的用户:DigiFinex已完成所有DOGZ更换合约代币映射事宜,现已重新开放DOGZ充提币服务.
1900/1/1 0:00:00尊敬的TB用户:TokenBetterTB矿池为增强用户体验、满足广大用户挖矿需求,将于10月13日10:00上线挖矿币种ETH.
1900/1/1 0:00:00