java中的密码填充字符串是什么



每个人都在谈论密码中的填充方案,但是需要传递给密码的实际字符串是什么?我不在乎它们是对称的还是不对称的,我只想要一个可能值的列表。

填充有多种类型,PKCS-7,零,ISO 10126,ANSI X.923等。
我建议您阅读填充,因为您似乎并不完全理解这个概念。

然后有可能你指的是加密盐。

编辑
Java 平台的每个实现都需要支持以下标准密码转换,密钥大小在括号中:

  • AES/CBC/无填充 (128)
  • AES/CBC/PKCS5填充 (128)
  • AES/ECB/无填充 (128)
  • AES/ECB/PKCS5填充 (128)
  • DES/CBC/NoPadding (56)
  • DES/CBC/PKCS5填充 (56)
  • DES/ECB/NoPadding (56)
  • DES/ECB/PKCS5填充 (56)
  • 塞德/加拿大广播公司/无填充 (168)
  • DESede/CBC/PKCS5填充 (168)
  • DESede/ECB/NoPadding (168)
  • DESede/ECB/PKCS5填充 (168)
  • RSA/ECB/PKCS1Padding (1024, 2048)
  • RSA/ECB/OAEPWithSHA-1AndMGF1Padding (1024, 2048)
  • RSA/ECB/OAEPWithSHA-256AndMGF1Padding (1024, 2048)

您可以在此处找到列表。

编辑 2
您可以在此处找到充气城堡规格。它列出了所有可用的填充方案。

块密码需要填充,流密码不需要。 块密码需要填充,因为它们加密整个块,并且您的消息可能与整数块不完全匹配。 填充用于将消息长度扩展到下一个块边界。

有关更多详细信息,请参阅维基百科关于加密填充的文章。

在大多数情况下,使用 PKCS

#7(又名 PKCS#5)填充:n 个字节,所有值为 n:

01
02 02
03 03 03
...
10 10 10 10 ... 10 10

最新更新