保护我发布的项目输出 dll 和视图
本文关键字:dll 视图 输出 项目 保护我 | 更新日期: 2023-09-27 18:36:18
如何加密已发布的 DLL 和视图文件以拒绝最终用户将输出文件转换为源文件
如上所述使用混淆。 还应预编译网站或将视图作为资源嵌入到 DLL 中。 有关此内容的详细信息,请参阅 ASP NET MVC 嵌入式资源视图。
为了保护dll,你可以obfuscate
它们。 Obfuscation
是在程序集中重命名此元数据的过程,以便它不再对黑客有用,但仍然可供机器用于执行预期操作。它不会修改实际指令或掩盖它们免受黑客的观察。下面是 .NET 的混淆器列表,请参阅 .NET 混淆工具/策略。
对于 MVC ASP.NET 预编译视图,要遵循的步骤(混淆后)是(在包含视图的项目文件夹中):
C:'WINDOWS'Microsoft.NET'Framework'v4.0.30319'aspnet_compiler.exe -v / -p "." -c targetFolder -x obj -x bin –f
copy pathToObfuscated.dll targetFolder'bin
copy bin'System.Web.* targetFolder'bin
"C:'Program Files (x86)'Microsoft SDKs'Windows'v10.0A'bin'NETFX 4.8 Tools'aspnet_merge.exe" targetFolder -o TopMain -copyattrs obj'x86'Release'AssemblyInfo'AssemblyInfo.dll -keyfile myCertFile.snk –a
文件夹路径和文件名在您的环境中可能会有所不同。要复制的依赖项列表也可能有所不同。
请注意,此解决方案不会处理对 cshtml 进行模糊处理,只会对使用的模型和控制器进行模糊处理。如果 cshtml 也需要进行模糊处理,则在合并阶段之前将需要额外的混淆步骤。