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

如何为FPE(格式保持加密)函数编写java代码?,java,encryption,cryptography,Java,Encryption,Cryptography,对于FPE,我已将明文作为38D8DDD0D2(10位)传递,并将调整值作为18ad3a1387a9bceb9bd223c4491cab7(32位)传递,以进行加密和解密,这些加密和解密正在工作,但无法实现FPE格式 但对于FPE(格式保留加密),输出加密值的格式和长度应与纯文本(10位)相同 总的来说,如果我给出输入的10位字符串值,那么加密值将是相同的格式,长度为10位,解密后再次返回相同的输入字符串 请帮我做那件事。谢谢我认为您混淆了FPE模式和其他更常见的AES模式,例如,您共享的示例代

对于FPE,我已将明文作为
38D8DDD0D2
(10位)传递,并将调整值作为
18ad3a1387a9bceb9bd223c4491cab7
(32位)传递,以进行加密和解密,这些加密和解密正在工作,但无法实现FPE格式

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

总的来说,如果我给出输入的10位字符串值,那么加密值将是相同的格式,长度为10位,解密后再次返回相同的输入字符串


请帮我做那件事。谢谢

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


至于FPE,我认为默认的JavaJCE甚至不支持它。看看是否可以改用它的实现

如果使用流密码,则输出的长度将与输入的长度相同。你是如何加密你的明文的?你用的是什么FPE模式?您谈到一个调整值,这是否表明您正在使用FFX模式?有两个投票赞成不包括源代码。要么你要求我们实现一切,这是离题的,要么你真的应该展示你所做的。我假设有什么问题,或者“无法实现FPE格式”真的很糟糕。我已经提到了我的代码。为了更好的理解,请仔细阅读。我已经浏览了下面的链接。在这里,如果您正确检查,您将看到我作为调整值传递的secretKey“18AD3A1387A9BCEB9BD223C44391CAB7”和我作为纯文本传递的originalString=“38D8DDD0D2”。希望现在情况清楚了。所以我需要加密后的FPE格式,解密后将返回明文。如果我的流程错误,请告知我,并相应地指导我实现同样的目标。谢谢