Crust 实现了去中心化存储的激励层协议,适配包括 IPFS 在内的多种存储层协议,并对应用层提供支持。同时 Crust 的架构也有能力对去中心化计算层提供支持,构建分布式云生态。
Crust 是一个激励去中心化云服务的应用型公链,现阶段 Crust 会先实现一个去中心化存储层,之后会升级到支持去中心化的计算层。
Crust 到底是什么呢?简单说,Crust 目前主要致力于解决三个层次化、模块化的问题,可以提炼为三个关键字:报告、打包和服务。
报告,指的是统计节点的存储工作量并报告到链上去。为了解决节点工作量的报告问题,Crust 基于 TEE 可信执行环境技术,提出了 MPoW,(Meaningful Proof of Work)中文叫有意义的工作量证明机制。
Crust 存储节点会周期的向全网报告“我”提供了多少存储空间、“我”存了哪些用户文件等信息,在 MPOW 机制帮助下,报告中的工作量是可验证并且可信的;
打包,指的是把工作量报告连同其它交易一起记录并打包到区块中。Crust 团队设计了一种以存储资源定义额度的PoS 共识算法,叫 GPoS(Guaranteed Proof of Stake,担保权益证明)。
通过第一层 MPoW 机制提供的工作量报告,Crust 链上可以获得所有节点的存储工作量,而第二层的 GPoS 算法,就是根据节点工作量为每个节点计算一个 Staking 额度。再根据这个额度,进行 PoS 共识。
服务,就是面向用户的存储服务。一句话总结,就是怎样能为终端用户带来高质量的去中心化存储服务。大家可以类比常用的云服务,比如针对 C 端的云盘和 iCloud,以及针对 B 端的阿里云和亚马逊云等等。
Crust 介绍
Crust 去中心化云的目的,是通过区块链技术激励节点对数据提供去中心化的存储和计算。最终体现出无处不在的去中心化的数据存储和计算能力。
Crust 的去中心化存储层,提供的是一个分布式文件系统。同时,Crust 封装了一些标准接口比如 Amazon S3-like,任何涉及到数据存储的应用场景如云服务、边缘计算、以及去中心化应用等,都是 Crust 适配的场景。
尤其在边缘计算场景下,相比于中心化的云存储,Crust 的去中心化存储更加贴近边缘侧,可以达到相对低成本高性能的效果。
TEE 是 Trusted Execution Environment 的缩写,是主处理器上的一个安全区域,其可以保证加载到该环境内部的代码和数据的安全性、机密性以及完整性。
TEE 可信执行环境技术,本质是提供一种保证数据和代码执行的安全空间。这个空间里的代码和数据,不受常规操作系统的影响,可以有效的保证数据机密性和完整性。
在 Crust 里,TEE 像一个诚实的监督员。周期性的检查节点是不是正常工作,有没有错存漏存用户数据,这就是 Crust 的 MPoW 机制,大家可以关注「白话MPoW—如何证明有意义的工作量」这篇文章,里面有对 MPoW 细节的描述。
同时,TEE 还承担了 “保险柜“ 的功能。对于用户的敏感数据,TEE 的加密可以让存储节点自己也无法对用户的隐私进行读取。就像金库出租者自己也打不开客户的金库一样。
Crust 可以负责数据的存储,而隐私数据的云存储将成为新突破。
企业可以直接使用 Crust Pan 客户端(Crust 云盘),或在企业数据平台兼容 Crust SDK(S3-like 接口)。
SDK 会将节点选择、冗余备份、检索加速、元数据管理等功能进行封装,企业只需要根据业务需要进行简单的配置即可。如果配置了隐私,隐私数据的存取将会全程加密,这也会使得更多企业将业务数据上云。
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 目前的经济模型中,Filecoin 的区块奖励是归属给出块节点,而节点出块概率则是与节点的工作量成正比,其本质是多劳多得的 PoW Base 模型。
而 Crust 的 GPoS 机制,出块奖励跟每个节点的抵押量成正比,而每个节点的抵押量上限,则受到节点提供存储量的限制。所以 GPoS 的本质是 PoS Base 的。这也是参考了 Polkadot 的 NPoS 模型进行的创新和设计。
同时,由于节点可接受的抵押额度受到存储量的限制,GPoS 可以很好的规避 PoS 的中心化问题。
Crust 网使用的是 GPoS(Guaranteed Proof of Stake)共识,称为以存储资源做担保额度的 PoS 共识。
和现有的 PoS 项目类似,节点需要将 CRU 通证 Stake 来竞争生成区块的权利,不一样的是节点还需要提供存储资源以获取相应的担保额度,有了担保额度才能 Stake 相应数量的 CRU。
在这个机制下需要有存储资源和 CRU 通证两类资产才可以成为节点,将资源型(如比特币)和通证型(如 Cosmos)共识机制的优点结合起来,更有效的保证网络安全性。
如果想从共识上攻击 Crust 网络,除了需要拥有大比例的 CRU 通证,还需要能控制足量的存储资源,这样的设计会让攻击难度变得非常高。
节点在拥有存储资源担保的前提下,还可以寻求担保人使用 CRU 为其担保。即节点 Stake 的 CRU 可以是自有的也可以是来自担保人。担保人选择为节点担保,除了可以获得收益外,也需要承担节点被处罚的风险。
如果节点因为触发了处罚机制被系统罚没资产,担保人也要按所担保比例被罚没。在这个机制下,担保人会倾向选择诚信的、服务质量好的节点而为其担保,在担保收入和处罚风险之间由市场决定出一个平衡。
作为一个底层数据存储的网络协议,Crust 提供了存储资源交易的功能,CRU 通证在这个交易市场中作为交易合约的保障金来保障交易市场次序。
最后,和其它区块链项目类似,CRU 通证还会作为使用网络的交易费,类似以太坊中的 Gas。它也可以直接用于购买网络中的资源服务。
07. 如何配合代币进度和生态发展?
经过和多方充分讨论后设计了 Crust 的代币模型,目前完整的经济模型没有对外发布,这里提前给大家介绍一下。
Crust 网络中的原生代币主要有 6 大功能:
1. 用于 Staking 维护 Crust 网络的 GPoS 共识
2. 用于担保所选的节点
3. 作为提供资源服务的合约保障金和佣金
4. 作为使用网络的交易费
5. 可用于购买资源服务
6. 用于链上治理机制的竞选和投票,并对提案进行表决
代币的价值和 Crust 网络的规模相关,当 Crust 网络被大量的用户使用时,CRU 的需求相应的会上涨。
Crust 的代币分配方案中,60% 的比例分配给上线后的资源节点的“挖矿”工作,16% 左右会投放给项目的关注社区,8% 左右用于孵化生态应用。其余部分转让给一些早期投资人和项目团队。
目前,Crust 的代币长期通胀率设定为 1.8%,通过手续费的销毁机制,代币通胀率极低,甚至是可能出现通缩的。
Crust 的代币和生态结合很紧密,代币受益于生态的发展,但代币的行情并不会影响项目发展。比如说我们的服务市场交易可以接受像稳定币这种用户友好的计价币,交易手续费也是类似 ETH 的 Gas 机制。生态内的应用都市场定价,遵循市场机制。
首先,Substrate 的技术框架非常优秀,对 Crust 这种应用型区块链的性能和功能支持很友好,比如:BABE/GRANDPA 算法对实现 GPoS 共识协议起到了关键作用,Offchain Worker 也很好的支持了 Crust 存储市场的实现。
其次,由于 Crust 的存储工作量共识基于TEE技术,而TEE技术有多种解决方案,如 IntelSGX、AMD SEV 和 ARM Trustzone。Crust 基于 Substrate 搭建的自治机制可以用来维护 TEE 解决方案列表。
最后,XCMP 协议为 Crust 跨链生态带来了可能性。试想未来 Crust 提供的存储服务,可以用多种 Token 购买,生态内的任何项目都可以使用 Crust 带来的存储能力。这是一个 1+1 大于 2 的结合。
从功能和技术上看,Crust 在 Web3 协议栈的定位,是属于“Data Distribution Protocols” ,Crust 存储层协议有能力提供上层协议需要的加密存储以及大运算量计算的支持。
Crust 的上层设计包含存储市场、检索市场、文件管理等机制,天然的需要兼容一些去中心化的数据传输协议、应用以及金融系统,而这些协议和应用都在 Web3 生态中已经有了较为完备的实现。
比如一些 Web3 生态的文件协议如 DAT、Shift 等,可以提供灵活的文件管理功能,并更好的支持了动态文件的版本控制,但都需要 Crust 这样的存储激励层来提供最基本的存储资源。
最后,Crust 项目已加入 Polkadot 生态,有效支持生态内的项目和应用。由于 Crust 与 IPFS、Phala 等项目在技术上紧密结合,Crust 还可以有效的扩大 Web3 的技术生态。
2020 年3月,我们上线了 Crust 开发测试网,与此同时我们会开放部分源代码。Crust 先后加入 Substrate Builders Program、Web3.0 Bootcamp,以及获得 Web3 基金会 Grant 。Crust 期待可以通过更紧密的合作,最终实现分布式云生态的构建。
我们计划在同年 7 月上线 Crust 公开测试网,在这个版本中 Crust 将支持完整功能的经济模型和存储交易市场,并计划联合 Phala 测试网,为 Web3 应用提供去中心化的存储。
Crust 主网预计在 2020 年底上线并接入 Polkadot 插槽。