如何锁定USB驱动器上的文件夹?

时间:2010-08-22 10:41:32

标签: c#

我需要实现一个功能(在C#中)来锁定USB驱动器上的文件夹。锁定后,在没有我的软件的任何PC中,此文件夹无法访问(或更好地不可见)。我尝试过使用ACL(访问控制列表),但它不适用于USB。

我原来的要求是“不要让人们在没有我的软件的情况下看到USB驱动器上文件夹的内容。当用户登录我的软件时,该文件夹是可访问的,当用户注销时,我的软件有做一些事情来确保这个文件夹在其他PC上无法访问“。这让我想到了锁定USB文件夹。

我已经尝试过使用密码压缩文件夹(不压缩),但是压缩需要时间(1 Gb约2分钟)。因此,如果我有大量数据(100 GB),则处理过程需要很长时间(软件必须在注销时进行处理)。

3 个答案:

答案 0 :(得分:9)

要使数据无法访问,您需要创建一个加密容器,您的程序将表示为现有磁盘或虚拟磁盘(驱动器号)上的虚拟文件夹。第一个是Pismo File Mount,第二个是我们的产品(Solid File System OS版本)。这两种方法都需要将内核模式驱动程序安装到系统中。这不是应用程序要求,而是OS体系结构要求。

从技术角度来看,我们的方法更加强大,因为Pismo File Mount使用过滤器驱动程序,而SolFS使用文件系统驱动程序和过滤器驱动程序更复杂,更容易出现兼容性问题(我们也有基于过滤器的产品) ,所以我有两种方法的经验)。

(注意:TrueCrypt与C#无关。所以这里不适用。)

答案 1 :(得分:5)

你看过TrueCrypt吗?

一般情况下,您不应尝试重新发明轮子,尤其是在安全要求方面。这是一个沉重的主题,你自己的文件系统应该是最后一个考虑的选择。

TrueCrypt使用两种不同的操作模式:

  
      
  • 文件托管(容器)
  •   
  • 分区/设备主存
  •   
     

注意: 除了创建上述类型的虚拟卷外,   TrueCrypt可以加密物理   Windows所在的分区/驱动器   已安装(有关详细信息,请参阅   系统加密章节。

     

TrueCrypt文件托管卷是一个   普通文件,可以驻留在任何文件上   存储设备的类型。它包含   (主持人)完全独立   加密的虚拟磁盘设备。

     

TrueCrypt分区是硬盘   使用TrueCrypt加密分区。   你也可以加密整个硬盘   磁盘,USB硬盘,USB存储器   棍棒和其他类型的存储   设备

答案 2 :(得分:1)

之前我使用过这个软件,它是开源的,所以你可能会从中获得一些东西。 http://www.truecrypt.org/

但是,我认为它适用于分区级而不是驱动级(我认为它使用自己的文件系统格式化分区)。