隐藏文本文件中的密码

时间:2016-08-13 10:14:27

标签: java file text password-encryption

我需要在文本文件中保存用户名和密码,格式为:用户名#password 。 Java中是否有隐藏密码字符的方法? 所以,如果我打开那个txt文件密码就无法读取。

2 个答案:

答案 0 :(得分:2)

txt文件是纯文本文件,这意味着除非加密,否则无法隐藏其内容:

Simplest way to encrypt a text file in java

或者,如果更改需求是一个选项,则可以存储哈希而不是密码:

How can I hash a password in Java?

答案 1 :(得分:0)

代码如下:

public class mjm {

public static void main(String[] args) {
    String k="xyz@gmail.com#abcd1234";
    //xyz.gmail.com is id and abcd1234 passward
    //encrypting passward starts here
    char[] b=k.toCharArray();
    System.out.println(k);

    for(int a=0;a<b.length;a++)
    {
        int c=(int)(b[a]);
        c=c^31;
        b[a]=(char)c;
    }
    k=new String(b);
    System.out.println(k);
    //decryption code of above encrypted code is as follow
     b=k.toCharArray();
    for(int a=0;a<b.length;a++)
    {
        int c=(int)(b[a]);
        c=c^31;
        b[a]=(char)c;
    }
    k=new String(b);
    System.out.println(k);
    }
}

您必须使用相同的号码31加密和解密。该ID为 xyz@gmail.com ,密码为 abcd1234 (两者均以#分隔)。

第一个for循环是将这些加密到一个不可读的文本文件。第二个for循环是将加密代码解密回正常。你只需要记住XOR因子是31。