工程开发
wycheproof avatar

wycheproof

使用 Wycheproof 测试向量验证加密实现,以检测已知攻击、边缘案例及合规性漏洞。

简介

Wycheproof 技能提供了一个自动化接口来访问 Wycheproof 项目,这是一个专为评估加密库正确性而设计的大规模测试向量集合。加密实现容易受到微妙漏洞的影响,例如签名可塑性、不正确的填充或对椭圆曲线坐标处理不当,这可能导致私钥泄露或解密失败。此技能使开发人员和安全审计人员能够将这些严格的测试直接集成到其 CI/CD 工作流程或手动测试过程中,确保 AES-GCM、ECDSA、ECDH、RSA 和 ChaCha20-Poly1305 等既定算法的实现符合预期的安全标准。

  • 访问用于对称加密、数字签名、密钥交换和哈希算法的标准化 JSON 测试向量。

  • 支持识别热门库中的潜在实现缺陷,包括 OpenJDK、Bouncy Castle 和各种 JavaScript 加密套件。

  • 能够根据密钥大小、IV 长度和特定加密曲线过滤测试组,以专注于相关的实现细节。

  • 针对有效、无效和可接受的结果标记进行验证,以确保对标准输入和边缘案例的稳健处理。

  • 通过 Git 子模块实现自动化集成路径,确保测试向量数据与上游社区维护的存储库保持同步。

  • 适用于安全工程师、密码学家以及审计或构建加密模块的软件开发人员。

  • 输入:选择加密算法(例如 AES-GCM、ECDSA)和本地测试环境;输出:指示特定测试向量通过/失败状态的合规性报告。

  • 限制:此技能用于验证既定算法;它不执行零日漏洞的模糊测试,也不执行针对时序侧通道的常数时间分析。

  • 使用提供的 Java 或 JavaScript 测试工具模板来有效地解析 Wycheproof 的 testvectorstestvectors_v1 目录。

  • 请务必交叉比对 JSON 测试文件中的 notes 字段,以了解为什么特定的标记被标记为 'acceptable'(可接受)或 'invalid'(无效)。

仓库统计

Star 数
4,857
Fork 数
421
Open Issue 数
29
主要语言
Python
默认分支
main
同步状态
空闲
最近同步时间
2026年4月28日 13:17
在 GitHub 查看