为何用UltraEdit修改了强签名的DLL后,先前的程序还可以正常调用?
randb 2010-02-24 11:31:55 最近在学习强签名,遇到以下疑问:
我做一个简单的DLL,将它强签名。强签名的DLL主代码如下:
using System;
namespace NET.SN
{
public class Compile
{
public int I = 9;
public string S = "SSSSSSSSSSS";
public override string ToString()
{
return I.ToString() + "_" + S;
}
}
}
我将此DLL强签名,然后在控制台程序ConsoleApp1中引用该DLL,编译,运行正常。
然后我用UltraEdit打开所引用的强签名的DLL,找到字符串SSSSSSSSSSS的位置,手动改成了SSSSSSSSSSA,保存,然后再运行ConsoleApp1,居然正常运行!打印出来的是SSSSSSSSSSA
不是说经过强签名的程序集是可以防篡改的么?以上的事实哪里证明可以防了?
请各位指教!