应用 waPC (rust) 做软件测试工具第三届中国 Rust 开发者大会 应用 waPC (rust) 做软件测试工具 Alan poon 潘泳权 大家好! @rustropy_gaming ruito_89 PhoTto / image / chart Webassembly Procedures Call waPC 协议标准化了本机代码调用 WebAssembly 和 WebAssembly 调用本机代码的通信 (messaging)0 码力 | 30 页 | 2.50 MB | 1 年前3
2021信创“大比武”鲲鹏基础软件开发赛道
基于Rust语言的openGauss驱动要求 使用Rust语言实现openGauss数据库驱动 基于SHA256进行权限认证 能够执行增删改查SQL语句 4 方案介绍 - 思路 × 参考 JDBC 标准,使用 rust 语言实现一个简单的只包含核心部分的版本 √ 基于开源的 rust-postgres 驱动开发,实现基于 sha256 的鉴权方式连接 openGuass 数据库 × 使用 rust 语言已有的 sha256 openGauss sha256 鉴权代码,使用 rust 语言重新实现 5 方案介绍 - 认证流程 startup 会首先建立连接,同时会发送认证协议的版本; 服务器会响应具体的认证方式以及该认证方式所需的信息; 客户端根据要求的认证方式通过认证后,就可以向服务器端发送各种数据库命令 6 方案介绍 - 认证流程 7 方案介绍 - SHA256认证 SHA256 认证是 openGuass 在 在 postgres 支持的认证方法之上,额外提供的一种更安全的认证方式。 其认证流程遵循 RFC5802 标准 8 方案介绍 - 代码 postgres-protocol/src/message/backend.rs 中进行鉴权方式判定 9 方案介绍 - 代码 tokio-postgres/src/connect_raw.rs 中实现 SHA256 的加密及通信 postgres-0 码力 | 14 页 | 566.24 KB | 1 年前3
使用Rust与ClickHouse构建高效可靠的日志系统更友好的开源协议 系统介绍 • 多种接入方式 • Agent • Client • 查询 • LogQL • OpenTSDB • 其他功能 • 多租户 • 自定义索引 • 多维度统计 • 鉴权 • ... 系统介绍 • 写入 • 每天 100G • 磁盘 • 压缩比 1:13 • 内存 • Mencius • 200M左右 • ClickHouse • 2G以下 •0 码力 | 19 页 | 2.66 MB | 1 年前3
Comprehensive Rust(简体中文) 202412– 它具有额外功能,因此也更强大。 * 如果有人提问,便阐明额外功能是指“:”左侧的类别可为任意值,例如 Option。 • 请注意,Rust 尚不支持专精领域认证。例如,根据原始 duplicate 函数,添加专精领域认证的 Duplicate(a: u32) 是无效的。 14.5 impl Trait 与特征边界类似,impl Trait 语法可以在函数形参 和返回值中使用: // IntoIterator,并在 GridIter 中存储对 Grid 的引用。 对于标准库类型,可能会出现同样的问题:for e in some_vector 将获得 some_vector 的所有 权,并迭代该矢量中的自有元素。请改用 for e in &some_vector 来迭代 some_vector 的元素的 引用。 25.3 FromIterator FromIterator 让您可通过 0 码力 | 359 页 | 1.33 MB | 10 月前3
简谈 Rust 与国密 TLS - 王江桐位,摘要值长度为 256 位,其中使用了异或、模、模加、移位、与、或、非运算,由填充、迭代过程、消息扩展和压缩 函数所构成。 • 保证信息的完整性。 • 在商用密码体系中,SM3 主要用于数字签名及验证、消息认证码生成及验证、随机数生成、密钥 扩充等。据国家密码管理局表示,其安全性及效率要高于 MD5 算法和 SHA-1 算法,与 SHA- 256 相当。 • SM3 将对长度为l(l < 2^64) 比特的消息 在商用密码体系中,SM9 主要用于用户的身份认证,据新华网公开报道,SM9 的加密强度等同于 3072 位密钥的 RSA 加密算法,也就是 128 位安全位数。 • 适用于互联网应用的各种新兴应用的安全保障,如基于云技术的密码服务、电子邮件安全、智能终 端保护、物联网安全、云存储安全等等。这些安全应用可采用手机号码或邮件地址作为公钥,实现 数据加密、身份认证、通话加密、通道加密等。 SM9 Introduction 从而比传统意义上 的公钥密码体制有许多优点,省去了证书管理等。因此,使用SM9算法不需要申请数字证 书,适用于互联网各种新兴应用的安全保障,应用可采用手机号码或邮件地址作为公钥, 实现数据加密、身份认证、通话加密、通道加密等安全应用,并具有使用方便,易于部署 的特点。 • 不同于传统签名算法的由用户随机选择私钥然后 计算得到公钥的方式,SM9 能够实现用户指定公 钥(即身份标识),密钥生成中心通过公钥计算0 码力 | 44 页 | 3.70 MB | 1 年前3
基于静态分析的Rust内存安全缺陷检测研究("alice:{}", alice); println!("bob:{}", bob); *alice = 2; } bob只读借用Box对象, alice临时失去修改权, 保留只读权 alice可读 bob自动归还Box对象, alice恢复修改权 如果需要违背XOR Mutability怎么办? ❑ 以双向链表为例,中间节点被前后两个节点访用 ❑ Rust为了提升可用性所做的妥协 ▪ 智能指针(性能损失)0 码力 | 28 页 | 1.55 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0`target/debug/variables` The value of x is: 5 The value of x is: 6 通过 mut,允许把绑定到 x 的值从 5 改成 6。是否让变量可变的最终决定权仍然在你,取决于 在某个特定情况下,你是否认为变量可变会让代码更加清晰明了。 常量 类似于不可变变量,常量 (constants) 是绑定到一个名称的不允许改变的值,不过常量与变量 还是有一些区别。 当尝试在调用 takes_ownership 后使用 s 时,Rust 会抛出一个编译时错误。这些静态检查使 我们免于犯错。试试在 main 函数中添加使用 s 和 x 的代码来看看哪里能使用它们,以及所有 权规则会在哪里阻止我们这么做。 返回值与作用域 返回值也可以转移所有权。示例 4-4 展示了一个返回了某些值的示例,与示例 4-3 一样带有类 似的注释。 文件名:src/main.rs fn main() 所以什么也不会发生 变量 s 有效的作用域与函数参数的作用域一样,不过当 s 停止使用时并不丢弃引用指向的数 据,因为 s 并没有所有权。当函数使用引用而不是实际值作为参数,无需返回值来交还所有 权,因为就不曾拥有所有权。 我们将创建一个引用的行为称为 借用(borrowing)。正如现实生活中,如果一个人拥有某样 东西,你可以从他那里借来。当你使用完后,必须还回去。因为我们并不拥有它的所有权。0 码力 | 562 页 | 3.23 MB | 21 天前3
Rust语言核心竞争力-庄晓立资源析构函数(Drop),无论该资源在堆上还是栈上。 Rust的RAII青出于蓝而胜于蓝(蓝=C++) (std::unique_ptr) Borrowing(租借使用权) Shared borrow (多人共享/只 读) Mutable borrow (独家修改和使用权) &T &mut T &T Owners Clients 好借好还再借不难 我死之前必须还我 Lifetime • Lifetim0 码力 | 51 页 | 1.09 MB | 1 年前3
Rust 程序设计语言简体中文版`target/debug/variables` The value of x is: 5 The value of x is: 6 通过 mut ,允许把绑定到 x 的值从 5 改成 6 。是否让变量可变的最终决定权仍然在你,取 决于在某个特定情况下,你是否认为变量可变会让代码更加清晰明了。 常量 类似于不可变变量,常量 (constants) 是绑定到一个名称的不允许改变的值,不过常量与变量 还是有一些区别。 当你准备好继续的时候,让我们讨论一个其他语言中 并不 常见的概念:所有权 (ownership)。 70/600 Rust 程序设计语言 简体中文版 4 . 认 识 所 有 权 认识所有权 ch04-00-understanding-ownership.md commit a5e0c5b2c5f9054be3b961aea2c7edfeea591de8 所有权(系统)是 借用(borrowing)、slice 以及 Rust 如 何在内存中布局数据。 71/600 Rust 程序设计语言 简体中文版 4 . 1 . 什 么 是 所 有 权 ? 什么是所有权? ch04-01-what-is-ownership.md commit 3d51f70c78162faaebcab0da0de2ddd333e7a8ed Rust 的核心功能(之一)是0 码力 | 600 页 | 12.99 MB | 1 年前3
Rust在Substrate 开发框架中的使用随着区块链技术的发展,交易成本、 确认时间、能源消耗、安全性、互通 性都有极大地提升。 国际支付 金融交易 去中心自 治组织 信息登记 存证 应用链开发 - 房产登记交易平台 房主登记房产信息 房管局认证登记信 息 房主出售房产 房管局授权交易 买房购买锁定房产 05 01 02 03 04 pub struct Property{ id: Hash, size: 0 码力 | 37 页 | 967.22 KB | 1 年前3
共 15 条
- 1
- 2













