我正在审查一个应用程序,我们应该检查加密算法和使用的密钥的强度。从我对代码的回顾中,我可以看出他们正在使用3 3DES算法,这是我从在使用中提到的"DES/ECB/NoPadding“行中发现的。
但是,在搜索了关于加密的信息之后,我发现上面提到的加密只有56位的密钥大小。参考链接如下:
然而,应用程序开发人员说他们使用双倍长度的3 3DES。用上面的数据,我们只能找出3 3DES已经被使用,不能计算出密钥大小。该应用程序是用JAVA开发的。
有人能帮我找出双长或三倍长度的3 3DES已经被使用的方法吗?
(或)
提供双长或三长3 3DES实现详细信息?这样我们就能找出在我的情况下可以使用的东西。
发布于 2016-08-10 16:44:25
如果他们只使用javax.crypto和DES/ECB/NoPadding,那么他们不是在使用3DES,而是在使用DES。不仅如此,他们使用的是绝对不推荐的ECB。当然,他们可以使用标准的DES来滚动他们自己的“双长3 DES”(不管这意味着什么),但这是另一个警告信号。
如果你不得不在谷歌上搜索加密信息,你为什么还要查看代码呢?您不知道代码是否安全,这个问题证明了这一点。
https://stackoverflow.com/questions/38878851
复制相似问题