Web3公链之Cosmos生态的项目Celestia

文章目录

  • Web3公链之Cosmos生态的项目:模块化区块链Celestia
    • 什么是Celestia
      • Celestia网络架构
      • 数据可用性问题有哪些可用的解决方案?
    • 发展历史
    • 运行节点
    • 参考

Web3公链之Cosmos生态的项目:模块化区块链Celestia

什么是Celestia

官网:https://celestia.org/

一直以来,区块链都是执行状态机复制的分布式网络,分成了数据、共识、执行这三层。在单体区块链中,数据、共识、执行这三层工作全都会由一个网络来完成,因此若复杂度越高、系统保持同步性的成本和复杂度也就越高。

以太坊Rollup 将执行层分离出去,处理复杂交易,解决了一部分问题,但Rollup 必须监控 L1 并且执行调用交易以便计算,再以不同方式将返回 L1。数据可用性还是依赖于以太坊的共识层与执行层,目前以太坊执行层使用成本仍然很高,开发者可部署的范围还是很有限。

以太坊 Rollup 二层网络是一个执行层,而这些项目的数据可用性、共识以及结算层都是以太坊,这样的Rollup 理论上将拥有接近以太坊主网的安全性。

Celestia 是一个模块化协议,它只处理数据可用性(DA),其他执行和结算工作可以锁定DA 层,开发人员可以直接选择要使用的执行环境在Celestia上构建 DApp。

Celestia 采用模块化架构,将区块链解构为数据、共识、执行,以精简化、模块化的共识层,来赋能预算不多的开发者,让他们轻松的部署自己的区块链。

Celestia 为模块化扩展提供了不同的解决方案,其架构目前有三种类型:

① 主权 Rollup:数据可用性层和共识层为 Celestia,结算层和执行层是自己的主权链;

② 结算 Rollup(代表项目 Cevmos):数据可用性层和共识层为Celestia,结算层为 Cevmos,应用链为执行层;

③ Celestium: 数据可用性层为 Celestia,共识层和结算层为以太坊,应用链为执行层。

从赛道来看,Celestia应该被并入公链赛道,但是Celestia与以前的单片式公链又有较大区别,因此可以将其单独细分为专注于共识层和数据可用性层的模块化公链,该细分赛道目前仍然处于非常早期的阶段。

Celestia网络架构

在这里插入图片描述

作为一个数据可用性层。Celestia采用PoS的共识机制,并且使用了Cosmos SDK来进行开发,但是其对Tendermint的共识算法进行了一些修改。修改后的Tendermint共识算法-Celestia Core包含了Celestia解决数据可用性问题的两个重点:数据可用性采样(Data Availability Sampling (DAS))与命名空间默克尔树(Namespaced Merkle Trees (NMTs))

数据可用性问题有哪些可用的解决方案?

Celestia专题系列1 : 什么是数据可用性(DA:Data Availability)
参考URL: https://zhuanlan.zhihu.com/p/493099971?utm_id=0

  • 下载所有数据
    解决数据可用性问题的最简单的方法是要求每个人(包括轻客户端)下载所有数据。显然,这不能很好地扩展, 这也是大多数区块链(例如比特币和以太坊)目前所做的。

  • 数据可用性证明(Data Availability Proofs)
    数据可用性证明(Data Availability Proofs)是一项新技术,它允许客户通过仅下载该区块的一小部分来以非常高的概率检查该块的所有数据是否已发布。
    客户端可以通过仅访问一小部分数据来检查整个区块数据是否已发布。
    数据可用性证明的完整细节有点复杂,并且依赖于其他假设,例如要求网络中的轻客户端数量最少,以便有足够的轻客户端发出样本请求,以便它们可以共同恢复整个块。如果您想了解更多信息,可以查看原始数据可用性证明论文。

发展历史

2019.05 LazyLedger白皮书发布

2021.03.04 LazyLedger Labs完成150万美元种子轮融资,计划年底启动测试网

2021.06.15 LazyLedger更名Celestia

2022.05.25 Celestia启动其首个测试网Mamaki

2022.10.20 Celestia完成5500万美元融资,Polychain Capital等领投

2023.03.15 Celestia测试网Blockspace Race上线,区块浏览器已启动

2023.05.12 Celestia:Quantum Gravity Bridge初期版本已上线Blockspace Race测试网

运行节点

官方文档:https://docs.celestia.org/nodes/light-node/

# celestia light init --p2p.network mocha2023-10-21T22:45:38.120+0800    INFO    node    nodebuilder/init.go:31  Initializing           Light Node Store over '/root/.celestia-light-mocha-4'
2023-10-21T22:45:38.152+0800    INFO    node    nodebuilder/init.go:63  Saved config{          "path": "/root/.celestia-light-mocha-4/config.toml"}
2023-10-21T22:45:38.152+0800    INFO    node    nodebuilder/init.go:65  Accessing key          ring...
2023-10-21T22:45:38.161+0800    WARN    node    nodebuilder/init.go:194 Detected plai          ntext keyring backend. For elevated security properties, consider using the `file` ke          yring backend.
2023-10-21T22:45:38.162+0800    INFO    node    nodebuilder/init.go:209 NO KEY FOUND           IN STORE, GENERATING NEW KEY... {"path": "/root/.celestia-light-mocha-4/keys"}
2023-10-21T22:45:38.209+0800    INFO    node    nodebuilder/init.go:214 NEW KEY GENER          ATED...NAME: my_celes_key
ADDRESS: celestia1pnx0a88ckqkljcrcvajcsf0jgy2fg6j3tl2d95
MNEMONIC (save this somewhere safe!!!):
xxx xxxx2023-10-21T22:45:38.210+0800    INFO    node    nodebuilder/init.go:72  Node Store in          itialized
root@good:~/celestia-node# celestia light init --p2p.network mocha
2023-10-21T22:46:31.910+0800    INFO    node    nodebuilder/init.go:31  Initializing Light Node Store over '/root/.celestia-light-mocha-4'
2023-10-21T22:46:31.914+0800    INFO    node    nodebuilder/init.go:63  Saved config    {"path": "/root/.celestia-light-mocha-4/config.toml"}
2023-10-21T22:46:31.915+0800    INFO    node    nodebuilder/init.go:65  Accessing keyring...
2023-10-21T22:46:31.925+0800    WARN    node    nodebuilder/init.go:194 Detected plaintext keyring backend. For elevated security properties, consider using the `file` keyring backend.
2023-10-21T22:46:31.937+0800    INFO    node    nodebuilder/init.go:72  Node Store initialized

通过连接到验证器节点的grpc端点(通常在端口9090上)的轻节点:

如果您需要连接的RPC端点列表,则可以在Mocha TestNet页面上找到列表:https://docs.celestia.org/nodes/mocha-testnet/#rpc-endpoints

nohup  celestia light start --core.ip  full.consensus.mocha-4.celestia-mocha.com  --p2p.network mocha  > nohup_celestia.output 2>&1 &

参考

[推荐]Celestia专题系列1 : 什么是数据可用性(DA:Data Availability)
参考URL: https://zhuanlan.zhihu.com/p/493099971?utm_id=0
关于数据可用性问题的以太坊研究 wiki 帖子
https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/176374.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go学习第十七章——Gin中间件与路由

Go web框架——Gin中间件与路由 1 单独注册中间件1.1 入门案例1.2 多个中间件1.3 中间件拦截响应1.4 中间件放行 2 全局注册中间件3 自定义参数传递4 路由分组4.1 入门案例4.2 路由分组注册中间件4.3 综合使用 5 使用内置的中间件6 中间件案例权限验证耗时统计 1 单独注册中间件…

驱动day10作业

基于platform驱动模型完成LED驱动的编写 驱动程序 #include <linux/init.h> #include <linux/module.h> #include<linux/platform_device.h> #include<linux/mod_devicetable.h> #include<linux/of.h> #include<linux/of_gpio.h> #inclu…

【CSS】包含块

CSS规范中的包含块 包含块的内容&#xff1a; 元素的尺寸和位置&#xff0c;会受它的包含块所影响。 对于一些属性&#xff0c;例如 width, height, padding, margin&#xff0c;绝对定位元素的偏移值&#xff08;比如 position 被设置为 absolute 或 fixed&#xff09;&…

【原创】java+swing+mysql无偿献血管理系统设计与实现

摘要&#xff1a; 无偿献血管理系统是为了实现无偿献血规范化、有序化、高效化的管理而设计的。本文主要介绍使用java语言开发一个基于C/S架构的无偿献血管理系统&#xff0c;提高无偿献血管理的工作效率。 功能分析&#xff1a; 系统主要提供给管理员、无偿献血人员&#x…

【Mybatis-Plus】代码生成器

目录 安装插件 数据库建表 Other Config Database Code Generator 根据创建好的数据库表&#xff0c;来直接生成代码 安装插件 数据库建表 Other 点开之后有两个功能 1.数据库配置 2.代码生成 Config Database 首先点开这个配置数据库 Code Generator 配置完数据库…

数据结构第一课-----------数据结构的介绍

作者前言 &#x1f382; ✨✨✨✨✨✨&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ​&#x1f382; 作者介绍&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

Web自动化测试进阶 —— Selenium模拟鼠标操作

鼠标操作事件 在实际的web产品测试中&#xff0c;对于鼠标的操作&#xff0c;不单单只有click()&#xff0c;有时候还要用到右击、双击、拖动等操作&#xff0c;这些操作包含在ActionChains类中。 ActionChains类中鼠标操作常用方法&#xff1a; 首先导入ActionChains类&…

Redis持久化(RDB、AOF)

一、RDB RDB&#xff1a;Redis数据备份文件&#xff0c;也叫Redis数据快照&#xff0c;简单来说就是把内存数据保存的磁盘上&#xff0c;当Redis故障重启后&#xff0c;从磁盘中读取快照并恢复数据到Redis中。 RDB有两种启动命令&#xff1a; save&#xff1a;由Redis主进程…

黑马 小兔鲜儿 uniapp 小程序开发- 商品详情模块- day05

黑马 小兔鲜儿 uniapp 小程序开发- 分类模块- day04-CSDN博客 小兔鲜儿 - 商品详情(登录前)-day05 商品详情页分为两部分讲解&#xff1a; 登录前&#xff1a;展示商品信息&#xff0c;轮播图交互&#xff08;当前模块&#xff09;登录后&#xff1a;加入购物车&#xff0c;立…

机器视觉能不能再火爆?大多数企业订单减少是现实,大多数企业维持现有的经营状态将会非常困难,就看人工智能和新兴产业能不能破门而入

每个人都讲机器视觉代替大量人工&#xff0c;可是真的吗&#xff1f;没有订单&#xff0c;人工的存在都没必要&#xff0c;需要什么机器视觉检测。 我们首先有一个问题&#xff0c;机器视觉行业之前有没有火爆过&#xff1f; 有&#xff0c;但是出现短暂之后是内卷。深度学习A…

LeetCode字符串题库 之 罗马数字转整数

题目链接&#x1f517;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 1. 题目分析 我们在做题的时候&#xff0c;一定要知道题目的目的是什么&#xff0c;我们可以结合测试用例和提示来看。 我们可以分析以下几点&#xff1a; 1. 每一个罗马数字都…

【Java】LinkedList 集合

LinkedList集合特点 LinkedList 底层基于双向链表实现增删 效率非常高&#xff0c;查询效率非常低。 LinkedList源码解读分析 LinkedList 是双向链表实现的 ListLinkedList 是非线程安全的&#xff08;线程是不安全的&#xff09;LinkedList 元素允许为null,允许重复元素Linked…

2023-在mac下安装Homebrew的国内镜像

mac安装Homebrew的国内镜像 尝试使用其他下载源&#xff1a;GitHub 可能会受到访问限制&#xff0c;尝试使用其他镜像或下载源。您可以使用清华大学、中科大或阿里云的 Homebrew 镜像&#xff0c;以提高下载速度和可靠性。例如&#xff0c;可以使用阿里云的镜像来安装 Homebre…

HTML5+CSS3+Vue小实例:路飞出海的动画特效

实例:路飞出海的动画特效 技术栈:HTML+CSS+Vue 效果: 源码: 【HTML】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content=&…

亚马逊云科技为奇点云打造全面、安全、可扩展的数据分析解决方案

刘莹奇点云联合创始人、COO&#xff1a;伴随云计算的发展&#xff0c;数据技术也在快速迭代&#xff0c;成为客户迈入DT时代、实现高质量发展的关键引擎。我们很高兴能和云计算领域的领跑者亚马逊云科技一同&#xff0c;不断为客户提供安全可靠的产品与专业的服务。 超过1500家…

【广州华锐互动】飞机诊断AR远程指导系统为工程师提供更多支持

随着科技的发展&#xff0c;飞机的维护工作也在不断进步。其中&#xff0c;AR&#xff08;增强现实&#xff09;技术的应用使得远程运维成为可能。本文将探讨AR在飞机诊断远程指导系统中的应用&#xff0c;以及它对未来航空维护模式的影响。 AR远程指导系统是一种使用增强现实技…

云安全—K8S API Server 未授权访问

0x00 前言 master节点的核心就是api服务&#xff0c;k8s通过REST API来进行控制&#xff0c;在k8s中的一切都可以抽象成api对象&#xff0c;通过api的调用来进行资源调整&#xff0c;分配和操作。 通常情况下k8s的默认api服务是开启在8080端口&#xff0c;如果此接口存在未授…

JVM第二十三讲:Java动态调试技术原理

Java动态调试技术原理 本文是JVM第二十三讲&#xff0c;Java动态调试技术原理。转载自 美团技术团队胡健的Java 动态调试技术原理及实践&#xff0c;通过学习java agent方式进行动态调试&#xff0c;了解目前很多大厂开源的一些基于此的调试工具 (例如来自阿里开源的Arthas)。 …

el-dropdown自定义样式,不影响其他组件

原来的样式: 修改后的样式: 给el-dropdown-menu添加类名dropdown-menu <el-dropdown-menu slot"dropdown" class"dropdown-menu"><router-link to"/user/profile"><el-dro…

html+js+css实现一个圆形滑块

htmljscss实现一个圆形滑块&#xff0c;可以拖动&#xff0c;可以点击&#xff0c;先看效果再讲原理&#xff0c;最后附上源码&#xff1a; 产品经理设计了这样一个需求&#xff0c;通过拖动圆形滑块实现时间的设置功能&#xff0c;虽然看着有点复杂&#xff0c;但是确实有点复…