【原创】保护程序集的方法
要实现你的程序集只能让你的应用程序使用,你可以把程序集的类修饰符写为internal,而不是public,然后在assembly.cs文件中增加属性InternalsVisibleToAttribute。
假设类库项目名为ClassLibrary,应用程序项目为TestAPP,按以下步骤操作即可:
1、为应用程序项目TestAPP签名(可使用sn -k sn.snk创建签名);
2、使用sn -Tp TestAPP.exe获取公钥PublicKey;
3、在类库项目中把需要加密的类/方法修饰成internal;
4、在类库项目中的assembly.cs文件中,添加[assembly:InternalsVisibleTo("TestAPP,PublicKey=002400000480000...606fdc")];
5、在TestApp中引用此类库,这时就可以访问internal的类/方法了。