测试加密方案中的缺陷?试试谷歌的这款工具(附下载地址)

来自谷歌的安全专家最近开辟了一款测试工具Wycheproof,开辟者可用它来发觉加密方案中存在的缺陷。
这款工具中部署了一些比较常见的加密攻击。据讲这套测试基本关心谷歌安全专家发觉加密库中超过40个安全BUG,同时他们也基本将咨询题呈报给了供应商。
Wycheproof由Google安全小组的成员开辟和维护,但不是Google的官方产品。取名灵感来自于世界上最小的山——Mount Wycheproof,仅43米高,寓意开辟那个工具是谷歌安全小组要实现的一具小目标。怎么讲,越小的山越容易爬嘛~
Wycheproof的开辟者在博客中提到:
要懂在密码学中,微妙的错误大概导致灾害性的后果。我们发觉第三方加密软件库频繁降入已有的“陷阱”,如此特别耗时刻。 可是,健全的处理想法却特别难实现,因为要理解怎么安全地降实密码大概需要吃透几十年的密码学学术文献。我们懂软件工程师会经过单元测试的方式修复或防止产生漏洞,我们发觉加密漏洞能够经过如此的方式来解决。
有了这些发觉,因此我们开始开辟Wycheproof项目。经过一系列单元测试,检测某些加密算法的已知弱点或是检查预期行为。 Wycheproof项目为大多数加密算法提供测试,包括RSA,椭圆曲线加密和认证加密。我们的密码学家系统地调查了文献,大多数已知的攻击基本降实到了工具中。Wycheproof有超过80个测试方案,搞定超过40个bug。
但值得一提的是,经过了Wycheproof的测试并不代表那个加密库是安全的,高防cdn,只能证明它不容易受到Wycheproof测试项目的攻击。密码学家也在不断地发觉新的攻击。只是,有了Wycheproof开辟者或是用户就能够直截了当应用大量的已知攻击测试他们的加密库,而无需花费多年阅读学术论文或自个儿成为密码学专家。
下载地址
能够做的测试:Wycheproof项目包括最流行的加密算法测试
AES-EAX
AES-GCM
DH
DHIES
DSA
ECDH
ECDSA
ECIES
RSA
能够检测加密库中的很多攻击,包括:
无效曲线攻击(Invalid curve attacks)
数字签名方案中的biased nonces
所有的Bleichenbacher攻击
还有更多 – Wycheproof拥有超过80个测试用例
使用讲明安装Bazel
安装 :Java 密码扩展无限制权限策略文件,那个文件允许测试使用大型密钥。 否则会有特别多“iilegal key size”异常。
检查测试
git clone https://github.com/google/wycheproof.git测试最新稳定版本Bouncy Castle
bazel test BouncyCastleAllTests测试其他版本。比如v1.52
bazel test BouncyCastleAllTests_1_52测试所有已知版本
bazel test BouncyCastleAllTests_*测试Spongy Castle,用Spongy Castle替换BouncyCastle
bazel test SpongyCastleAllTests测试当前安装的OpenJDK:
bazel test OpenJDKAllTests 使用时要注意的地点:请注意,OpenJDKAllTests需要OpenJDK是您的默认JDK,假如您使用其他JDK,CC防御,大概无法运行,其结果大概不正确。 假如您从Oracle或https://java.com下载了JDK,这么您大概使用的是Oracle JDK,它应该与OpenJDK兼容,测试应该可以正确运行。
有点测试需要特别长时刻才干完成。 假如要排除这些测试,请使用BouncyCastleTest,SpongyCastleTest或OpenJDKTest,CC防御,它们会排除所有慢速测试(标有@SlowTest注释)。
每一次测试失败都有大概是安全隐患,想要了解更多对于测试失败的缘由能够查看GitHub上的文档或者相应的测试项目的函数和注释。
版权保护: 本文由 主页 原创,转载请保留链接: /web/183178.html
- 上一篇:平安科技信息安全及内控部聘请
- 下一篇:Fansmitter利用声波入侵物理隔离系统