http://www.xiaoyenzi.com

链说|星际文件系统IPFS&Filecoin 梁然

【链说|区块链领域TED演说】

多维角度看待区块链行业的短视频内容平台。集结业内百余位顶级大咖,以专业、求真的态度,通过沉浸式演讲氛围,带领观众抽丝剥茧、还原区块链本质,并获得区块链所相关的新知。

【人物】

梁然

RippleFox(中国最大的Ripple和Stellar社区)创始人,Stellar创始人Jed McCaleb中国区最早引荐人,曾任中国分布式总账基础协议联盟ChinaLedger高级研究员,中国计算机协会区块链讲师,工信部区块链系统功能测试专家,工信部中国区块链技术和应用发展白皮书编写人之一。

【区块链领域TED演说 梁然】

好,大家好,今天我要介绍的是区块链当中的新一代的基础设施星际文件系统IPFS,然后再基于IPFS上面的FileCion。

好,现在我开始讲。

这个的话我首先会介绍它的背景以及IPFS它未来所起的作用,然后我会来介绍基于IPFS的一些应用,以及如何用激励措施来使所有的人一起参与到这个区块链的基础设施的建设当中,最后我还会展示一个硬件的解决方案。

好,我们来看一下创始人。

这个创始人是毕业于美国斯坦福大学,他是David的教授的一个学生。David教授撰写的论文《关于哈希表》,然后由传奇的程序员Jed和他们一起,做出了世界上第一个分布式的文件传输传播系统电驴。经过了这么多年的发展,David教授的学生觉得应该推出新一代的分布式的文件存储系统,来一举解决在区块链当中的所有的数据的存证和存储问题。好,他创建的这个实验室叫Protocol Labs。

它有很多的产品,从左到右的话是FileCoin、IPFS、IPLD、Libp2p以及Multiformats,每一个组件都可以单独的拎出来去使用。我们作为用户主要是关注最左边的两个,一个是FileCoin,一个是IPFS。后面的三个是命名空间的查询以及P to P的传播的一种解决方案,那么这些主要是由专业的程序员来负责的。

我今天首先讲IPFS。

那么IPFS它的名字起的很大,叫Inter Planetary,名字翻译过来就是星际文件系统。为什么叫星际文件系统?我们可以想象一下,就是我们现在的存储设施都是在个人电脑上的,一个个磁盘是独立的,IPFS希望能够把所有人的磁盘都放在一起。未来甚至可能是一个星球,你都可以看作是只有一个磁盘。或者说更大一点,一个星际,一个星际都可以来做这么一个同样的存储。那么大家想象一下,如果我们全地球的文件,它的内容可能有文本有视频,有pdf 、PPT或者说是我们的那些html,也就是说是我们的一些网页,那是不是我们会觉得访问起来就像访问本地一样,非常的可靠。那么IPFS就是想做到这么一个目标,它可以取代目前最流行的网络架构的基础设施,取代我们的http,那么未来我们所有的网站都有可能被IPFS去重构。

好,目前我们的IPFS希望能够做到这四个目的。

第一个就是它是一个高效率低成本的分布式存储方式。我们现在的网络的基础设施还是非常非常昂贵的,我们个人依然没有达到,就是个人去租一个网络服务器的这样的目标。而IPFS可以把文件打碎分布储存在你的个人电脑上,然后用我们现在成熟的P to P方式来加速同步下载。那么可以想象,现在我们在中国去访问一个美国的网站,我们的延迟是非常非常大的。如果是我们去看一个视频,看一个美国的视频,那么它就会更加的低效,而且成本很高。比如说我要看一个1080P的视频,它可能要传播几个G的文件,它需要占用很大的骨干网的流量。但是如果有了IPFS我们的这个资料可以存储在可能是中国的很多个人的家庭电脑上,我只要从中国本地去拿这个视频文件就可以了。所以说它可以做到一个非常高效率的快,然后也是一个非常低成本的这样的一个分布式存储。

第二个就说是它的存储文件永不丢失。我们现在经常访问网站会发现出来一个http404的错误,或者说是由于DNS错误我们无法访问到,或者说是因为某种众所周知的原因。像微信它可能就说是诱导分享,或者说有人举报,所以说你看不了。那么IPFS它是一个协议,它的文件是可以存储在四面八方的,而且可以存很多很多份,那么就使得我们的文件是非常可靠的存储着。 然后它还有出色的版本控制,那么就可以保证你去访问的文件很难很难丢失,可以几乎认为就是,采用恰当的措施你存储的网站将永远可以访问。

第三它就说是有个去中间化。我们现在经常要访问一个网站,比如说是访问百度网站,我们是访问百度的中心服务器,但是IPFS可以让我们摆脱这样的中心化的节点。待会我会详细的去介绍IPSS底层的一些具体用到的技术。然后我们将可以看到IPFS是如何来做到去掉中间化的这么一个服务器的。

另外就是说我存储的文件很可靠。那么如果我存储的文件是一个网页,那么显然我们的网站也是非常非常可靠的。

好,IPFS的技术框架。

就像我们的区块链为什么发展这么快?是因为区块链所用的技术都是成熟可靠的。所以说我们的区块链就会发展非常非常快,那么这样的一个基础设施也依然和区块链是类似相通的,它聚合了像DHT分布式哈希表、Bit Torrent这样BT下载的P to P传播技术、Merkle Tree、还有DAG、Git以及SFS这样的分布式文件,也就是说是IPFS是成熟技术的组合。所以说它推出到它占领市场到未来它的发展一定是一个爆发式的。我们可以看到最下面的Libp2p。它有交换数据的功能,它有路由的功能,它还有一些网络层的一些实现,然后中间的话它有命名空间,他有Merkle跟这样存储数据的格式,最上面就是构建它用IPFS构件,我们具体的应用,它可以是一个让用户感觉不到区块链存在的应用,它也可以是一个区块链直接去使用的应用。

好,现在我来讲解一下我们将看到的IPFS是如何具体来实现的?比如说他用到了一个非常重要的技术,叫DHT——Distributed Hash Table分布式哈希表。

我们可以看到这个图,以往的话,我们的数据是存储在一个中心服务器上的。假如我有0到15,这些数,这些节点我需要去访问一个中心化的节点,然后我要这个节点来告诉我,我需要的数据在哪个节点上。那么DHT分布式哈希表的话,它没有一个中心化的服务器,它让每一个节点只维护一部分的路由,比如说我原来这个第八个节点它就存储了从3到8这样的一个数据,3到8的数据都可以由第八个节点来提供它的路由功能,然后我有一个结点六加入进去,它告诉所有的网络说我可以承担一部分的路由功能,那么我可以做3到6,那么八就可以把这部分的搜索的功能的需求让渡给结点六。那么这样有个好处就是当我去加入这个网络的时候,这个网络是平均来分担我们这些查询路由的这些压力的,那么它就可以做到非常非常可靠。而且从理论上来说,这样的网络是很难被封锁的。打个比方来说,我们现在会有某些防火墙,去把某些墙外的节点给屏蔽掉,那么如果是采用这种分布式哈希表来承担这种路由的功能的话,那么这样的你用一个单纯的防火墙去把它给截断是非常非常困难的。

好,然后它还有另外一个组成的非常重要的叫Merkle树。

对区块链非常了解的人可以知道,他是一个非常常用的工具,也是一个非常重要的工具,它用作来做区块的打包。那么这个的话,在IPFS当中他用来做文件的校验。我们可以看到最下面一层,我们假设我的一个大的文件可以切分成四块,那么每一个块我都可以计算出一个哈希来,那就是在倒数第二层的哈希,然后有哈希0-0,哈希0-1,哈希1-0,哈希1-1。然后我们可以把哈希再走个哈希,这样的话就可以最终生成一个Top 哈希,也就是说最上面的。

那么这个数据结构有什么好处?这个数据结构可以让我们来轻松的校验我这个文件是不是出错。我们来想象一下,我要传一个非常重要的文件给你,我如何来保证我给你传播的每一个字节,每一个字母都是正确的呢。我可以这样做,我可以把所有的文件传给你,然后我生成这个Merkle树,然后把这个哈希表也传给你。那么你拿到了我传播的文件之后来进行一次运算,你也重新计算一下这个Merkle树,并且来对比我的Top 哈希,也就是最上面的。如果你的计算结果和我传给你的一样,那么这就说明我传播的文件是正确的;如果不一样的,不一样也很简单,我传给你的是一个表,你可以如果Top哈希不对的话,我可以去对比哈希0和哈希1,也就是说第二行的计算的结果。如果你算出来的哈希0和我一样,那么很好,那最起码保证说我传播的文件给你至少一半是正确的。另外一半你算一下哈希它是不对的,那么又可以这样递归的再去计算。你可能就会算到我哈希1-1和我传给你的是不一样的,那么你就会发现你实际上是L4这一个文件包是传输出错的。那么这样的话,我只需要重新传输最下面的一个L4的文件片段给你,这样的话就极大地节省了我重新传,我不需要重新再传一整个文件给你,我只需要传播它出错的地方。

好,然后他的所有的这些文件的传播使用DAG,这样的一种数据格式来做的。

DAG的话和区块链是有区别的,区块链是把所有的数据变成一个个块,然后把它链接起来。DAG的话,你可以认为这些块不是按照一条链来做的。它是这样分散的,不断的前进的,但是它不会倒过来,所以说它叫一个有向无环图。它有个好处就是说是没有区块的概念,所以也不会像比特币那样有一个区块容量,我们知道最早的比特币是只有1MB,这不是。所以说它限制了它的并发数,最后算出来就是说是每秒就七笔交易。但是我们如果用DAG的话,它没有区块的概念。我的区块可以是非常大的,而且我的区块是可以有同时有多个区块不断地往下面去发展。另外的话由于没有了这样单独的一条链,你可以认为它是一个网一个图,那么它可以并行的去验证交易,只要你的区块当中没有去冲突,那么它就可以去验证交易,理论上它可以做到无限的高并发。

也就是说甚至可以做到我们全中国人每一个人都在同时上传文件,同时在传播文件都是可以做到的。

好,刚才就是我讲了,最重要的三种这样的使用到的技术,那么由他们一起来组合成为了这么一个IPFS。那么我们就可以把它应用到很多很多的场景当中。

比如说第一个,一个开源的去中心化的电商系统。我们知道我们去用某些电商,比如说是淘宝这样的东西。它的网页给我们店面的展示,它可能过一段时间就会换掉,或者说过一段时间就失效了,或者说是它骗了你,又把整个的所有的描述都改过了。那么如果用IPFS来做的话,每一次的你的网页的更新,你每一次的网店的更新,甚至我可以把你的订单全部都放在IPFS当中,那么它就可以做到一个非常可靠可追溯的这样一个电商系统。基于这个我们还可以做浏览器,我们完全可以把http都用IPFS替换掉,那么我们现在的很多浏览器当然目前还不支持,但我可以预见到IPFS将首先以浏览器插件的形式来帮助我们去浏览IPFS上面的网页,然后当他使用的人数推广到一定的时候,我们的浏览器一定会去直接支持原生的IPFS。

然后最后下面的话,就是EOS的话是一个目前非常非常火热的区块链项目,未来的话会有更多的区块链的项目去采用IPFS作为存储的底层。 我们想象一下,我们现在的比特币,我们个人几乎是不可能再去跑一个完整的比特币节点的,因为它的数据量太大了。但如果有了IPFS我们实际上可以是在一个共享的磁盘上面去跑,那么我只需要跑一个对我自己的存储压力,不要那么大的钱包就可以了,因为当我要验证交易的时候,我可以轻易的再去IPFS网络里面去拿到这些数据。

然后IPFS讲的这些,我们会问我们如何来参与它?其实我讲的IPFS它是一个协议,它已经运行了两年多,它已经可以应用到企业的内部运用当中,用到区块链当中大家去使用,但和个人还是相差有一些远的。那么创始人Benet,他有了一个非常好的主意,他推出了叫FileCoin,他给大家一个激励,就是最后面那个。

我们知道比特币之所以推广那么广,是因为它加上了币去激励大家去跑节点去挖矿,去支付。然后呢FileCoin,就是在IPFS上面加了这么一个激励。目前的话我们做过测试,在中国IPFS的节点是非常非常少的,比如说甚至在最大的节点,在北京可能就不到一百个节点。相对中国的这么庞大的IT人员来说,这几乎是可以忽略不计的。为什么?就是因为没有激励,大家都知道有很多技术人员愿意乐意去免费的奉献他们的节点,但是说对于普通的用户来说,他是没有这个动力去做的。那么当我们补上这一环的时候,当我们用FileCoin文件币这样的形式来做的时候,我们可以预见到未来将会有千家万户的这么一些闲置的磁盘加入到IPFS的当中,那么那个时候它一定会成为一个非常广阔的存储空间,并且给我们的应用提供非常良好的基础。

FileCoin它发行了20亿枚,10%是直接ICO的。然后他已经IPO完成了。当它的主网上链的时候,会有70%的文件币作为奖励来激励所有参与的人。

左边的这张图就是它的分配的情况,最上面是70%给所有采用该矿源的挖矿者,或者说是节点的提供者;15%是预留给他的实验室的;10%是给投资者;还有5%是直接给发款的基金会。

右边的话是它的提供的这个图。它也是会根据时间去衰减,那么这样的我们可以看到有70%的,我个人认为这样的激励足以去激励非常非常多的人去参与我们的这个文件币的挖掘。然后他们在挖掘的过程中,他们得到文件币的回报,同时奉献出了他们的带宽,还有他们的硬盘。

FileCoin的话,它不同于挖矿,它不会过分地消耗资源,因为很简单,它的目的就是说是去激励大家把自己的磁盘给贡献出来。所以说它更多的是采用了时空证明,也就是说比如说我存了1G的文件,我存一个月它会有多少的奖励,这是一种非常有意思的证明。因为怎么说呢,如何去验证你存了,而不是说是你欺骗我说你存了,这是一个非常有意思的一些问题。目前来说它可能要用到很多零知识证明的方式来保证你确实存了,而且你是确实存在这么多份。具体的细节,我们可以现在再探讨。

那么如果我去跑一个节点,一个用户,我们如何才能去得到这些激励呢?

两种矿工,一种是存储矿工。也就是说是我直接有很多闲置的磁盘,这些磁盘可能是我买的,有可能是我现有的。另外就是说是如果处在大城市,比如说是北京、上海、深圳,我周围有很多人要下载,那么这个时候就有检索矿工。

其实每一个人都可以,既是存储矿工也可以是检索矿工。然后我们的路由器,接上我们的硬盘。耗的电也不多,我们去奉献我们的硬盘,去存储网站的资料、视频的资料,然后就可以拿到这些文件币了。如果我带宽非常多,我也可以把我的各种文件传播给大家,然后它会根据你提供了非常非常优质的带宽和你的数据也进行奖励。

我可以想象到就是在未来,我们每一个具有这种宽带的用户家里都会有这么一台IPFS的主机,然后他可以做带宽的挖矿。这样的话,他可以显着的降低全球的这种云存储的成本,然后每一个家庭都可以覆盖掉他的电费、网络费。这是一个,也就是说这是一个非常伟大的共享经济,它可以确确实实地使个人企业都受益。

好,这个的话我们还有一个,在我讲解的时候,我希望我们不仅可以了解到软件的知识,我们还可以有一个硬件的知识,这其实是星球区块链应用科技。

我们在链创里面去孵化的一个企业,它给我们带来了一个实验品,也就是说是家庭用的IPFS的主机。那看上去像一个小音箱,大家可以看到它可以有四个磁盘。也就是说这样的一个小机器就可以进入到我们的千家万户,然后我们个人在提供空间的同时,也可以得到区块链的奖励。它还是一个可以硬插拔的,也就是说是根据我们的IPFS的协议,我们可以提供这样的便宜的硬盘。如果它坏了,我可以拔掉重新再插上去。也就是说它用它的技术使我们这些便宜的硬盘,家庭用的硬盘,家庭用的带宽都可以达到企业级的容量,企业级的速度以及企业级的带宽。

好,今天我就介绍到这里。这个样品在结束完之后,大家都可以来看来摸。好,谢谢大家。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。