Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
AES/GCM 的填充模式是什么?我知道它可以是 NoPadding,因为在 ECB 模式下它可以是 PKCS5Padding,在 GCM 模式下呢?在 JCE 界面中,我们需要提供“算法/模式/填充”(参考)。
所以我使用以下代码来获取实例,它在 JDK 中工作,但在 IBM SDK 中失败,它说
找不到支持 AES/GCM/PKCS5Padding 的提供商
Cipher.getInstance("AES/GCM/PKCS5Padding");
填充的真实用例是什么?
GCM 是一种流模式,这意味着密文只有明文的长度(不包括身份验证标签)。GCM 不需要填充。这意味着PKCS5Padding版本实际上只是NoPadding的同义词,以方便编程。一些提供商没有这种奇怪的模式。
在这些情况下,填充明文是有意义的。例如,您可以通过附加随机长度 PKCS5Padding 来隐藏实际明文的长度。