如何设置密码以保护文件和目录

时间:2009-03-17 07:32:18

标签: c# security passwords

如何使用C#中的密码保护文件和目录?

3 个答案:

答案 0 :(得分:3)

如果您需要保护文件和文件夹,可以选择以下几种方法:

  1. 使用ACL(访问控制列表)控制操作系统级别权限,以便只有计算机上的授权用户才能访问这些对象。这不会为文件创建新密码,但只会拒绝访问未授权的每个用户。缺点是需要在计算机(或Active Directory域)级别上完成。因此,如果您将文件复制到另一台计算机,则保护不再有效。

  2. 您可以使用压缩算法(如zip或rar)压缩受保护的文件,并指定解压缩所需的密码。即使您将zip文件复制到其他计算机,这也有效。如果您只需保护文件而不关心减小文件大小,则可以打包没有压缩因子的文件。你可以在网上找到几个.NET的开源zip库。其中之一是http://www.icsharpcode.net/OpenSource/SharpZipLib/

  3. 或者您可以使用System.Security.Cryptography中的类执行文件加密,使用对称算法,其中密码密钥是您的密码,或者是带证书的非对称加密,其中密码是私钥的密码证书。这通常比zip加密提供更强的安全性,但您必须编写更多代码并管理用户的证书。

  4. 您的具体安全和授权要求是什么?

答案 1 :(得分:2)

看看C# Encryption examples。您可以将其中一个与 this Recursive Directory Search example (死链接)结合使用,以加密目录中的所有文件(如果需要,还可以加密其子目录)。

答案 2 :(得分:0)

您可以创建一个文件,在其上创建一个加密文件系统,然后循环安装它。