2013-08-30 107 views
1

我想编写用密码保护来创建文本文件的java程序。这意味着当用户打开文件时,它应该询问密码以打开文件。任何人都可以给我一些想法,我怎么能做到这一点?使用java创建受密码保护的文本文件

+0

这是不可能的!操作系统将打开txt文件,无论是什么 – MaVRoSCy

回答

1

简单的密码保护是不可能的,因为(正如@MaVRoSCy指出的)操作系统不会阻止某些其他应用程序忽略你的密码保护方案。

你可以做的是加密使用密码作为编码/解码密钥的文本文件。但是,这种方法很容易受到暴力攻击和使用“彩虹桌”的攻击。

使用具有大量熵的适当密钥进行加密是一种更好的方法。


反正这个问题是一个良好的开端:Java 256-bit AES Password-Based Encryption

+0

AES蛮力攻击将是不切实际的http://crypto.stackexchange.com/questions/1145/how-much-would-it-cost-in-us-dollars-to brute-force-a-256-bit-key-in-year- –

+1

废话!无论使用什么加密算法,使用密码作为“秘密”的系统都与密码一样好。请正确阅读问题。 –

+0

这是真的,感谢您的更正。 –