加密文本并保存到文本文件。还读取和解密 - Java

时间:2018-03-19 17:05:24

标签: java encryption text

我正在尝试使用自己的密码密钥加密字符串。 生成加密文本后,我需要将其保存到文本文件中以便以后使用。另外我需要阅读加密文本末端解密它。如果有人能在Java SE App中为我提供解决方案,那将会很棒。

2 个答案:

答案 0 :(得分:0)

Spring的TextEncryptor怎么样?它不是严格的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));

    }

}

答案 1 :(得分:-2)

密码解密器非常简单,概念如下:消息 - 函数 - 密码消息。该函数(它包含密码)可以选择一个现有的(复杂的和不安全的)或者发明它同一个。该函数应该完成它是inyectiva和sobreyectiva并且处理将是消息和函数之间的异或。解密是这个过程的逆过程。你选择的功能(密码)中的秘密。看看Kerckhoffs的原理和一次性的Vernam,Shannon。我还建议你看一些有关FILE I / O的java书。