如果我在 Blazor 中遗漏了一些明显的内容,请原谅我,但是由于 dll 像 javascript 文件一样存在于浏览器中,用户是否可以下载 dll 文件并通过反编译文件和/或运行它们来查看执行代码在浏览器之外?
如果开发人员没有意识到他们的库代码像他们的 javascript 代码一样可见,这似乎会带来一个非常明显的安全问题。
当然可以,这些 DLL 只是由 Web 服务器提供服务的静态文件。我建议阅读这篇优秀的博文 https://blog.stevensanderson.com/2018/02/06/blazor-intro/关于浏览器如何runs这些 DLL:
在解释模式下,Mono 运行时本身会编译为 WebAssembly,但 .NET 程序集文件不会。然后,浏览器可以加载并执行 Mono 运行时,而 Mono 运行时又可以加载并执行由普通 .NET 编译工具链构建的标准 .NET 程序集(常规 .NET .dll 文件)。
如果您不希望用户(轻松)对您的代码进行逆向工程,那么答案是代码混淆。布拉佐尔没有计划 https://github.com/aspnet/Blazor/issues/1463要提供此类功能,任何标准 .NET 混淆器should工作。我自己没有尝试过,但我确信这将是一条崎岖的道路。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)