confidential-ml-transport - 机密机器学习传输(Confidential ML Transport)
confidential-ml-transport 是一个用于在可信执行环境(TEE)中进行机密AI推理的Rust加密通信库。
核心功能
- 认证绑定会话:会话密钥从认证文档派生,将加密通道绑定到已验证的TEE身份
- 全通道加密:使用X25519+ChaCha20Poly1305加密所有握手后的帧
- 二进制帧协议:13字节固定头部,支持高达32 MiB的有效载荷
- 张量数据传输:专门优化的张量子头部结构,8字节对齐,支持F32/F64/I32等多种数据类型
- 可插拔传输:支持TCP和VSock后端
- 可插拔认证:基于特征的认证提供者/验证者,支持模拟和Nitro实现
安全特性
- 密钥材料保护:对称密钥在销毁时清零,包含DH贡献性检查
- 单调序列强制:每条解密消息都有重放保护
- 加固握手:可配置超时,强制公钥绑定,序列验证
- 测量验证:握手期间验证PCR/测量寄存器
握手协议
三消息协议建立加密会话:
- 客户端发送临时X25519公钥和随机数
- 服务器响应其公钥、随机数和绑定公钥的认证文档
- 客户端验证认证,派生会话密钥,发送确认哈希
快速开始
git clone https://github.com/cyntrisec/confidential-ml-transport.git
cd confidential-ml-transport
cargo run --example echo_server --features mock
支持的消息类型
- Hello(握手)、Data(应用数据)、Error(错误)、Heartbeat(保活)、Shutdown(关闭)、Tensor(张量数据)
https://github.com/cyntrisec/confidential-ml-transport
Expression Solver - 一个用 Rust 编写的最小化表达式语言、编译器和基于栈的虚拟机项目
Expression Solver是一个用 Rust 编写的最小化表达式语言、编译器和基于栈的虚拟机项目。它能够解析高级数学和逻辑表达式,将其编译为自定义字节码,并在专用虚拟机上执行。设计灵感来自 LISP 风格表达式、栈机器和经典编译器架构。
核心特性
- 完整的编译流程:词法分析器 → 解析器 → 抽象语法树(AST) → 编译器 → 虚拟机 → 结果
- 基于栈的虚拟机:采用栈式执行模型
- 基于寄存器的变量存储:变量存储在寄存器中
- 词法作用域:通过
define实现 - 支持算术和比较运算符
- 条件执行:支持
if条件语句 - 图灵完备的设计
语言特点
- 纯表达式语言:一切皆为表达式,包括算术运算、变量定义和条件语句
- 支持的操作:
- 整数字面量
- 变量定义(
define) - 算术运算符(
+,-,*,/,%,**,//) - 比较运算符(
==,!=,<,>,<=,>=) - 条件分支(
if)
技术架构
- 解析器:递归下降解析器,支持优先级处理
- 编译器:遍历 AST 生成线性字节码,负责栈管理、寄存器分配和控制流转换
- 虚拟机指令:包括栈操作(PSH/POP)、算术运算(ADD/SUB/MUL/DIV)、比较操作、寄存器操作(SET/GET)和控制流(JZ/JMP/HLT)
未来扩展方向
- 用户自定义函数
- 递归支持
- 垃圾回收机制
- 字节码优化器
- 调试/追踪工具
作者: omniflare
仓库: https://github.com/omniflare/expression-solver
https://github.com/omniflare/expression-solver
--
From 日报小组 Mike
社区学习交流平台订阅:
1
共 0 条评论, 1 页
评论区
写评论还没有评论