java - 从整数到整数的 AES 加密

标签 java encryption aes

我在java中使用AES加密算法来加密我的数据库值。我的加密函数将加密值返回为字符串,但“Int”类型的列无法存储这样的字符串值,这是非常合乎逻辑的。有没有办法将整数加密为整数(数值)?谢谢。

最佳答案

普通 AES 返回一个字节数组。您可以将其存储为字节数组、Base64 文本字符串或 BigInteger:

BigInteger myBigInt = new BigInteger(AESByteArray);

128 位或更大的 AES 结果不太可能适合 32 位 Java int

如果您想要 32 位输入和 32 位输出,因此所有内容都适合 Java int,那么要么编写您自己的 32 位 Feistel cipher ,或使用Hasty Pudding Cipher ,可以设置为您需要的任何位大小。

关于java - 从整数到整数的 AES 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24227043/

相关文章:

java - 创建没有触发器的 Quartz 2.x xml 作业

c++ - “ChaCha”尚未使用 Crypto++ 在此范围内声明?

security - 是否可以使用 64 位 I/O block 大小来实现 AES?

windows - UWP 中用于 Xamarin Forms 项目的 AES 加密

java - Java 中有类似 malloc/free 的东西吗?

java - 计算 INSERT/ON DUPLICATE KEY UPDATE

Java - 想要将整数值类型转换为字节,这样我就可以以二进制格式写入文件

c# - 如何创建 "upgradable"加密类

c# - PHP Triple DES加密和兼容C#解密

java - CipherInputStream 在读取数据时挂起