什么加密算法最适合小字符串?

Lee*_*toy 18 encryption

我有一个10-15个字符的字符串,我想加密该字符串.问题是我想尽可能获得最短的加密字符串.我还想将该字符串解密回原始字符串.

哪种加密算法最适合这种情况?

Jon*_*ler 10

AES使用16字节的块大小; 如果您的10-15个字符的限制是坚定的,它非常适合您的需求.PKCS#11(IIRC)填充方案将向数据添加6-1个字节并生成恰好16个字节的输出.您实际上不需要使用加密模式(例如CBC),因为您只加密一个块.存在如何处理密钥的问题 - 总是存在如何处理加密密钥的问题.

如果您必须使用较短的数据长度来缩短字符串,那么您可能需要在CTR模式下考虑AES.这使用密钥和计数器生成一个字节流,该字节流与字符串的字节进行异或.它会使您的加密字符串与输入的纯文本字符串保持相同的长度.

您很难找到一种可靠地减少这种短字符串长度的通用压缩算法,因此在加密之前进行压缩几乎不是一种选择.


use*_*509 5

如果它只是一个短弦,你可以使用一次性垫,这在数学上是完美的保密.

http://en.wikipedia.org/wiki/One-time_pad

请确保您不会多次使用该密钥.