加密文本并保存到文本文件。也可以读取和解密Java

加密文本并保存到文本文件。也可以读取和解密Java,java,encryption,text,Java,Encryption,Text,我正在尝试使用自己的密码密钥加密字符串。 生成加密文本后,我需要将其保存到文本文件以供以后使用。我还需要读取加密文本并解密它。如果有人能给我一个在JavaSE应用程序中实现这一点的解决方案,那就太好了 Spring的文本加密机怎么样。它不是严格意义上的SE,但对于您的用例来说可能仍然足够好 import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.io.IOExcepti

我正在尝试使用自己的密码密钥加密字符串。
生成加密文本后,我需要将其保存到文本文件以供以后使用。我还需要读取加密文本并解密它。如果有人能给我一个在JavaSE应用程序中实现这一点的解决方案,那就太好了

Spring的文本加密机怎么样。它不是严格意义上的SE,但对于您的用例来说可能仍然足够好

import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import org.apache.commons.io.IOUtils;
import org.springframework.security.crypto.encrypt.Encryptors;
import org.springframework.security.crypto.encrypt.TextEncryptor;

public class Main {

    public static void main(String[] args) throws IOException {
        TextEncryptor te = Encryptors.text("12345abc", "1234"); //password, salt.... in hex
        File file = new File("someFile.txt");
        FileWriter fw = new FileWriter(file);
        String encryptedText = te.encrypt("hellow world!");
        fw.append(encryptedText);
        fw.close();

        String text = IOUtils.toString(new FileInputStream(file));
        System.out.println(te.decrypt(text));

    }

}

密码解密程序非常简单,其概念如下:消息-函数-密码消息。它包含密码的函数可以选择存在的复杂且不安全的函数之一,或者将其发明为您的相同函数。函数应完成inyectiva和sobreyectiva,并且处理将是消息和函数之间的异或。反虹吸是这个过程的逆过程。这个秘密存在于您选择的密码函数中。了解Kerckhoffs和Vernam Shannon的一次性pad的原理。我还建议您看一些关于文件I/O的java书籍。

如果有人能给我一个在java SE应用程序中实现这一点的解决方案,那将是非常棒的-抱歉,这不会发生。请查看java.crypto包。有一个好的开始。