Files
libsmx/SECURITY.zh-CN.md
T
huangxt 0b3f239661 修正安全策略版本号
- SECURITY.md 和 SECURITY.zh-CN.md 版本支持改为 0.1.x
- 与当前 Cargo.toml 版本 0.1.0 保持一致
2026-03-07 20:56:52 +08:00

1.7 KiB
Raw Blame History

安全策略

支持版本

版本 是否支持
0.1.x
< 0.1

报告漏洞

如果您发现 libsmx 存在安全漏洞,请负责任地报告:

邮箱: kintai@foxmail.com

请包含:

  • 漏洞描述
  • 复现步骤
  • 受影响版本
  • 潜在影响评估

响应时间:

本项目由个人维护,不设固定响应时间。作者会尽快处理所有安全报告,但无法承诺具体的响应期限。

范围

以下领域属于安全报告的有效范围:

  • 时序侧信道:执行时间依赖于秘密数据(私钥、明文、随机数)的操作
  • 内存安全:缓冲区溢出、释放后使用或未初始化内存读取(注:本库使用 #![forbid(unsafe_code)]
  • 密钥材料泄露:私钥或中间秘密值未正确清零
  • 密码学正确性:偏离 GB/T 标准导致安全保证减弱
  • 认证绕过GCM/CCM 模式中 MAC/标签验证错误

不在范围内

  • 不影响安全的性能问题
  • 依赖库漏洞(请向上游报告)
  • 需要物理访问设备的攻击

安全设计

libsmx 采用以下防护措施:

  • 常量时间操作:所有依赖秘密的代码使用 subtle::ConstantTimeEqConditionallySelectable 和固定迭代循环
  • S-box 无表查找SM4 使用布尔电路 bitslice 实现,防止缓存时序攻击
  • 自动密钥清零:所有私钥类型派生 ZeroizeOnDrop
  • 无 unsafe 代码:库级别强制 #![forbid(unsafe_code)]
  • 完整 EC 公式:SM2 点加法使用无分支完整加法公式(Renes-Costello-Batina 2016

披露策略

我们遵循协调披露原则。请不要为安全漏洞创建公开的 GitHub issue。