使用 Rust 开发:以太坊与 Layer2 生态建设新趋势

图片

Rust 是一种系统编程语言,以其出色的性能、内存安全和并发性而闻名,在区块链和 Web3 中广泛应用,大多数编程语言和开发框架都以 Rust 为核心,如 Polkadot、Solana、NEAR、Elrond(现名 MultiversX)、Hyperledger Sawtooth 等众多优质区块链项目都使用 Rust 语言开发,或用 Rust 语言开发其上的智能合约。

Rust 为无数技术和工具的突破提供了底层开发支撑,是面向未来的区块链技术语言。在 Rust 的帮助下,开发者能够专注于构建核心业务逻辑,进一步推动 Web3 项目的开发与创新。近期以来,Rust 有哪些已实现的成功应用,为 Web3 工具和程序提供了怎样的底层开发编程支持?TinTinLand 带你一览 Rust 语言在以太坊与 Layer2 生态开发的最新进展。

Reth 为以太坊客户端提供一流性能

通过以太坊,开发者可以创建具有区块链技术优势的 DApp。这些 DApp 是可信的,一旦部署到以太坊,它们将始终按照设定程序运行,并可以控制数字资产,以创建新类型的金融应用。这些 DApp 也是去中心化的,没有单一的实体或个人能控制它们,也就几乎不可能受到审查。利用 Rust 语言和相关工具,开发者在可以在以太坊上从头开始构建这些非常简单的 Web3 应用程序。如果你也想着手实现自己的想法,可以在这里学习如何使用并通过基于 Rust 的项目及工具参与以太坊的开发🌐:https://ethereum.org/zh/developers/docs/programming-languages/rust/#beginner-articles 

Reth(Rust Ethereum)是 Paradigm 开发的一款基于 Rust 语言的免费、开源的以太坊执行层客户端。这是一款专注于用户友好、模块化、快速和高效的新型以太坊全节点实现,与支持 Engine API 的所有以太坊共识客户端实现兼容。作为一个完整的以太坊节点,Reth 将允许用户从创世区同步完整的以太坊区块链,并在同步完成后与其交互(以及其历史状态,如果处于存档模式下)。

图片

Paradigm 开发 Reth 旨在满足广泛的用户需求,包括权益验证者、爱好者、RPC 节点运营商、桥接器、MEV 搜索者,甚至是 Layer2 网络(如 Optimism/Arbitrum),或其他以太坊相关项目(如 Polygon、BSC、Avalanche、Fantom 等)。这些用户通常具有多样的需求(例如,爱好者和权益验证者希望在廉价硬件上运行节点,而 RPC 节点运营商可以使用昂贵的磁盘和云快照)。Reth 并非试图一次解决所有需求。相反,它致力于创建一个可配置的节点,允许用户根据他们的需求探索权衡空间。

Reth 仍在不断完善中,可能会经常进行更改。该代码尚未经过审计,不应在生产环境中使用。然而,为了保持透明度和与以太坊的价值观一致,Paradigm 将其进行开源并分享了他们的愿景。该代码在 Github 上以自由的 Apache/MIT 许可证免费提供,任何人都可以自由使用。Paradigm 鼓励社区进行分叉(fork),贡献文档、问题、拉取请求、提出问题,甚至尝试破解它。

选择使用 Rust 语言进行开发,是因为 Paradigm 希望 Reth 能提供一流的性能,为了实现这一目标,他们选择使用 Rust 作为编程语言和 Erigon 团队首创的分阶段同步节点架构。另一方面,Paradigm 也希望 Reth 从编写语言和编译器开始,就具有强大的稳定性基础,因此选择了具有稳定特性的 Rust 语言,以及维护良好的代码库。

在 Paradigm 看来,「Rust 是系统、数据库和网络工程的突破性工具。我们认为以太坊是一个高保证的操作系统,需要能够抵御最大的对手,没有比 Rust 更好的工具来实现这一目标了。」

感兴趣的开发者可以在这里了解更多详情🔎https://github.com/paradigmxyz/reth

a16z 打造高速 OP 客户端 Magi

加密风险投资基金 a16z Crypto 推出了自己的 Layer2 OP Stack 解决方案,名为 Magi。作为其进军 Optimism Collective 的第一步,Magi 是用 Rust 语言编写的高速 Roll-up 客户端(共识层)

图片

在以太坊的执行层中,Magi 作为共识客户端向执行客户端提供新的区块,以推动区块链的发展。根据 a16z 的说法,「Magi 执行与参考实现(如 op-node)相同的核心功能,并与执行节点(如 op-geth)一起同步到任何 OP Stack 链,包括 Optimism 和 Base。」

Magi 被设计为独立开发的、可以直接替代 Op-node 的解决方案,并提高了 Rollup 客户端的多样性。此外,a16z 团队计划对 Magi 进行未来的改进,例如跟踪不安全头(未确认区块)、新的同步机制、备用数据可用性层支持和更好的框架等。

以太坊链上执行和共识方面都需要客户端多样性,然而到目前为止,大部分开发都集中在执行客户端上。现有的以太坊执行客户端都可以通过实施一组适度的更改与 Optimism 兼容,并且几个新项目已经在调整这些客户端以帮助实现客户端多样性,比如 OP Labs 修改 Geth 客户端以构建 op-geth,其他团体目前正在建设 op-erigon 和 op-reth。

不过,Rollup 客户端改造难度更高,因为 Rollup 客户端是一个全新的软件。到目前为止,只有一种实现:Op-node,是由 OP Labs 维护并用 Go 语言编写。Magi 的目标是成为一个独立开发的 Op-node 直接替代品,以提升 Rollup 的客户端多样性。a16z 希望构建一个基于 Rust 的新客户端将鼓励整个 OP 堆栈更加安全和活跃,并为生态系统带来更多贡献者。

感兴趣的开发者可以在这里了解更多详情🔎https://github.com/a16z/magi

用 Rust 编写轻量访问以太坊的 Helios

Helios 同样是 a16z Crypto 推出以太坊轻客户端该客户端基于 Rust 语言进行编写,提供对以太坊的完全去信任访问,而且能在在大约两秒钟内同步,无需存储,并且允许用户从任何设备(包括手机和浏览器扩展)访问安全链数据,功能与全节点相同。

图片

Helios 使用了以太坊切换至 PoS 后促成的轻客户端协议,能将数据从不受信任的中心化 RPC 提供程序转换为安全可验证的本地 RPC 中,Helios 还能结合中心化 RPC,可以在不运行完整节点的情况下验证有关链上状态的各种信息,例如账户余额、合约存储、交易收据和智能合约调用结果等数据的真实性。与所有以太坊客户端一样,Helios 由执行层和共识层组成。但与多数其他客户端不同,Helios 将这两层紧密耦合,用户只需安装和运行单个软件即可

难以兼顾便捷性与去中心化是一个常见痛点,通过轻量级的 Helios,用户可从任何设备(包括手机和浏览器插件)访问安全的链上数据。这将使更多人可以访问无需信任的以太坊数据,不论使用什么硬件。用户可以在 MetaMask 中将 Helios 作为他们的 RPC 提供商,以实现无需信任地访问各种 DApp,整个过程无需任何其他更改。

其中,Rust 对 WebAssembly 的支持,使得应用开发人员可以轻松将 Helios 嵌入 Javascript 应用程序(如钱包和 DApp)中。这些集成将提升以太坊的安全性,减少对中心化基础设施的信任需求。

感兴趣的开发者可以在这里了解更多详情🔎https://github.com/a16z/helios

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

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

相关文章

华为云文件上传(单个上传和分段上传)

首先引入静态文件: 华为云官网提供js下载的链接 然后后端提供一个公用接口,返回华为云上传的基本配置: 官网提供的链接:华为云obs信息配置 一:单个上传 huaweiyunUpload (file, fileName, name, url, size, callb…

13.3测试用例进阶

一.测试对象划分 1.界面测试(参考软件规格说明书和UI视觉稿) a.什么是界面 1)WEB站(浏览器) 2)app 3)小程序 4)公众号 b.测试内容 1)界面内容显示的一致性,完整性,准确性,友好性.比如界面内容对屏幕大小的自适应,换行,内容是否全部清晰展示. 2)验证整个界面布局和排版…

设计模式_中介者模式

中介者模式 介绍 设计模式定义案例问题堆积在哪里解决办法中介者代替了多个对象之间的互动 使对象1 2 3 之间的互动 变为: 对象1->中介 对象2->中介 对象3->中介好友之间 约饭好友1 通知 好友2 -3 -4 等等加一个群 谁想吃饭就 通知一下 类图 代码 角色 …

【ROS 2 Humble】 Ubuntu 20.04(Focal)平台 源码安装

提问链接: https://answers.ros.org/questions/ —————————————— ROS 1 各版本支持截止时间查看 ROS 1 支持时间查看 链接 https://wiki.ros.org/Distributions ROS 2 各版本支持截止时间查看 ROS 2 版本支持时间查看 ROS 2 https://docs.ros.…

element-ui中表格树类型数据的显示

项目场景&#xff1a; 1&#xff1a;非懒加载的情况 1&#xff1a;效果展示 2&#xff1a;问题描述以及解决 1&#xff1a;图片展示 2&#xff1a;html <-- default-expand-all 代表默认展开 如果不展开删除就行 --> <el-tableref"refsTable"v-loadin…

高速DSP系统设计参考指南(六)锁相环(PLL)

&#xff08;六&#xff09;锁相环&#xff08;PLL&#xff09; 1.模拟锁相环2.数字锁相环3.PLL隔离技术 系统设计人员需要隔离PLL&#xff0c;使其免受内部和外部噪声的影响。PLL通常用作频率合成器&#xff0c;将输入时钟乘以一个整数。该整数是反馈计数器M除以输入计数器N的…

Pytorch搭建DTLN降噪算法

前面介绍了几种轻量级网路结构的降噪做法&#xff0c;本文介绍DTLN—一种时频双核心网络降噪做法。 AI-GruNet降噪算法 AI-CGNet降噪算法 AI-FGNet降噪算法 Pytorch搭建实虚部重建AI-GruNet降噪算法 一、模型结构 DTLN来自[2005.07551] Dual-Signal Transformation LSTM N…

EPLAN_008#3D布局图

一、新建页 多线原理图纸画好以后 打开布局空间导航器——右键——新建 二、插入箱柜 菜单栏——插入——箱柜 三、显示安装板 然后调整视角 四、插入线槽 菜单栏——插入——线槽——选择合适的线槽——确定 按A键可以切换线槽方向&#xff0c;如果位置不对&#xff0c;可以再…

尝试使用jmeter-maven-plugin

前提准备 1、maven项目 2、已安装JMeter、Jenkins、maven、jdk 环境要求&#xff1a; jmeter>5.6.2 maven >3.9 jdk>1.8 Jenkins ? 备注&#xff1a;jmeter-maven-plugin 无需下载&#xff0c;可查阅相关地址&#xff1a;GitHub - jmeter-maven-plugin/jmete…

高效恢复丢失的文件的10 款Android数据恢复工具

在当今快节奏的数字时代&#xff0c;从Android设备丢失重要数据可能是一场噩梦。 您需要一个可靠的恢复工具来取回您的数据&#xff0c;例如令人难忘的照片&#xff0c;重要的联系人&#xff0c;重要的工作文档等。 值得庆幸的是&#xff0c;有许多高效的Android数据恢复工具可…

什么是无磁远传水表?工作原理是怎样的?

无磁远传水表是一种新型的智能水表&#xff0c;与传统水表相比&#xff0c;它具有更高的精度和可靠性&#xff0c;并且可以实现远程读数和控制。那么&#xff0c;无磁远传水表的工作原理是怎样的呢?下面&#xff0c;小编来为大家介绍下什么是无磁水表?它的工作原理是怎样的&a…

npm ERR! node-sass@6.0.1 postinstall: `node scripts/build.js`

1.遇到的问题 vue npm install提示以下错误 2.首次尝试方法 尝试用下面的方式重新安装弄得-saas&#xff0c;结果不起作用 。 npm config set sass_binary_sitehttps://npm.taobao.org/mirrors/node-sass npm install node-sass 这时考虑降级node版本&#xff0c;node.js从…

【树莓派触摸屏等学习笔记】

前言 树莓派触摸屏 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、触摸屏硬件驱动 出现黑屏的时候&#xff0c;恢复一下txt config.txt 全屏显示 showFull Exec &#xff1a;自启动 surf 算法 特征点识别 算法的复杂度挺高的 特性树莓派强大…

N-128基于springboot,vue酒店管理系统

开发工具&#xff1a;IDEA 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 系统分前后台&#xff0c;项目采用前后端分离 前端技术&#xff1a;vueelementUI 服务端技术&#xff1a;springbootmybatis 本系统功…

怎么恢复移走的u盘数据?可以尝试这三种方法

当意外移走U盘上的数据时&#xff0c;我们常常会感到焦虑和失望&#xff0c;特别是当这些数据对我们仍然重要时。不过&#xff0c;您不必完全放弃&#xff0c;因为本文将介绍一些方法&#xff0c;以帮助您恢复U盘上的重要数据。 图片来源于网络&#xff0c;如有侵权请告知 移走…

uniapp 安装 u-view 组件库

u-view 组件库安装教程&#xff1a;https://uviewui.com/components/install.html 注&#xff1a;以下使用 HBuilderx 安装 u-view 2.0 版本&#xff0c;不适用于其它版本。 1.安装 u-view 组件库 2、注册并登录 HBuilderx 账号&#xff0c;点击下载 u-view 组件库。 3、点击…

2024年仁爱学院专升本招生专业对应范围专业目录更新的通知

天津仁爱学院2024年高职升本科招生专业对应范围专业目录 为了更好的进行天津仁爱学院专升本工作&#xff0c;动画专业不分文理进行录取。为了进一步提升录取专业的培养需要&#xff0c;请同学们复习专业课时加强专业课学习&#xff0c;请同学们在报考时关注天津仁爱学院招生章…

Pytorch从零开始实战06

Pytorch从零开始实战——明星识别 本系列来源于365天深度学习训练营 原作者K同学 文章目录 Pytorch从零开始实战——明星识别环境准备数据集模型选择开始训练模型可视化模型预测总结 环境准备 本文基于Jupyter notebook&#xff0c;使用Python3.8&#xff0c;Pytorch2.0.1c…

线性代数3:矢量方程

一、前言 欢迎回到系列文章的第三篇文章&#xff0c;内容是线性代数的基础知识&#xff0c;线性代数是机器学习背后的基础数学。在我之前的文章中&#xff0c;我介绍了梯队矩阵形式。本文将介绍向量、跨度和线性组合&#xff0c;并将这些新想法与我们已经学到的内容联系起来。本…

vmware 16pro安装 mac10.14.6,期间遇到的问题

1、分配硬盘内存尽量分大点&#xff0c;建议是40g&#xff0c;我分了80g&#xff0c;后面下载解压xcode发现还不够&#xff0c;又增加最后分了120g 2、安装过程&#xff0c;卡在选语言的地方&#xff0c;鼠标和键盘无法操作。需要在虚拟机设置中&#xff0c;勾选以下选项“显示…