Crust 详解大全,那些你不知道的成果

2023-12-27 00:31

本文主要是介绍Crust 详解大全,那些你不知道的成果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Crust 是什么?

Crust提供了Web3⽣态系统的去中⼼化存储⽹络,⽀持包括IPFS在内的多种存储层协议,并对应⽤层提供接⼝。Crust的技术栈还能够⽀持去中⼼化计算层。Crust旨在构建⼀个重视数据隐私和所有权的分布式云⽣态系统。

Crust 基于 TEE 可信执行环境技术,提出了 MPoW(Meaningful Proof of Work),即有意义的工作量证明机制。 Crust 存储节点会周期地向全网报告“我”提供了多少存储空间、“我”存了哪些用户文件等信息,在 MPOW 机制帮助下,报告中的工作量是可验证并且可信的;并把工作量报告连同其它交易一起记录并打包到区块中。

同时,Crust 设计了一种以存储资源定义额度的PoS 共识算法,叫 GPoS(Guaranteed Proof of Stake,担保权益证明)。 通过第一层 MPoW 机制提供的工作量报告,Crust 链上可以获得所有节点的存储工作量,而第二层的 GPoS 算法,就是根据节点工作量为每个节点计算一个 Staking 额度。再根据这个额度,进行 PoS 共识

Crust还提供面向用户的存储服务。大家可以类比常用的云服务,比如针对 C 端的云盘和 iCloud,以及针对 B 端的阿里云和亚马逊云等等。

更多信息:Crust Network 技术白皮书 v1.9.8

2

TEE 是什么,在Crust 中 TEE 承担的角色是什么?

TEE 是 Trusted Execution Environment 的缩写,是主处理器上的一个安全区域,其可以保证加载到该环境内部的代码和数据的安全性、机密性以及完整性。TEE 可信执行环境技术,本质是提供一种保证数据和代码执行的安全空间。这个空间里的代码和数据,不受常规操作系统的影响,可以有效的保证数据机密性和完整性。

在 Crust 里,TEE 像一个诚实的监督员。周期性的检查节点是不是正常工作,有没有错存漏存用户数据,对于用户的敏感数据,TEE 的加密可以让存储节点自己也无法对用户的隐私进行读取。就像金库出租者自己也打不开客户的金库一样。

3

Crust网络基于TEE技术,是否存在安全隐患?

虽然TEE技术被广泛应用在各种商业场景,具有极高的安全性,但在一些极端条件下仍有被攻击的可能。Crust使用TEE进行存储证明,拥有几乎可以忽略不计的存储和证明的速度,也同时有TEE被攻击的可能。

为了确保网络的安全,Crust采取了以下手段:

1)通过链上升级规避TEE的代码漏洞

Crust是基于Substrate框架开发的,其链上升级功能可以在不分叉链的同时,升级Crust 协议中TEE模块的代码。对于任何TEE漏洞,一经发现,Crust便可以第一时间通过链上升级的方式修复漏洞。

2)通过PoS共识保护网络的安全性

在TEE漏洞修复之前,攻击者无法获得实际利益。基于GPoS共识算法,攻击者提供虚假的存储证明,只能获得高于实际值的存储量。然而Crust网络的算力除了存储量,还需要有对应数量的CRU通证进行质押。因此,当节点TEE被成功攻击后,网络的安全性依然受到PoS共识机制保护。

3)支持开源的TEE框架

Crust抽象了约30个存储证明的接口,这些接口可以适配各种TEE方案。比如可审计的开源TEE框架——RiscV。

4)多TEE策略

在下一阶段,Crust计划支持多TEE博弈架构,也就是每个节点同时运行两种以上TEE。这时,存储证明会被两个以上不同TEE生成出来。如果一个TEE被攻击,那么另一个TEE可以第一时间发现并上报。

在零知识证明(Zero Knowledge Proof,后简称ZK)技术成熟后,将基于TEE的存储证明替换成基于ZK的存储证明。

现阶段,ZK技术尚未成熟,使用ZK进行存储证明,成本较高,且消耗更多的电力和时间,难以商用。但随着密码学的不断进步,我们相信未来ZK的效率会有所提高,并可以被应用在分布式存储上。Crust为ZK存储证明也保留了接口。

4

Crust 的应用场景有哪些?

Crust现已推出三大应用场

这篇关于Crust 详解大全,那些你不知道的成果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/541319

相关文章

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4:

python logging模块详解及其日志定时清理方式

《pythonlogging模块详解及其日志定时清理方式》:本文主要介绍pythonlogging模块详解及其日志定时清理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录python logging模块及日志定时清理1.创建logger对象2.logging.basicCo

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

SQL表间关联查询实例详解

《SQL表间关联查询实例详解》本文主要讲解SQL语句中常用的表间关联查询方式,包括:左连接(leftjoin)、右连接(rightjoin)、全连接(fulljoin)、内连接(innerjoin)、... 目录简介样例准备左外连接右外连接全外连接内连接交叉连接自然连接简介本文主要讲解SQL语句中常用的表

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

Python中局部变量和全局变量举例详解

《Python中局部变量和全局变量举例详解》:本文主要介绍如何通过一个简单的Python代码示例来解释命名空间和作用域的概念,它详细说明了内置名称、全局名称、局部名称以及它们之间的查找顺序,文中通... 目录引入例子拆解源码运行结果如下图代码解析 python3命名空间和作用域命名空间命名空间查找顺序命名空

SpringRetry重试机制之@Retryable注解与重试策略详解

《SpringRetry重试机制之@Retryable注解与重试策略详解》本文将详细介绍SpringRetry的重试机制,特别是@Retryable注解的使用及各种重试策略的配置,帮助开发者构建更加健... 目录引言一、SpringRetry基础知识二、启用SpringRetry三、@Retryable注解

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll