gpt4 book ai didi

.net - 是否可以用使用不同 key 签名的程序集来替换强名称程序集?

转载 作者:行者123 更新时间:2023-12-02 15:10:49 25 4
gpt4 key购买 nike

我们即将在强名称 .NET 程序集中实现许可算法,该程序集将被应用程序的其他组件引用。当然,我们希望最大限度地减少有人交换包含许可证检查的程序集并由此解锁应用程序功能的风险。

据我所知,您可以将程序集重定向到不同的版本(通过发布者策略或在应用程序配置文件中)。但我还没有找到一种方法来重定向到具有另一个名称或使用不同 key 签名的程序集。

是否有其他方法可以影响程序集绑定(bind),以便使用使用不同 key 签名的程序集?如果有,绕过这个算法需要多努力?

最佳答案

不,无法重定向到不同的程序集版本。不同的名称或强名称是 not possible with assembly redirects .

这是可以规避的。一种技术性但简单的方法是简单地反汇编所有强命名程序集并在没有强名称的情况下重新编译它们。使用 ildasm 和 ilasm 或使用 PE 编辑器可以轻松完成此操作。请参阅herehere 。当您反编译它时,为什么不删除任何许可证检查呢?混淆器除非能够阻止反编译,否则不会有任何帮助。已经提到的另一种方法可能是使用公钥来延迟签署新程序集并关闭程序集验证。或者,由于 GAC 中的程序集仅在安装期间进行验证,您可以 replace an existing assembly in the GAC 。最后两项确实需要管理权限。

关于.net - 是否可以用使用不同 key 签名的程序集来替换强名称程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22141511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com