在Solana合约链实现IBC协议跨链互操作 - 苏胤榕@DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - IBC协议的核心已经被协议核心团队用Rust语言实现。 t语言实现。 - 对于本身就是使用Rust语言作为智能合约开发的区块链 平台来说,支持集成支持IBC协议会很方便。 - 这里优先构想了在Solana链上实现IBC协议,因为 Solana平台本身极 低的gas消耗,很适合我现在构思 的这套实现方案。(后面会做解释) 引入Solana作为示例平台 - Solana极低的Gas花销。 - Anchor合约开发框架,大大降低了Rust合 轻客户端核心 使用Rust在Rust合约链实现IBC协议 Rust合约链概述> 解释为什么选择Rust作为实现IBC协议的语言 1. Rust语言的安全性和性能优势 2. Rust生态系统的丰富性 3.Solana平台的支持:Solana是一个基于Rust开发 的 高性能区块链平台,提供了完善的开发工具和文档,可 以帮助开发者更加便捷地进行Rust合约链开发。 4. Informal0 码力 | 29 页 | 3.05 MB | 1 年前3
秘猿先锋-文愿-Axon 应用链框架的 Rust 开发实践Axon 应用链框架的 Rust 开发实践 文愿 区块链工程师@秘猿先锋 wenyuan@cryptape.com Who am I ? 目录 1. Axon 简介 2. 大型 Rust 项目应用 Adapter 模式 3. 使用过程宏的监控埋点开发实践 4. 区块链间互操作性的实现 区块链间互操作性的实现 目录 1. Axon 简介 2. 大型 Rust 项目应用 Adapter 模式 3. 使用过程宏的监控埋点开发实践 4. 区块链间互操作性的实现 1. 应用链框架 2. 高性能 3. 互操作(Interoperability) 4. EVM 兼容 5. Rust What is Axon What is Axon 目录 目录 1. Axon 简介 2. 大型 Rust 项目应用 Adapter 模式 3. 使用过程宏的监控埋点开发实践 4. 区块链间互操作性的实现 1. Mempool(交易池) 2. Consensus (Overlord) 3. P2P (Tentacle) 4. Interoperation 5. Web3 RPC(以太坊兼容) 6. Storage (KV 数据库) 70 码力 | 32 页 | 3.63 MB | 1 年前3
基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺运营成本,是一个极简的时序数据处理平台。 采用关系型数据库模型 需要建库、建表, 为提升写入和查询效率,要求一个数据采集点一张表 为实现多表聚合,引入超级表概念 子表通过超级表创建,带有标签,通过标签实现多表 高效聚合 高效写入 支持标准 SQL 写入,支持批量写入 支持 Schemaless 写入 支持从 Kafaka, MQTT, 多个国家安装实例超 270k | GitHub 全球趋势排行榜多次排名第一 TDengine - 数据模型 1. 设备 ID 及关联属性( Tags ) 2. 时间戳 3. 结构化采集量 STable 超级表 Table 子表 CREATE STABLE `meters` ( `ts` TIMESTAMP, `current` FLOAT, `voltage` INT, `phase` i n e t a o s X R u s t 使 用 Why Rust ? • 安全性 • 高性能 • 跨平台兼容 • 强大的类型系统和抽象表达能力 • 优秀的 Rust 生态和开发工具链 • C FFI 互操作能力 • async/await 异步编程 Rust - Crates Used in taosX • Async runtime: https://crates.io/crates/tokio0 码力 | 29 页 | 2.26 MB | 1 年前3
Rust语言核心竞争力-庄晓立• 对CPU和内存的高效利用(Server, OS) • 对运算性能的高要求 • 对系统安全和内存安全的强需求 重点项目&热门领域 • 大数据 • 云计算 • 物联网 • 航空航天 • 超级计算机 • 科学运算/机器学习 • 图形图像处理 • 虚拟现实 ……都有系统编程的身影 • 操作系统 • 虚拟机/容器 • 数据库 • 3D游戏引擎 • 网络服务器 • 浏览器引擎 • 编译器、解释器0 码力 | 51 页 | 1.09 MB | 1 年前3
Rust在Substrate 开发框架中的使用中心应用的问题: ● 难以保证不作恶 ● 用户隐私问题 ● 代码安全 ● 隐藏成本高 ● 服务不可用 ● …… web 2.0 Vs web 3.0 去中心应用 – 解决方案 ● 分叉、链上治理 ● 用户拥有数据主权 ● 开源可审查 ● 分享权益 ● 永不离线 ● …… 协议: ● IPFS ● Matrix ● BitTorrent 特点: ● DHT ● 自驱动 Gas 费用 ● 沙盒环境 ● 链上存储租赁 ● 状态回滚 Smart contract smart contract 特点: ● Gas 费用 ● 沙盒环境 ● 链上存储租赁 ● 状态回滚 Smart contract Vs application chain app chain特点: ● Runtime 安全有开发者完全负责 ● 获取链上所有状态 ● 高度定制化,包括共识,通证,交易 高度定制化,包括共识,通证,交易 方式 一个开源、模块化、可扩展的区块链开 发框架,涵盖了区块链的核心组件: ● Database layer ● P2P ● PoS ● Transaction pool ● Full / light client ● Runtime modules Substrate简介 libp2p CONSENSUS WEBASSEMBLY smart contracts0 码力 | 37 页 | 967.22 KB | 1 年前3
Rust 语言学习笔记Rust 破除了这些障碍,其消除了旧的陷阱并提供了伴你一路同行的友好、精良 的工具。想要 “深入” 底层控制的程序员可以使用 Rust,无需冒着常见的崩 溃或安全漏洞的风险,也无需学习时常改变的工具链的最新知识。其语言本身 更是被设计为自然而然的引导你编写出在运行速度和内存使用上都十分高效的 可靠代码。 参考: https://rustcc.gitbooks.io/rustprimer/content/ module 路径 前面我们提到,一个 crate 是一个独立的可编译单元。它有一个入口文件,这 个入口文件是这个 crate(里面可能包含若干个 module)的模块根路径。整个 模块的引用,形成一个链,每个模块,都可以用一个精确的路径(比如: a::b::c::d)来表示; 与文件系统概念类似,模块路径也有相对路径和绝对路径的概念。为此,Rust 提供了 self 和 super 两个关键字。 restricted.html 相关内容。 理性看待 rust 语言的升级。只是升级频度高一些,这样的升级在 java 和 go 中 也普遍存在。go 中的感知稍微小一些。 每次升级都要更新相应的工具链。保证最新的编译器和链接器可以将新生成的 程序生成出来。 Rust 的包管理系统非常明显地体现了它的与众不同。 1.3 版本管理工具 作为一门更新快速的语言,rust 开发了专用的版本管理工具0 码力 | 117 页 | 2.24 MB | 1 年前3
Comprehensive Rust(简体中文) 202412FromIterator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 25.4 练习:迭代器方法链 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 25.4.1 解答 . . . . . . . . . . 知道如何下载托管在 https://crates.io 上的依赖 项, 并在构建项目时将它们传递给 rustc。Cargo 还附带一个内置的测试运行程序,用于执行单元 测试。 • rustup:Rust 工具链安装和更新工具。当 Rust 发布新版本时,此工具用于安装并更新 rustc 和 cargo。此外,rustup 还可以下载标准库的文档。可以同时安装多个版本的 Rust,rustup 会根 据需要让你在这些版本之间切换。 此类型具有几种特定于方法的返回值类型,例如“std::collections::hash_map::Keys”。这些类型 通常会出现在 Rust 文档的搜索结果中。向学员展示此类型的文档,以及指向“keys”方法的实用链 接。 16.8 练习:计数器 在本练习中,您将学习一个非常简单的数据结构,并将其变成泛型的。该结构使用std::collections::HashMap 来跟踪已经出现过的值以及每个值出现的次数。0 码力 | 359 页 | 1.33 MB | 10 月前3
刘用涛 CnosDB时序数据库的Rust实践-{abi} 2. Rust编译工具链 rustup target add $target, --target=$rustc_target 3. 配置链接器 -C linker=$gcc_prefix-gcc 指示rustc采用的C链接器程序 cross 提供了 “零设置” 的交叉编译 rust crate 它提供了一个环境、交叉工具链和交叉编译库,可以生成最便携的二进制文件0 码力 | 26 页 | 3.28 MB | 1 年前3
KCL: Rust 在编译器领域的实践与探索利用Kubernetes和云的混合能力,通过端到端的交付工作 流程,真正实现集中定义、随处交付。 KusionStack 架构 • KCL:面向应用研发者的 配置策略专用高级编程语 言,及其协议组,工具链及 IDE 插件 • Kusion:运维引擎、工具 链、服务层,IDE 工作空间 及社区技术集成套件 • Konfig:应用配置及基础 模型共享仓库,及面向 GitOps 工作流程(如 GitHub Actions)的自定义0 码力 | 25 页 | 3.50 MB | 1 年前3
洛佳 组件化驱动、ROM运行环境与RustSBIR O M 多 核 启 动 直 接 使 用 R O M 机 制 开 启 所 有 三 个 核 , 并 加 载 相 关 的 固 件 。 相 比 额 外 引 导 程 序 而 言 , 节 省 引 导 链 级 数 , 增 加 安 全 性 和 效 率 。 2023年的RustSBI 第 03 部分 RustSBI软件架构更新 • RISC-V SBI可运用于机器态和虚拟化 的宿主态,此时RustSBI实现应为虚 发寄存器,快速处理程序可为完整处理程序提供参数 • 项目地址:https://github.com/YdrMaster/fast- trap 示例:RustSBI原型设计系统选型界面 RustSBI与生态后续引导链 • 对RISC-V UEFI,RustSBI准备好SBI 环境。 • RustSBI充当至关重要的安全 层,并准备好S态软件的环境 • UEFI部分运行在S态 • 对LinuxBoot,RustSBI参与准备好0 码力 | 21 页 | 3.12 MB | 1 年前3
共 18 条
- 1
- 2













