00:00
接下来给大家简单的介绍一下IPFS,那大家会发现之前我们一直在说IPFSIPFS这个东西到底是个什么东西呢?IPFS全称它叫做这里啊,Interplaary file system,它中文翻译叫星际文件系统啊,那关于这个星际无星际这个我们就不说了,但是大家从这个命名上可以看得出来,它是一一一整套文件系统,对吧?File system,所以他要做的是一个什么样的东西呢?它其实要做的就是一个分布式的文件存储,分布式的文件系统,这就是IPFS它的初衷和这个想要做的一个东西。呃,那他的目的其实就是说想要用一个同一个文件系统,然后连接我们所有的电脑,呃,那这个大家其实并不是很陌生啊,我们之前其实已经有类似的这样的文件存储的方式了,比如大家习惯就是肯定每个人都用过的,呃,像这个迅雷电驴,其实他本身他们这些都是所谓的p two p网络对吧?他们的文件存储其实就是用类似于IPFS这样的一种方式来存储的,所之前大家可能也听说过,呃,迅雷曾经也要想想去,就是发行自己的那个对数字货币对吧,然后还,但是后来被暗下去了,所以他不敢弄这个事情了,就是这个相对来讲在国内还是这个环境,大家考虑这个政治风险会比较政策性的风险会比较多一点,所以迅雷它传统领域已经做得很好,他本来想往这边转,它其实是很容易朝这边转的。但是一被打压,那就。
01:45
这个这个就可能就不能太多的去朝这边发展了,那现在这方面发展的最好的就是IPFS,呃,那像这个IPFS,他是想要他现在的目的想要做什么呢?他想要做成一个就是通用的永久性的一个分享文件的协议。
02:06
这个协议就是一个去中心化存储文件的协议,那现在目前为止它这个协议还不完善啊,等一下大家会看到,就是我们去访问它的一些文件的时候,用的还是HTP的HTTP的方式,按照他的愿景的话,到明年可能再再往后这个半年一年的时间,他可能就要完善这个IPFS协议之后访问的时候,可能就是直接用IPFS协议来做这个文件的访问了啊,所以呃,这是整个IPFS它的一个一个愿景,或者说一个一个想法,那现在它其实在整个处理就是对于我们在区块链上做分布式文件存储这一块。给大家就是提供了更多的可能性,然后很多人在想构建自己的DF项目的时候呢,也会第一反应就会想到要去用类似于IPFS这样的分布式存储,呃,当然之前我们也跟大家说过,以太坊上本身也是支持一个分布式存储文件存储的一个项目,那就是叫SWM,对吧?呃,当然就是说它还不是特别的完善,现在可能用的人也不是特别的多,那相对来讲IPFS可能做的更好一点,它就是这方面发力更充分一些。呃,那我们来先看一下啊,就是为什么要有IPFS这么一个东西呢?那又是老生常谈了,我们本来自己的文件都会存在哪里呢?那要不就存在自己的电脑里面,硬盘里面,要不大家可以做一个便携性的存储,对吧?放在这个U盘里边,移动硬盘里边,那对于我们个人来说,自己的存储空间永远都是有限的。
03:48
那假如说我们要要想要更大的存储空间怎么办呢?现在给大家的解决方案就是,那就是云存储,对吧?很多这个提供商,阿里云,腾讯云都有类似于存储方面的云服务,大家可以把自己的文件直接提,就是传,传送到这个云服务器上面去做存存储,那包括百度云,大家可能很多很多同学也都在用,对吧?呃,存到自己的网盘上面,那这就相当于是一个云存储的方式,但是这个过程当中,它。
04:22
我们现在用当然用的都很好,对吧,没什么问题,但这个过程当中是不是也会有一些大家觉得不爽,或者遇到了一些问题呢?比如说之前,呃,不知道大家经历过没有,我之前是经历过,就是新浪微博是呃,就是新浪本身是有一个微盘的,对吧?不知道有大家用过没有,现在也在对吧?微盘曾经一度上面资源是挺丰富的,就是我我在在早些时候其实找一些资料还还直接会到微盘上面去找,但是后来可能涉及到就是各方面,当然也有这个知识产权方面的这些要求啊,然后另外一方面就是政策性的要求,就是你这些是不是违规啊,你是不是传了一些乱七八糟的东西啊,是不是有黄赌毒的东西啊,是不是有这种这个反党反社会的东西啊,所以就是大家会发现上面大量的文件都被删除了,有很多东西都被,都被,就是直接。
05:19
新浪那边直接就删掉了,因为有政策性的风险嘛,但这些东西大家就会发现这个很不爽啊,我本来自己收集到的资料,然后别的也没有做备份,我以为这个东西可靠,放上去之后人家说删就给你删了,这个就好,就真的是很不爽,对吧,就是自己的很多重要,如果要是不重要的话,那也罢了,很多重要资料如果放在上面的话,出现这种状况,那是非常郁闷的了,呃,另外就是说,就是即使他不给你删,那本身它其实也是有存储成本的,它也有风险的,对吧?那假如说它那边的服务器,大家文件都存在百度云上,存在这个网盘上面,一旦他那边服务器宕机,一旦不提供服务了,那我们,呃,即使他之后还会恢复,那我们现在如果急着要用它就拿不出来,对吧,这是很现实的问题,就是中心化的节点都有这样的问题,就是单点故障嘛,所以大家就会想到,那在这个虚。
06:19
块链的世界里面,你既然可以有世界化,就是世界计算机,那当然就可以有世界硬盘,就可以有世界存储,对吧?所以那以太坊本身它是世界计算机,它上面的存储空间是有限的,比较宝贵的,不可能存太多的东西,要耗费GA,但是有些人就想到,那我是不是可以单独去做这样的一个世界硬盘呢?一个世界网盘呢?IPFS就是做了这样一个东西,所以我们的云存储这样的服务提供商就不再是这种中心化的提供商了,中心化的服务器,中心化的公司,而是在整个我们p p two p网络里边的每一台计算机,大家每个人都是这个网络里边的一个节点,所有的文件都可以在大家的计算机上找到一个副本啊,这就有点像,呃,整个区块链系统不也是类似的一个架构吗?对吧?所有的账本,所有的交易记录都可以在每台计算机上找到,找到一个副本。所以在这个状态下,大就会发现我们可以像运行一个以太坊节点一样,运行一个IPFS节点,然后呢,我们就加入到IPFS的这个PP网络里面去,这样我们就可以跟别人一起共享我们的文件,也可以随时的拿到别人共享给我们的文件,那这个文件呢,它就会在节点各种。
07:48
复制对吧?呃,那如果说我们每个人都可以保留他的一份副本的话,理论上这个文件就是不可删除的啊,就像我们之前所说的这个以太坊上的这个交易,如果大家加一个附言写在里边的话,让每个全节点都把这个存在自己的记录里边,理论上它就是不可删除,不可删除的,除非你把所有的。
08:12
计算机都砸了,或者说把这个世界范围内的网络都给断了,对吧?所以在这种模式下,我们基本上就不不会出现无法访问到一个文件的状况了,假如说有足够多的人加入进来的话,我们就总能访问到我们想要的那个文件,这个可用性就得到了极大的提高。另外就是还有一个就是防审查,就是所谓的没有人能够想删就给删掉,对吧?呃,这当然这一点就是在在国内有点有点就是政治敏感,所以说呃,在国内这一方面不太容易去做,那IPFS既然是一个国外的项目嘛,所以他这方面还是做的很好的,呃,那当然了,就是大家可能也听说过,就是IPFS也准备有自己的这个代币激励对吧,Ton激励他的,他的代币叫fair Co。
09:07
那这个现在可能还没有完整的完善的这个实现起来,尽管是已经发行了,那这个将会什么样的一个效果呢?简单说就是你如果要是说这就有点像大家平常的那种积分奖励对吧,或者什么呃,在一些呃,像像这个CSDN啊,或者什么样的这些网站上,你去别人去下你的共享的一个文章,就要给你支付金币对吧,或者耗费积分什么的,就有点像这个,所以说IPFS就用fire这种来进行奖励和激励。那呃,之后的话,有可能就是说你上传的文件越多,你就会得到更多的别人下载你的文件越多,你就会得到更多的反对,所以就是这样的一个激励机制,这就把整个这个生态就建立起来了。嗯,大家其实如果要是之前用过迅雷的话,可能大家感觉还不不很深,呃,之前如果我不知道大家经历过没有啊,就像我的这个年纪,之前在上就大学的时候,在学校里边都经历过妹子的时代,不知道大家熟悉妹子吧。
10:18
可能可能可能大家没没经历过啊,就妹子是当时在校园网里边,就类似于一个搭建p twob下载的一个一个软件,所以呃,当时就是妹子上,就相当于大家随便什么东西都传,当然就也有这个,呃,政治上不太好的东西对吧,也有这个所谓的黄赌毒对社会影响不好的东西,就是什么东西都有,呃,就是可可能这个现在这个学校里边都没有,就是这个妹子可能都被封了,或者说大家都不用了,对吧,我我当时上学的时候还是印象很深的,就是妹子,妹子大家认为就是你想下什么东西的时候,那就是一个神器,就是相当于大家在这个一个局域网里边搭建了一个p two p网络,然后只要是有人上传,那么就是大家只要是连接的有节点对吧,那这个东西就不可不可删除,你就总能下载到,呃,当然了,它是因为不是广域网,不是我们的公网啊,所以呃,局域网里。
11:19
但他其实说说把它封掉还是能封掉,当然就没有太广的这种应用,大家比较熟悉的p two p网络的这种文件下载,其实更多的就是迅雷和电驴了,对吧?好,那么前面是一些简单的介绍啊,大家看一下这个架构,这里是给的就是像这个AWS啊,就是像像像这个,呃,就是亚马逊啊什么的,它的这些云存储是什么样的架构呢?那其实就是说就是中心化的服务器,对吧?然后一堆服务器存在这里,我们所有人想要访问的时候,你全要去连到他的服务器上,比如说亚马逊的S3啊什么的这些云存储服务器,而IPFS的架构是什么呢?那就是没有一个中心化的东西,所有我们真实的用户。
12:10
每个人就是一个节点,然后大家构成这样的网络文件,就在我们所有这些人相互之间传递复制,那每个人都可以拥有这样的一份复制的一个口碑,对吧?那所以理论上来讲,他的健壮性是更好的,就不会有这样的一个单点故障,你一个人如果要是当机了,没关系,大家那里都有副本嘛。好,那接下来我们就来说一下实际的这个安装,安装这个其实还是比较简单的啊,就是直接在这个就是大家可以看到Dis的IPFS.io下面可以下载到这个IPFS的go实现版本,呃,这里大家注意一下,就是这个下载是需要去科学上网的啊呃,而且就是说这个我试过,就是必须要必须要用全局模式,就如果是PC的话,可能默认不是走那个走走代理通道的,所以呃啊,我这里还是不要不要再好吧。
13:10
那就已经跳过来,大家看一下,就是在这里可以去download的这个GOIPFS,大家可以选择对应的版本,然后选择自己跟自己系统相关的这些东西,对吧?呃,自己的这个CPU是什么样的架构,386还是MMDAMD64大自己去选择就可以,呃,这里我跟大家分享一个是我本身,大家会看到我这里是一个。WIN10系统的Linux虚拟机对吧?在这个虚拟机里边,我自己的测试会发现下载这个IPFS的Linux版本会有问题,就是跑起来的时候,就是过一段时间,就一开始的时候都是正常的,但是运行一段时间之后,呃,这个可能就是一方面FPFS实现的可能不是兼容性不是特别好,另外一方面可能本身WIN10的这个Liz系统也是有bug,就是运行一段时间之后就会出现这种就是文件系统的错乱,然后就会蓝屏,那所以大家可能如果要是用的这个至少是windowss系统的话,那大家可能就像我一样,可能就不要直接装在这个子系统里面跑这个Linux版本了,我现在的状况是什么呢?就下载一个Windows版本,直接在这个command里面去跑,那也是可以的,对吧,大家知道这个其实就是起一个相当于就是起一个节点服务嘛,起一个节点服务器而已,所以这个其实没有太大的差别。所以大家Linux或者。
14:40
版本都可以,这个就是大家看自己各自的需求啊,我这就是趟过的坑跟大家分享一下,呃,然后呢,就是我这里给大家看一下啊。我的我这就是直接开命令提示符了,对吧。
15:00
呃,我的这个应该是装在了。我可能先得先得找一下啊。呃,应该是装在了block下边啊,这个Windows就有点有点不太舒服了,敲的就有点好,放到这个下面好,那么大家可以看到就是大家把这个下载完解压出来之后呢,它里边其实就这么几个文件,就是有一个log文件,然后有一个install点文件,然后最主要的其实就是这个文件IPFS.exe对吧?啊,当然这是在Windows下面是exe,在ins下面肯定就不是exe了,对吧,就直接是二进制的可执行文件,呃,所以主要来讲就是就是这么一个东西,所以大家看到非常小,非常简单。那它真的能有那么大的作用吗?我们可以看看它起来之后是什么样子啊,大家看就是简单来讲,你把它下载下来之后。
16:06
用这个IP FS in你的命令就可以把它做初始化。然后呢,大家可以去配置一下config杠杠Jason去把我们这里这个access controllo的这个域origin定义成芯,就是所有都可以访问对吧,把这个打开,然后就是很简单,这个命令,这个IPFS,它的这个守护进程打开就可以了,那大家如果要是在这个Windows里边的话,那就IPFSEXE对吧,然后把它打开,诶敲错了是吧。呃,点斜杠应该不需要啊,我看一下敲错了是吧?Dae这个守护进程,这个就容易容易把这个单词拼错啊,平常毕竟还是不算特别大家特别熟悉的单词,好这边大家就会看到我这里就已经启动了一个守护进程,非常简单对吧?大家会看到这里启动的有哪些这个端口呢?首先4001,大家会发现它其实底层也是一个SWM,就是类似于以太坊的一个协议,对吧,用的是S的这个协议,然后4001这个端口,这就是在屏的监听,然后做这个节点发现,然后本地的这个服务器,它起的是什么,什么端口呢?大家看一下。
17:31
是有一个5001端口,5001端口它主要是做什么的,是我们有一个比较非常舒服的,比较好的一个就是web UI界面等一下给大家看一下,然后另外我们平常如果要用到的,可能它默认的启动就是这个8080端口,这个起来之后呢,大家上传文件之后,从这里就可以直接访问了。我们先看一下这个5001,这个起来之后是是个什么样go host的,对吧?哎,8080就不要访问了,敲一个这个web UI,直接敲5001可能是没有页面的啊。
18:06
呃,大家看到就是这样的一个web UI,本地提起来之后,本地就有一个web服务器,然后我们可以直接在这里访问到,大家可以看到这是我当前本地的节点信息,比如说这个我的ID是什么?然后下面啊,Location是unknown对吧,然后它有这个version political version,现在的IPFS只是0.1.0版本,所以还没有正式,不算是一个正式发布对吧?呃,1.0才算正式发布,那这里有有这个我的public key,所以大家会发现就是我在上传文件的时候,肯定就会就是拿这个来做,来做签名,对不对,就可以做这样的事情,呃,然后下面大家可以看到就是下面的这个addresses啊,就是周围的这些地址,我们看一下这个connection吧,这个还稍微有点意思。呃,大家可以看到这就是周围能够连接到的节点,大家能看到对吧?有IP都是4001端口,就拿这个端口来做节点,发现上面是他们的那个节点的ID,对吧?大家可以看到这个地球上面其实就代表了我们现在就是正在用这个IPFS的节点,对不对啊,大家可以看到北京这里插了一个杠,应该就是我了,是吧?大家看到这个鸡脖子这里对不对?对,你看这个整个中国其实就没几个节点啊,就是看起来这这里可能是上海或者杭州那个地方对吧?这里应该是广州那边,呃,这里的话可能是西安或者是哪里,是不是看起来像西安对吧?这中国可能就这么几个节点,然后周围可以看到这个韩国这边还是有节点的,对吧?呃,然后这个澳洲这里也有几个节点。
19:48
然后更多的那肯定就是欧洲了,对吧,大家看到这个欧洲这边节点就比较多,那另外还有就是这个北美这边,这边是美美国对不对,美国加拿大这边节点比较多啊,所以大家可以看到就是现在还是在一个发展的一个一个时期,对吧,就是没有太多人直接去用,但是现在至少在区块链。
20:12
整个的这个领域大家会发现它应该是基础设施里边比较好用的一个东西,那它到底怎么好用呢?那之后我们大家就是自己来用一下就就知道了,好,这是它的这个web UI,那下面大家可以看到,就是还可以看到本地的这个conig信息,这个con会在哪呢?这个conig就在自己的啊,默认的这个用户目录下面有一个点IPFS隐藏文件夹,然后里边有一个con文件,大家可以直接看到的啊,这个其实就是在本地读取出来这个文件,那大家可以看到这里第一个,这是不是就是我前面做了那个全局conig之后的这个信息,然后下边还有一个重要的就是大家这个getway对吧,这个大家如果之后我们如果要起那个NTM,呃,De serve的时候,如果那个大家想要起8080,这个大家就改一下,对吧,那如果这里要是起了8080的话,到时候就把那个改一下,所以这两个不要冲突了,先给大家提一句。
21:12
而下面大家就会发现它跟以太坊一样,也有这个bootstrap,就是有这个启动连接的节点对不对,节点发现的时候,启动的时候去连接好,这就是简单来讲就是就是这些东西啊,当然这里更重要的一个就是大家可以看当前自己上传的一些文件对不对,自己如如果已经有上传文件的话,是可以在这里去看的啊。这是比较舒服的一个图形化界面,这个别人怎么下载的啊,别人怎么下载,呃,下载的话,你其实就可以直接等一下这里就就在这里看。大家可以看在这里,我是可以直接去敲接命令的。那大家会会看到这个命令其实就是对,就跟Linux命令一样,对吧,直接cat这个文件,我就相当于把这个文件直接拿下来了,对不对,对吧,它的内容就直接都都已经拿下来了,所以我们这里去大家去看一下这个啊,这是启动的一个一个守护进程,那我们还是再起再切一个对吧,然后去演示一下,我当时是在block chain对吧。
22:24
然后是IPFS,呃,Windows里边得是这个反斜杠对吧?好,我们在这里的话,大家会看到我把这个直接copy一下啊,大家会看到我这个启动之后直接访问这个。大家看这个是一个read me对吧。大家可以想象到这是不是应该是IPFS官方的一个东西啊,这就是我们启动之后访问对吧?IP FS cat直接访问这个,诶,大家可以看到,诶,就直接hello and welcome to IP FS对吧?所以这其实就是IPFS远程节点上的一个read密文件,那我们如果要能把这个文件拿下来的话,就说明我们的这个IPFS已经加入到当前的这个p two p网络里面去了,对吧?好,呃,那么接下来大家可以看一下,就是我怎么样去上传一些文件呢?比如说我在某一个文件夹下面。
23:29
我记得我应该是有一些文件的啊。哦,这里picture不是这个。Project应该意思是好,Files,这里边我下载了一些这个,比方说一些图片啊,或者一些这个iPhone的这个简介啊,大家可以看到,我可以把这个作为一个文件传上去,对吧。那我们怎么传呢?其实也很简单,IPFS大大家这一部分就是在在这里啊,这个读写文件对吧,大家可以看到,我们可以直接用IPFS启动之后呢,A这个files,下边我们来找一个IPHONE6吧。
24:17
我们直接把它艾特进去,大家可以看到这个就直接艾特进去了,它这个没有这个上传的进度是为什么呢?是因为就之前我已经传过了,其实啊,所以说就会有这样的一个状态。大家会看到这里就有一个added,然后后边有一串这个东西,这个东西是什么呢?就是它的一个哈希对吧?对,大家应该就想到了,我们访问的时候,它就是这个文件的哈希,所以我们是不是根据这个哈希IPFS把它定位到不同的存储空间去,对吧?然后我们访问的时候用这个哈希就可以直接访问了,那我们访问的时候怎么访问呢?给大家看一眼,比方说我们可以直接IPFS。
25:01
诶,这里卡住了啊。先取消掉,比方说我可以直接我们本地不是起的是8080吗?对吧,我直接可以8080后边IPFS,然后把我们刚才那个哈希复制过来,这是我访问本地对吧,也看到了我这个文件。或者大家你要是不想访问本地的这个节点的话,我们可以访问远程的节点,那就是IPFS。点IO,然后IP。FS,同样的,我们用这个方式去访问,然后我们看看这个网络怎么样,能不能打开,哎,没问题,所以大家看到对吧,这这不是访问的,大家在自己的浏览器上也可以访问这个对不对,只要我把这个哈希给到大家,大家其实就可以直接访问到我上传的这个iPhone的照片了。
26:02
啊,所以这就是,这就是IPFS,呃,用起来其实很简单对不对,就就这样就可以,那大家可以想象到我们到时候要在自己的这个区块链上,如果我们上传了文件之后,是不是这个图片我们可以就直接塞到这个IPS上去了,那我们区块链上要存的是什么呢?对,直接存这个哈希是不是就完了?对,就是我们的那个,比方说image link,对吧,就直接存这个就完了,现在大家应该就对这个是有一些了解了,对吧?啊,当然这一部分其实很简单啊,就是因为我们用到的很简单,我们不需要了解ipf IP FS的底层的一些东西,我们只需要应用的话,了解到这些就够了,对吧?当然后面就还有一些就是它的接口调用,它有JS接口,到时候我们去调用它就可以。
我来说两句