首页
社区
课程
招聘
[求助]强名称的问题
发表于: 2010-12-18 19:48 5796

[求助]强名称的问题

2010-12-18 19:48
5796
在.NET2.0的时候,强名称验证是非常严格的,你哪怕是更改了带强名的程序集中的任何一个字节,都会导致强名称验证失败,程序无法正常运行

但是到了3.5之后,在受信任的环境下,强名称验证就没有这么严格了,例如你用16进程工具修改带强名程序集的某个无关紧要的字节,或者用Mono.Cecil/ReflecxIL另存一下,虽然文件的MD5值变了,但是程序还是能够正常工作

但是如果我先去除了强名,然后用ReflecxIL手动输入publickkeytoken,publickey的信息,程序却无法通过验证,运行出错

而实际上,用Reflector查看时,并无法区分这两种方法产生的文件有什么区别,请问它们到底有什么区别,为什么手动填写不行?(虽然这种方法确实有的恶心,但是想知道为什么,因为用Mono.Cecil/ReflecxIL另存的文件,文件的MD5值也发生了变化,但是能够运行)

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
  • 2.jpg (38.33kb,164次下载)
收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
最近对此问题也在怀疑之中,感觉是mscoree.dll之中的强名验证方法发生了变化。
2011-4-28 17:11
0
游客
登录 | 注册 方可回帖
返回
//