C# 如何为wpf应用程序加密文件夹和文件

C# 如何为wpf应用程序加密文件夹和文件,c#,image,xaml,encryption,directory,C#,Image,Xaml,Encryption,Directory,我正在做一个WPF项目,负责显示一个图片库。 图片存储在文件夹中。 我想知道是否有办法对文件夹和图片进行加密以保护文件(用户不应该看到文件),但我想保留通过代码浏览这些文件夹以构建我的库的可能性。我能想到的最佳方法是使用密码将文件和文件夹存储在Zip存档中。Windows本机支持Zip文件。支持zip文件的选项很多,包括和 请注意,这并不能真正保护文件免受用户篡改;它只是在不经意的观察者面前隐藏它们。此外,可能会有速度处罚;您应该使用最快的压缩选项。您可以使用Zip存档和其他方式: 您可以将另一

我正在做一个WPF项目,负责显示一个图片库。 图片存储在文件夹中。
我想知道是否有办法对文件夹和图片进行加密以保护文件(用户不应该看到文件),但我想保留通过代码浏览这些文件夹以构建我的库的可能性。

我能想到的最佳方法是使用密码将文件和文件夹存储在Zip存档中。Windows本机支持Zip文件。支持zip文件的选项很多,包括和


请注意,这并不能真正保护文件免受用户篡改;它只是在不经意的观察者面前隐藏它们。此外,可能会有速度处罚;您应该使用最快的压缩选项。

您可以使用Zip存档和其他方式: 您可以将另一个项目(库)添加到主解决方案中,将图像文件夹添加到应用程序中,并将其
生成操作
属性设置为
资源
,这样,您的图像将存储在Dll中,并且可以从Dll访问它们。之前我尝试了以下链接:


您想要多强的保护?Zip文件提供目录支持。无论如何,您需要为应用程序提供密钥才能使其工作,因此它永远不会是完全安全的。什么类型的项目?什么文件夹?这是一个deskop应用程序,其中文件存储在本地系统上,但您不希望用户能够从资源管理器打开文件?您的代码可以执行的任何操作,用户也可以执行。你所能做的就是让它变得更难。保护必须是强有力的,因为这些文件是受版权保护的。用户不能复制这些文件。这是一个桌面应用程序。你所要求的(针对黑客的强大保护)似乎不可能。为了使加密文件在应用程序中可用,您必须在应用程序中包含解密密钥,这与加密的目的背道而驰,因为任何从软件中对密钥进行反向工程的人都可以自己解密文件。这似乎是一个好主意。我要试试看。但我不知道它是否能保护我的文件免受反向工程师的攻击。@Ben:例如,在将图像放入Dll之前,如果有人打开您的Dll无法访问图像,您也可以通过这种方式将图像转换为二进制文件(例如:获取4个第一图像位,并将它们与常量数字相加,或者为自己制作一个公式),为了再次显示你的图像,请反转显示图像的公式。我尝试了。这似乎是一个好主意,我会尝试。您发布的链接是有帮助的,但无法逐个文件夹和逐个文件浏览。只有一个Uri列表很不方便(DirectoryInfo不能使用这种Uri进行实例化)。如何通过代码将文件添加到DLL中?(修改后)您不需要代码,只需将图像添加到dll项目,并将构建操作设置为嵌入资源