繁体   English   中英

我怎么知道我的应用程序加载了正确的程序集?

[英]How do I know that my Application loads the correct assemblies?

我有一个用于验证我的应用程序(例如许可证)安全性的程序集。 每当我的应用程序调用验证方法时,该如何从正确的程序集中加载该方法? 我要防止有人创建假程序集来绕过这些验证。

通过添加.snk以获得强命名密钥,这是否可以解决我的问题?

例如,如果我的应用程序使用MySecurity.dll ,如果其他人创建了具有相同名称的程序集并将其覆盖在bin文件夹中,我的应用程序会知道这不是正确的程序集吗?

我很担心,因为我们的解决方案使用两种验证方式,即使用许可证的公共证书在本地进行验证,以及使用在线(如果具有互联网连接)进行验证。 但是,任何这些都可以轻松绕开。

在此处输入图片说明

您可以在代码中硬编码该dll文件的哈希字符串,然后在运行时检查它(也许在计时器中)

另外,您还需要使用诸如Eazfuscator.NET之类的东西来保护您的组件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM