【发布时间】:2018-08-27 12:08:36
【问题描述】:
我的 java 应用程序将数据存储在用户主目录的文件夹中。 如何加密该文件夹但使用应用程序访问加密文件夹?
我尝试使用 java (Java Cryptography Extension (JCE)) 加密该文件夹,但如果不解密就无法从我的应用程序中访问该文件夹。
我需要用户不能访问这个文件夹,只能在我的应用程序中。
【问题讨论】:
-
如果不解密,您将无法访问加密文件夹。您可能希望在一个临时文件夹中执行此操作,以便在您的应用程序中使用未加密的副本,而使原始文件夹保持加密状态。
-
我不确定我是否理解正确,但是如果您想要加密文件,只能由您的应用程序读取 - 那么您所需要的只是一种可以加密数据的方法,一种再次解密它的方法和一些密钥(你想保存的地方)。然后,您的应用程序所要做的就是在将数据写入文件之前对其进行加密,并在需要时再次对其进行解密。密钥和有关加密的所有其他内容都应该以您的用户看不到的方式处理。此外,您可以隐藏系统中的文件(在 unix 中,在文件名前加上
.)并给它们“加密”的名称。 -
为什么不能加密文件本身而不是“文件夹”?如果文件名泄露了他们存储的内容(尽管是加密的),你甚至可以混淆文件名,如果你也关心的话。
标签: java swing io jfilechooser jce