使用基于AES密码的加密进行Java文件加密解密
本Java教程将学习如何使用基于AES密码的加密(PBE)来加密和解密文件。 在前面的教程中,我们看到了使用TripleDES PBE来加密和解密文件。 AES比TripleDES更先进和更安全。
在本教程中,我们将使用纯文本的简单文本文件。 这可以是任何类型的文件。 我们将把它加密到另一个带有扩展名的文件中.des对于加密,我们将使用纯文本密码,然后是用于初始化密码的iv和用于编码的盐。
所有这三个密码,iv和salt都应以安全机制传递给收件人,而不是与加密文件一起传递。 收件人将使用纯文本密码iv(初始化密码)和salt来解密文件。 在我们的示例教程中,我们将再次将解密的内容写回纯文本文件。 所以一旦这个过程结束了,输入文本文件和输出文本文件内容应该匹配。
文件加密
以下Java代码是加密文件。 要测试它,请在项目根目录中放置一个名为“plainfile.txt”的文件。
AESFileEncryption.java
文件解密
以下Java代码是解密文件。 在运行之前运行上述程序。
AESFileDecryption.java