SECURITY SUMMARY
2025/11/23大约 2 分钟技术总结总结
安全性总结报告
提示
提示:本章要点
- 已有措施(代码可查)
- 使用建议
- 已知限制
- 依赖项安全
- 漏洞披露
前置说明
- 未进行第三方安全审计,以下内容仅描述当前实现与使用建议。
- 生产环境请在目标平台自行复核随机源、依赖版本与关键路径。
已有措施(代码可查)
| 项目 | 说明 |
|---|---|
| 常量时间比较 | SM2 解密的 C3 校验使用常量时间比较,降低时序侧信道风险。 |
| 输入校验 | SM2 公私钥与密文格式进行长度/前缀验证。 |
| 随机数来源 | 优先使用 Web Crypto / Node crypto.randomBytes,可配置严格策略。 |
| 依赖最小化 | 运行时仅 @noble/curves 与 @noble/hashes。 |
使用建议
| 项目 | 说明 |
|---|---|
| 随机数 | 确保运行环境具备 CSPRNG,避免在降级环境使用。 |
| 用户 ID | SM2 签名/验签需一致的 userId,GM/T 0009-2023 推荐 ''。 |
| IV/Nonce | SM4-GCM 与 ZUC/CTR 类模式必须保证同一密钥下 IV 不复用。 |
| 完整性 | 非 AEAD 模式需要额外 MAC(如 HMAC-SM3)。 |
| 错误处理 | 避免将内部错误信息直接返回给终端用户。 |
已知限制
| 项目 | 说明 |
|---|---|
| 审计缺失 | 未完成独立安全审计。 |
| 侧信道风险 | JavaScript 环境难以提供强侧信道防护。 |
| 密钥管理 | 库不负责密钥生命周期管理。 |
依赖项安全
- 定期执行
npm audit并关注 noble 库安全通告。 - 版本升级后重跑
npm test与npm run type-check。
漏洞披露
如发现安全问题,请通过 GitHub Issues 或维护者联系方式进行负责任披露。