java - 如何为FPE(格式保留加密)函数编写java代码?

标签 java encryption cryptography

对于 FPE,我已将明文作为 38D8DDD0D2 (10 位数字)传递,并将值调整为 18AD3A1387A9BCEB9BD223C44391CAB7 (32 位数字),以进行加密和解密,这些加密和解密有效,但不起作用能够实现FPE格式。

但对于 FPE(格式保留加密),输出加密值的格式和长度应与明文(10 位)相同。

总的来说,如果我给输入 10 位数字字符串值,那么加密值将具有相同的格式和 10 位数字长度,并且在解密后再次 - 将返回相同的输入字符串。

请帮我做到这一点。谢谢

最佳答案

我认为您将 FPE 模式与其他更常见的 AES 模式混淆了,例如,您共享的示例代码适用于 ECB 模式。不幸的是,在 Java 中使用不同的 AES 模式并不是即插即用的,每种模式的使用和处理都必须略有不同。

至于 FPE,我认为默认的 Java JCE 甚至不支持它。看看是否可以使用 this而是实现它。

关于java - 如何为FPE(格式保留加密)函数编写java代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50409591/

相关文章:

java - 如何使用依赖Java项目的Ant构建Android项目?

ios - 在 iOS 上使用 SHA256 哈希

encryption - ECIES是公共(public)加密算法吗?

Android Dev : Run custom code in the Trusted Execution Environment (TEE), 扩展 keystore

java - 将自定义实用程序 JAR 添加到 Windows 系统路径

java - 我正在从 log4j.xml 迁移到 log4j2.xml 。如何在 log4j2.xml 中的 RollingAppender 中设置 <param name ="Append"value ="true"/>

java - 如何使用java正则表达式过滤xml文件

c++ - C++ 中的 AES/Rijndael Microsoft CryptoAPI

python - 抓取 API 返回看起来像是加密数据的内容

database - 在 Oracle 中推荐的加密方式是什么?