找出 AES/ECB/PKCS5Padding 的关键强度

Figure out the key strength of AES/ECB/PKCS5Padding

我正在尝试找出应用程序中使用的加密和密钥强度,我只能访问应用程序调试日志。在浏览日志时,我观察到以下项目:

我可以从以上观察得出结论,正在使用 AES,但无法弄清楚密钥强度。在这里和那里进行了几次 RnD 之后,我得出了以下结论。

正在使用AES/ECB/PKCS5PADDING是否意味着密钥长度为128位?谁能告诉我这是否正确?

Does AES/ECB/PKCS5PADDING being in use mean that the key length is 128 bit?Can someone tell me whether this is correct?

不,它不会告诉您使用的密钥。 AES 支持 128、192 和 256 位的密钥大小。我知道 Java 的所有 JCE 提供程序都使用适当的算法(AES-128、AES-192 或 AES-256),具体取决于您传入的密钥的大小。如果您无法确定字节有多大数组是作为密钥传递给密码的,那么确定强度的机会很小。

如果您可以访问 运行 所在的机器,那么您可以检查是否安装了 Unlimited Strength 策略文件(example for Java 7),这是必需的对于 256 位(和 192 位?)。如果未安装它们,则密钥很可能是 128 位宽。