SCS盒子挖矿_墨客FileStorm共识挖矿机制_区块链技术_区块链神吐槽
区块链技术资源分享
追寻中本聪先生的脚步

SCS盒子挖矿_墨客FileStorm共识挖矿机制

请问献哥,墨客的FileStorm共识,它的创新点或亮点在哪儿?

献哥:FileStorm的创新点,就是对文件的验证。

区块链要验证的是:每个人的区块是一样的。墨客FileStorm是一个文件存储平台,就要验证每个人的文件是一样的。

比如你有100个文件,他也有100个文件,怎么证明你们的文件是一样的?

最原始、最简单的方法,就是把100个文件全验证一遍。但是这样做的话,性能会大大减弱,因为验证100个文件是要花很长时间的。

因此我们就做了一个创新:用一个随机数的方法,随机选取若干个文件,从若干个文件里再随机选取若干个字节,然后来做哈希,最后做验证,这样就可以把性能大大提高。

那就有一个问题,谁来做这个随机数?

献哥:是的,如果随机数不随机的话,你就可以作假了。

我们的创新在于:让上一个出区块的节点来出这个随机数,给下一个出块的节点来做验证。

出的随机数留在区块里,大家同时利用这个随机数来选取文件里面同样的字节,然后来做哈希,最后比较这个哈希值。

如果这个哈希值,得到所有节点中三分之二节点验证的话,我们就可以认为出块的这个节点是拥有所有文件的,它是一个好的节点。

这个和比特币挖矿记账POW是类似的吗?

献哥:不是的,要分开来看。POW是这样的:它是个算术题,大家抢记账权。

我们这个FileStorm共识是不需要抢记账权的,因为大家都有抵押墨客在里面,是POS的一个变种。记账权,也就是出块权,是轮着来的,并且如果出块出错的话,是有惩罚的。

而验证这一块跟比特币是一样的,只不过比特币验证的是交易,一个块上有很多交易;而我们验证的是每个节点上的文件,选取文件里的随机字节来做一个哈希,得到一个根哈希值。

每个节点都要去从它的文件里选取出N个文件、N个字节来,如果是一样的,就说明你这个出块的节点是有这些文件的。

三分之二的节点要验证随机数和哈希值的关系,看起来里面包含了挺多步骤的。

献哥:是挺多步骤的,这个是最核心的部分,也是费事最多的。所以这就是为什么我们要用随机的方法,如果你把100个文件都拿出来验证的话,那要消耗的时间就长了。

如果是随机抽样,那抽样的质量怎么保证?比如100个文件要抽样多少个做验证才ok?

献哥:我们还在测试网上做一些测试,包括随机数的概率,不要老是出小数字,那大数字的那边就算不到了。对,这些都是我们要考虑、要测试的。

很难说多少个才是完美的,我们目前把它做为一个静态的参数值,如果这个参数不好的话,可以在升级的时候对它进行调整。

就像SCS盒子(以下简称盒子)的数量问题,盒子越多,对存储越有利;但是越多的话,共识过程就越慢,花的时间就越多。

献哥:理论上是这样子的:节点越多,性能越低。但另一方面,存储的节点越多,文件被丢失的可能性就越小。

我们做过计算,想要你的文件存下来、不丢失的话,最少要10到15个盒子。

中心化的分布式存储,3个基本上就很安全了;去中心化的分布式存储大概要10到15个。

墨客FileStorm共识挖矿机制

SCS(Smart Contract Server)盒子

盒子接入墨客,是有个先主动选择的过程吗?

献哥:对,接入墨客的时候要选择。比如:

你要选择,加入IPFS的池子,还是POS的池子,还是都加?

你还要选择池子的个数,比如说1到5个IPFS的池子,你选2个;另外选了7个POS的池子。然后,你的盒子就自动加到2个IPFS和7个POS的不同池子里了。

可是第一批盒子没有加IPFS挖矿功能。

献哥:是这样子的,IPFS方案出来的时候,那个盒子的计划已经做完了,所以第一批盒子是没有这个功能的。

但是我们在跟盒子供应商谈,是否可以把IPFS的功能加进去的。实际上加进去以后,就是一个Bonus了。

但是,IPFS加硬盘进去成本就会高。盒子现在就1T,1T也能用,将来存1T的文件,你赚就赚1T的钱。如果新版本可以扩展成4T,或者有可能到8T,就能赚得更多。

不过这个还是跟你的成本有关。现在到底要不要那么多?其实我个人觉得,现在1T就够了,因为可能刚开始的时候,用的人不会很多,你买了那么大容量,如果存不满的话,其实是亏了。你的投资没有得到应有的回报。因此从小容量开始,也是可以的。当然我对市场的了解可能有偏驳,仅供参考哈。

除了这种专业的盒子进行IPFS的挖矿之外,听说那些闲置的电脑也可以挖矿?

献哥:是的,都可以。其实我今天讲了,装一个FileStorm节点,需要这样几个模块:

  • 一个是SCS,即盒子要装的子链节点程序;
  • 一个是IPFS的Daemon,用来管理你的硬盘;
  • 一个是Monkey,用于文件传输。

如果你有一块闲置的硬盘,一台闲置的电脑,你在电脑里装这三个模块,把硬盘接起来,你就可以做一个IPFS的挖矿盒子了。

其实我们做这个盒子啊,就想把它做简单,小白都能用,一插电就能用。把所有的闲置电脑征用起来、

献哥:因为我们不挖矿,不做POW,所以呢,就是很烂的机器也可以用。对,这个是一个优势,每台闲置的电脑都可以装一个SCS。

接手机能用吗?

献哥:能用。不过接手机,你要保证在线,不在线的话,出不了块,是要罚款的。现在手机更新换代很快,你的手机过时了,也可以拿来用。

 

献哥:我不是说存储哈,只是SCS就可以了。能上网就可以吗?对,只要能上网。

耗电吗?感觉用电脑会比较耗电。

献哥:它不怎么耗电,你只要做子链的节点都不耗电的,只有母链的才耗电。

旧电脑的话,不要开显示器,待机状态,能省点。定期看一眼,看它还“活着”吗,哈哈。

现在一个矿场几千台机器,4个人就可以管理。然后他们干嘛呢,就是轮班倒,就是看屏幕,哪个机器状态不好了,走过去重新开机。因为挖矿,时间就是金钱嘛。

盒子一开始进入网络之后选择的池,后面能改吗?

献哥:我不清楚具体是怎么设计的,应该是可以的吧,我觉得应该给你机会去修改。

但是其实,这个盒子的概念是说,你是盒子的Owner,不需要成为盒子的Manager。其实给你两个池子就可以了,一个是POS的池子,一个是IPFS的池子,你甚至都可以不用选。盒子在池子里,你就可以赚钱了,至于盒子被哪个子链选中,对你来说是无所谓的。

你要改的可能就是一个设置:加入几条子链。但其实这个你也可以不设置,By default(缺省值)就是让你用满了,这样赚钱赚得最多。比如盒子能做10个子链,就给你缺省值设成10就好了。你肯定不会说,我舍不得我的盒子,想多用几年,改成5吧。这不太可能哈。

另外我们也遇到一些场景,特定的盒子群都是归它这条链的,能不能实现?

献哥:这个是可以的,比如你就是想用自己的盒子来跑你的链,可以把缺省的设置给改了,然后就加到你自己的链里面。ID注册好后,这条链就肯定是选你的那些盒子,这个是可以做到的。

公链的话,是不知道你的盒子在给哪条子链服务;但私链的话,就能知道哪些盒子在链里面。

盒子可以不断升级新功能吗?

献哥:可以升级的,他们还在设计管理界面。到时候,你自己也可以下载一个软件,通过电脑连到你的盒子上,升级一个新版本,或者说你自己不想管,你托管都可以。然后托管公司,在我们有升级的时候,就给你的盒子升级一下,加入更多的功能。

大家可以做托管这个业务吗?

献哥:可以啊,所谓“生态”,就是说,这些业务我们都希望不要墨客的主创团队来做,这个由生态参与者来做是最好的。

墨客团队的责任已经够大了,要做好这条链。

献哥:对,我们的精力还是主要集中在底层建设和维护上。大家一起来参与生态建设,这样才能做大做好!

墨客区块链科技公司(美国)区块链架构师. 傅献农

大萌独家:墨客区块链科技公司(美国)区块链架构师. 傅献农『专访实录』第三部分

分享到:更多 ()
区块链神吐槽

区块链资源分享

韭菜的自我进化