简谈 Rust 与国密 TLS - 王江桐位,摘要值长度为 256 位,其中使用了异或、模、模加、移位、与、或、非运算,由填充、迭代过程、消息扩展和压缩 函数所构成。 • 保证信息的完整性。 • 在商用密码体系中,SM3 主要用于数字签名及验证、消息认证码生成及验证、随机数生成、密钥 扩充等。据国家密码管理局表示,其安全性及效率要高于 MD5 算法和 SHA-1 算法,与 SHA- 256 相当。 • SM3 将对长度为l(l < 2^64) 比特的消息 Cryptography),非对称加密,标识加密将用户的标识 (如微信号、邮件地址、手机号码、QQ 号等)作为公钥,省略了交换数字证书和公钥过程,使得 安全系统变得易于部署和管理。提供签名校验,密钥交换,密钥封装与加解密功能。由于以上用 例,可以用于网络安全密码协议,如SSL/TLS。 • 保证数据机密性、真实性和完整性。 • 在商用密码体系中,SM9 主要用于用户的身份认证,据新华网公开报道,SM9 的加密强度等同于 端保护、物联网安全、云存储安全等等。这些安全应用可采用手机号码或邮件地址作为公钥,实现 数据加密、身份认证、通话加密、通道加密等。 SM9 Introduction of SM9 Rust China Conf 2022 – 2023, Shanghai, China • 引入标识密码的优势: • 实现基于身份的密码体制,也就是公钥与用户的身份信息即标识相关,从而比传统意义上 的公钥密码体制有许多优点,省去了证书管0 码力 | 44 页 | 3.70 MB | 1 年前3
Rust在Substrate 开发框架中的使用中心应用的问题: ● 难以保证不作恶 ● 用户隐私问题 ● 代码安全 ● 隐藏成本高 ● 服务不可用 ● …… web 2.0 中心应用的问题: ● 难以保证不作恶 ● 用户隐私问题 ● 代码安全 ● 隐藏成本高 ● 服务不可用 ● …… web 2.0 Vs web 3.0 去中心应用 – 解决方案 ● 分叉、链上治理 ● 用户拥有数据主权 ● 开源可审查 ● 分享权益 随着区块链技术的发展,交易成本、 确认时间、能源消耗、安全性、互通 性都有极大地提升。 国际支付 金融交易 去中心自 治组织 信息登记 存证 应用链开发 - 房产登记交易平台 房主登记房产信息 房管局认证登记信 息 房主出售房产 房管局授权交易 买房购买锁定房产 05 01 02 03 04 pub struct Property{ id: Hash, size: 0 码力 | 37 页 | 967.22 KB | 1 年前3
Rust 在算法交易中的实际应用与积极效应交易平台,满足自身在量化行业交易业务的同时也为 券商、量化私募等众多大型金融机构提供优质的算法 交易解决方案。 公司介绍 证监会信息技术系统备案 国家高新技术企业 科技型中小企业 双软企业资质认证 智能投研技术联盟核心成员 100+ 团队规模 80亿+ 日均成交额 100+ 合作机构 公司结构 50% 工程师 20% 策略研究 20% 运维中台 10% 市场商务 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测 交易指令 交易指令 1. 低延迟高吞吐的一写多读消息队列 2. 基于共享内存,全用户态,零拷贝(配合 capnproto) 3. 针对 x86_64、AArch64 架构分别优化,CPU Cache 友好 Rust 进程间通信 XSHM Rust 全栈应用实践 - 行情、与API接入0 码力 | 18 页 | 3.49 MB | 1 年前3
Comprehensive Rust(简体中文) 202412. . . 46 9.5.1 解答 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 10 用户定义的类型 48 10.1 结构体 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Afternoon (2 hours and 35 minutes, including breaks) Segment Duration 元组和数组 35 minutes 引用 55 minutes 用户定义的类型 50 minutes • Day 2 Morning (2 hours and 55 minutes, including breaks) Segment Duration 欢迎 3 Cargo.toml 文件为 crate 选择合适的版本。 – 为免分割生态系统,Rust 编译器可以混合使用为不同版本编写的代码。 – 请注意,不借助 cargo 直接使用编译器的情况相当少见(大多数用户从不这样做)。 – 值得一提的是,Cargo 本身就是一个功能强大且全面的工具。它能够实现许多高级功能,包括 但不限于: * 项目/软件包结构 * 工作区 * 开发依赖和运行时依赖管理/缓存 *0 码力 | 359 页 | 1.33 MB | 10 月前3
2021信创“大比武”鲲鹏基础软件开发赛道
基于Rust语言的openGauss驱动全的数据库,社区支持Rust驱动可以更方便Rust语言开发者更好地基 于openGauss开发Rust应用。 要求 使用Rust语言实现openGauss数据库驱动 基于SHA256进行权限认证 能够执行增删改查SQL语句 4 方案介绍 - 思路 × 参考 JDBC 标准,使用 rust 语言实现一个简单的只包含核心部分的版本 √ 基于开源的 rust-postgres 驱动开发,实现基于 方案介绍 - 认证流程 startup 会首先建立连接,同时会发送认证协议的版本; 服务器会响应具体的认证方式以及该认证方式所需的信息; 客户端根据要求的认证方式通过认证后,就可以向服务器端发送各种数据库命令 6 方案介绍 - 认证流程 7 方案介绍 - SHA256认证 SHA256 认证是 openGuass 在 postgres 支持的认证方法之上,额外提供的一种更安全的认证方式。 其认证流程遵循 其认证流程遵循 RFC5802 标准 8 方案介绍 - 代码 postgres-protocol/src/message/backend.rs 中进行鉴权方式判定 9 方案介绍 - 代码 tokio-postgres/src/connect_raw.rs 中实现 SHA256 的加密及通信 postgres-protocol/src/message/frontend.rs 中设定版本0 码力 | 14 页 | 566.24 KB | 1 年前3
Rust 程序设计语言简体中文版Rust 能让你 把在一个领域中学习的技能延伸到另一个领域:你可以通过编写网页应用来学习 Rust,接着 将同样的技能应用到你的 Raspberry Pi(树莓派)上。 本书全面介绍了 Rust 为用户赋予的能力。其内容平易近人,致力于帮助你提升 Rust 的知识, 并且提升你作为程序员整体的理解与自信。欢迎你加入 Rust 社区,让我们准备深入学习 Rust 吧! —— Nicholas Matsakis abstractions)—— 将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你已经有其他编程 编译器。 在 macOS 上,你可以通过运行以下命令获得 C 语言编译器: $ xcode-select --install 12/600 Rust 程序设计语言 简体中文版 Linux 用户通常需要根据发行版(distribution)文档安装 GCC 或 Clang。比如,如果你使用 Ubuntu,可以安装 build-essential 包。 在 Windows 上安装 rustup0 码力 | 600 页 | 12.99 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0Rust 能让你 把在一个领域中学习的技能延伸到另一个领域:你可以通过编写网页应用来学习 Rust,接着 将同样的技能应用到你的 Raspberry Pi(树莓派)上。 本书全面介绍了 Rust 为用户赋予的能力。其内容平易近人,致力于帮助你提升 Rust 的知识, 并且提升你作为程序员整体的理解与自信。欢迎你加入 Rust 社区,让我们准备深入学习 Rust 吧! —— Nicholas Matsakis abstractions)—— 将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你已经有其他编 Rust 包依赖于 C 代码,因此需要安装一 个 C 编译器。 在 macOS 上,你可以通过运行以下命令获得 C 语言编译器: $ xcode-select --install Linux 用户通常需要根据发行版(distribution)文档安装 GCC 或 Clang。比如,如果你使用 Ubuntu,可以安装 build-essential 包。 12/562Rust 程序设计语言 简体中文版0 码力 | 562 页 | 3.23 MB | 26 天前3
Rust HTTP 协议栈在终端通信场景的实践 - 胡凯HTTP 协议介绍 HTTP 协议,即超文本传输协议(HyperText Transfer Protocol)是一种用于分布式、协作式和超媒体 信息系统的应用层协议。 HTTP 是一个客户端(用户)和服务端(网站)之间请求和应答的标准。 Rust China Conf 2022 – 2023, Shanghai, China HTTP 协议介绍 HTTP 协议主要具有以下特点: ✓ 支持客户/服务器模式。 协议有良好支持: HTTP 协议是以 TCP\TLS\UDP 等各种连接为基础的,非常依赖于高性能的 IO 操作。 利用 Rust 异步实现 HTTP 协议和各种应用程序能得到十分可观的性能提升,并且能降低用户编码的难度。 Rust China Conf 2022 – 2023, Shanghai, China Rust 与 HTTP 协议 借助于 Rust 异步能力的热门 Rust HTTP 协议库或应用库: 网络不稳定:移动端网络经常受到用户或者环境影响而产生波动。 ➢ 流量限制:移动端网络流量受到用户的限制。 ➢ 设备资源有限:移动端设备CPU、内存等资源较少。 Rust China Conf 2022 – 2023, Shanghai, China 终端 HTTP 协议场景浅析 从用户使用的角度出发: ➢ 下载进度:对于一些涉及上传或下载的应用软件,进度显示能够给用户及时性的反馈。 ➢ 速0 码力 | 26 页 | 1.25 MB | 1 年前3
KCL: Rust 在编译器领域的实践与探索4. 通过 FFI 暴露 C API 供多语言使用和扩展、方便集成 5. WASM 支持友好 6. 智能合约语言? 为什么选择 Rust? 03 重写的收益 稳定性和性能提升 IDE:用户体验提升 源于 Rust 强大的编译检查和错误 处理方式, 更少的 Bug 稳定性提升 端到端编译执行性能提升了 66% 66 % 20 & 40 前端解析器性能提升 20倍 中端语义分析器性能提升40倍 版本的一半 01 02 03 04 Case1: 单文件编译 > https://github.com/KusionStack/kcl#showcase Case2: Konfig模型 + 用户定义 > https://github.com/KusionStack/konfig/blob/ main/base/examples/native/nginx_d 单文件 用户定义 + Konfig (120+) Python Rust 1 50 1.31 55 0 10 20 30 40 50 60 单文件 用户定义 + Konfig (120+) Python Rust 390 840 414 350 0 100 200 300 400 500 600 700 800 900 单文件 用户定义 +0 码力 | 25 页 | 3.50 MB | 1 年前3
WebAssembly 简介 - 陈思衡包括 Chrome、Firefox、Safari 和 Edge。 # 标准稳定 # 多语言支持 WebAssembly 设计为安全地嵌入到网页 中。它提供一种沙箱环境,禁止直接访问 浏览器功能或用户数据。而是需要通过 host function 来访问宿主环境。 # 安全性 现在多种语言都有编译器支持 WebAssembly,如 C/C++、Rust、Go、Zig 等。 WebAssembly 很适合运行在物联网设备上。使用 WASM 可以让这些设备运行更复杂的逻 辑,实现设备间的互操作性。 2. 云计算: WASM 模块可以部署在云端运行,为用户提供服务。因为 WASM 是sandbox的,所以可以保证代码的安全 性。WASM 的模块化也让云端应用更易于构建和部署。 3. 用户定义函数(UDF):WASM UDF 安全性更高。WASM 运行在沙箱中,访问受限,可以防止恶意 UDF 对数据和系 统产生破坏。与解释执行的 统产生破坏。与解释执行的 UDF 相比,WASM 作为二进制格式可以获得更高的运行性能。 WASM 中 IO 阻塞问题 WASM 使用场景和问题 在 WASI 和 一些用户自定义的 Host function 中,难免存在一些如网络服务的阻塞行为。当在 tokio 之类的 async runtime 中执行一些特别的 WASM 时就会遇到 WASM 阻塞 tokio 最终导致服务不可用的情况。 阻塞示例0 码力 | 24 页 | 773.46 KB | 1 年前3
共 22 条
- 1
- 2
- 3













