“Crust 实现了去中心化存储的激励层协议,适配包括 IPFS 在内的多种存储层协议,并对应用层提供支持。同时 Crust 的架构也有能力对去中心化计算层提供支持,构建分布式云生态。”上周六晚,分布式云 Crust 以及波卡第一中文社区 PolkaWorld 联合举办了一场 「Crust——Web3 时代的分布式云」为主题的 Crust Show 专访,Crust CTO 子琨与主持人 PolkaWorld 联合发起人庞晓杰在线畅聊波卡生态上的分布式云以及 Crust 到底在做什么。在和大家回顾专访内容前,先解释下 Crust 团队的3 Buff: Crust 团队在今年短时间内获得 Substrate Builders Program 、 Web3 Foundation Grant,并且近期入选了由万向区块链实验室、新链空间、Parity、Web3.0 基金会合作发起的“ Web3.0 Bootcamp(Web3.0 训练营)” 首期招募。
晓杰:首先请子琨给我们解释一下什么是 Web3 下的分布式云,可以先给我们解释一下这个概念。
子琨:云是承载应用的方式,在典型的 Web3 下的应用是 Dapp,比如 Web3 的先驱者以太坊,也都是要通过 Web3.js 和 Dapp 来跟链上数据进行交互。链上数据被很好的去中心化,数据被用户完全掌控,价值回归用户。但链上数据的体量比较小,现实中更多场景,有着更大体量的数据需要被存储和处理,而这些场景目前没有办法通过 Dapp 做到。Amazon CTO Werner Vogels 曾经在 AWS re:Invent 大会上提到: 如果把云计算理解成一个执行环境,那么,在这个环境里,函数(即业务逻辑的载体)+数据(即跟业务相关的输入与输出)就是应用的核心。Crust 去中心化云的目的,就是通过区块链技术激励节点对数据提供去中心化的存储和计算。最终体现出来的,就是无处不在的去中心化的数据存储和计算能力。晓杰:那 Crust 和 IPFS 有什么样的联系和区别么?
子琨:Crust 和 IPFS 的关系是激励层和存储层的关系,就像是 Filecoin 和 IPFS 的关系一样。Filecoin 协议群通过激励来鼓励网络中的节点提供存储能力,而 IPFS 恰好可以提供这种存储能力。下面我会主要对比一下 Filecoin 和 Crust 在去中心化存储激励层的联系和区别。现阶段,去中心化存储的激励层有两个关键性的问题:证明和激励。证明主要指的是,如何将链下的存储状态正确的反映在链上,而激励就是对存储节点的激励方案,也就是节点获取奖励的方式。Crust 和 Filecoin 解决这两个问题所使用的方法以及技术路径有着很大的不同。在证明方面,Filecoin 的复制证明(PoR)和时空证明(PoSt)的实现是大家目前最为期待的。在 Filecoin 的技术路径中,精巧的零知识证明和 VDF 算法都是非常新颖的技术。但从 Filecoin 的测试网数据来看,大量复杂的证明算法带来了大量的计算开销,比如存储节点需要128G的内存并配以 GPU 来进行证明的计算等。相比较而言,Crust 通过引入 TEE 技术而设计了有意义工作量证明(MPoW)。MPoW 的证明过程可以非常简单和高效,而很多个人电脑都是支持 TEE 的。也就是说,解决同样的证明问题,Crust 的成本和门槛都更低,这是解决证明的思路不同。再来谈激励。Filecoin 和 Crust 的节点激励前期主要都来源于区块奖励,但不同的是,Filecoin 的区块奖励是归属给出块节点,而节点出块概率则是与节点的工作量成正比,其本质是多劳多得的 PoW Base 模型。而 Crust 的 GPoS 机制,出块奖励跟每个节点的抵押量成正比,而每个节点的抵押量上限,则受到节点提供存储量的限制。所以 GPoS 的本质是 PoS Base 的。这也是参考了 Polkadot 的 NPoS 模型进行的创新和设计。同时,由于节点可接受的抵押额度受到存储量的限制,GPoS 可以很好的规避 PoS 的中心化问题。晓杰:那我总结一下,两个最大的区别,一个是在证明上面,更简单和低成本,一个是激励上采用的机制更公平。前面提到 Crust 很快拿到了 Web 3 基金会的 Grant,那未来 Crust 对 Substrate 和波卡生态有什么样的贡献?
子琨:嗯,先来谈 Substrate 部分。总的来讲,Crust 使用并推广了 Substrate。从今年2月测试网 Rocky Mountain 上线到现在,测试网已经迭代了3个版本,代码库也有6个版本的发布。Substrate 优雅的代码结构大大加速了 Crust 的开发效率,在复杂功能迭代方面,Substrate 积木化的功能设计也使得 Crust 能进行快速试错和版本迭代。当然,作为 Substrate2.0 时代才加入的 Crust,对 Substrate 社区也有少许的贡献,哈哈。包括了积极参与开发者社区,反馈一些 issue,也积极回答社区中 New Substrater 们和我们遇到的同样的问题。总的来讲,在 Substrate 社区,Crust 期待与 Substrate 社区一起成长!晓杰:Substrate 生态越来越大了,那在波卡的接入上你们未来有什么打算吗?
子琨:波卡对于 Web3 生态是有完整规划的,在Web3基金会官网就可以看到一个协议栈架构图。在这个架构中,Crust 提供了一个去中心化存储网络,满足了波卡生态存储层协议的需求。另外,在这个生态内,因为去中心化存储是个共性需求,所有需要存储的项目比如,如 Phala 团队的 W3A,也同样可以基于 Crust。同时,Crust 的存储市场鼓励消费者使用多币种购买存储资源,因此,有可能的话,兼容一些稳定币项目会对用户更加友好。最后,在波卡生态外,Crust 还可以引入 IPFS 等社区的力量。晓杰:那意思是都可以做平行链,大家也可以互联,并不一定是竞争的关系么?
子琨:嗯,就像云计算厂商,亚马逊,微软,阿里,腾讯。只有 Player 多了,这个赛道才能越来越被大家认可。晓杰:我记得 Gavin 老大之前有说过会桥接 Filecoin 进来,对这个你们有什么看法?
子琨:其实去中心化存储的生态目前才刚开始发展,Filecoin 作为行业的老大,我们是期待他发展的,我觉得去中心化存储的生态会出现百花齐放的状态。晓杰;刚刚你提到 Crust 使用并推广了Substrate,想多一句,你觉得 Substrate 对Crust 最大的帮助是什么?或者说除了加快了开发的时间 ,Substrate 的什么模块对 Crust 的帮助最大?
子琨:Substrate 给 Crust 的帮助就很大了,其实我们项目从去年8月 Idea 就开始成型,当时选择的实现方案是 Tendermint 和以太坊。但是开发上面进度一直不佳,直到转到 Substrate 之后,大大加速了我们的实现速度。
除了加快了开发的时间,毋庸置疑是 Substrate 的 Staking 模块,不管是对我们 GPoS+MPoW 协议的成型,还是代码的实现,Staking 都让我们学到了很多。当然,我们也参考了 Session+Staking 的很多写法,这让我们的实现更加优雅,大家可以去看看我们代码呀,插播广告:https://github.com/crustio/。晓杰:那下一个问题吧,这个问题延展了很多。Crust 目前的进展怎么样了?我只知道你们拿到了 Web3 Foundation Grant。
子琨:从去年8月启动 Crust 项目,Crust 在今年三月上线了开发测试网 Rocky 并开源了 Crust,Crust TEE 以及 Crust Client 等多个 Repo,核心协议层代码贡献已超过 8W 行。目前处于 Devnet 内部测试网,大概在6月下旬会上正式的测试网,like Kusama。Crust 先后获得 Substrate Builders Program 和 Web3 Foundation Grant,也首批入选了 Web3.0 Bootcamp(Web3.0 训练营)。
子琨:好的。我们项目的创始人 Bao 是一位资本市场资深的投资人,他早期作为研究员对科技、信息类行业有比较深的研究。他在创业之前作为投资负责人管理多个基金产品。过去几年他个人投资了多个区块链项目,对这个行业很热爱而且也很有经验。联合创始人 Lie 在 IT 行业有14年经验,曾在微软和思科担任开发主管。后来连续创业,以合伙人方式自主创业过一家科技公司。其主要产品利用区块链和分布式存储技术来跟踪教育资源的所有权和使用情况。我本人毕业于浙江大学计算机专业,曾在微软工作,主要负责的是基于分布式计算和区块链的项目,在云计算和区块链行业比较有经验。Crust 是我接触的第一个区块链项目,之前在浙大实验室主要做分布式系统以及一致性相关的研究,在微软从事 Azure K8S 相关的开发工作。算是有很多区块链相关的理论知识。我带领的核心技术开发团队主要是一群很有激情的年轻人,他们是分布存储、信息安全和数据安全的专家,大多来自思科、微软等企业,毕业于清华大学、上海交通大学、浙江大学等学校。技术团队大概10人左右,我们团队算是很小很小了,目前也在热烈招聘中,欢迎大家来呀。晓杰:团队背景还是很厉害的,难怪这么短时间内搞出来,最小 MVP 团队。你们为啥这么快拿到 Grant ?我比较好奇是因为当时已经开发的比较成熟了吗?
子琨:我们采用的快速迭代,会把复杂的功能拆分的最小,所以试错成本很低,这加速了我们开发的过程。当然,这也得力于 Substrate 的帮助,我们每个功能也坚持 Run Test Benchmark,用数据说话,是我们项目做事的风格。所以在 Grants 的面试中,大概是比较坚实的数据支撑给了面试官不错的印象。晓杰:很棒了,我们拿 Community Grant 时候,也是一堆数据。web3 基金会很看重这个。我这边的最后一个问题,刚刚也聊到一些,我们再整体说下 Crust今年的计划吧。
从技术上来讲,目前 Crust 开发进度比较顺利,计划在今年六月上线公开测试网 Maxwell,预计年末会上线主网 Olympus。并行的,我们将开发一个云存储应用——Crust Pan。功能上,大家可以想象成一个去中心化的 iCloud,但是性能上更快,更便宜也更安全。底层会是基于 Crust Network 的第一个官方应用。从生态角度,万众瞩目的波卡主网即将上线,接入波卡主网也是 Crust 今年的目标之一。另一个目标是,为 Substrate-lfs(Substrate Large File Storage)提供存储能力。从社区层面,在今年下半年我们会筹划一些社区活动,会有线上的 Crust Show 和 Crust 小课堂。我们还会有针对成为存储节点和关注我们的用户的 Workshop,我们也会将项目的代币以合理的方式投放给项目的参与者,可能会采用 Lockdrop、Worklock 等方式对存储节点、技术社区和波卡生态的用户投放。欢迎大家积极关注!
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
在专访活动进行到自由问答环节中,由于社区成员提问比较多,我们挑选了一些大家较为关心的问题,整理出来:
1. 天天都是DerrickLee: 我比较关心这种文件存储读取速度,还有安全性。这些直接关系到这个项目能否落地。子琨:这个问题很好,存储速度和安全性本身是矛盾的,因为一旦要保证用户数据安全必然进行额外的运算,这也是我们一直在思考和改进的,目前的进展是比较顺利,我们利用 TEE 的很多特性让速度和安全共存。我们目前的测试数据,1G 的文件进出 Crust Network 大概只需要额外花销 3s。类似 Filecoin 对 IPFS 数据的 Seal(防止女巫攻击和生成攻击),Crust 用了 TEE 去 Seal 数据。2. 庞晓杰: 平行链你们准备怎么做?平行链需要抵押很多的 Dot,还是先从平行线程做起?子琨:嗯,从平行线成做起,我们多半会先接入 Kusama 网络,Kusama 也会有我们的影子。3. 木兰北风:截止目前,对 Crust 还有什么改进?
子琨:Crust 能够改进的地方很多,主要包括 GPoS,MPoW,还有存储和检索市场。当然 Substrate 本身提供的 Forkless Upgrade 允许我们在主网上线后也能持续优化我们的链上功能。
4. 老白@168Node:Crust 目前的竞争对手有哪些?
子琨:现在市场还在开发阶段,谈不上竞争,是互补的生态。任何一方的发展都能推动去中心化存储的发展。
5. Lewin: 怎么去定义 1GB 需要额外 3s 呢?分布式存储应该分布到 N 个节点上存储呀?如果100个并行,用户体验就没有 3s 那么快?子琨:1GB 文件的确可被分散存储,但同时额外的 3s 开销也会被分散到文件块,比如100个 File Block 传到100个节点,那么每个节点每个文件块额外的的开销就是3/100,所以总开销 3s 并不会由于分散存储而变化。5. Lewin: 1G 文件存一年大概成本多少?子琨:成本和存储节点自身的定价有关,我们会开放给市场做决定,但是在早期有出块补贴的存储节点,用户存数据是不收费的。