我将创建一个Java程序,通过使用只有密码才能访问的文件来“锁定”USB驱动器。执行此操作的类似软件是USB安全保护。
以下是我在想的事情:
将所有文件存储在USB上的单个存档中。
使用AES或。加密存档 河豚
隐藏存档。
问题是,如何“解锁”USB?我可以采取什么方法?以下是我的想法:
Ramdisk:从加密的arhive 加载Ramdisk 是非常困难的,如果不是不可能的话。虽然它在c ++中可能是合理的,但我认为Java可能要困难得多,并且可能涉及搞乱系统类,这会破坏软件的兼容性并破坏使用Java的整个目的。
将未加密的存档加载到USB - 没有人喜欢等待10分钟才能查看USB上的文件。复制所有文件可能需要一些时间。另外,USB上的可用空间怎么样?
将未加密的存档加载到硬盘 - 虽然非常不安全且容易出错,但这似乎是唯一可行的方法。
创建自定义文件浏览器,允许用户浏览存档 - 您是否使用winrar浏览文件?你想做吗?没有。创建自定义文件浏览器需要花费大量时间来创建,并且再次是一种容易出错且用户不友好的方法。
我想不出任何其他方式这样做。谁能想到更好的方法?请注意,这将是免费的开源软件。
答案 0 :(得分:0)
TrueCrypt是免费的开源软件,用于在存储设备(即USB驱动器)上存储加密文件。它可以在Windows,Linux和MacOS上运行。 TrueCrypt甚至允许隐藏卷。我将从他们的源代码开始,然后从那里开始。