大家做專案開發一般都是分層的,比如ui層,業務層,資料訪問層。業務層引用資料訪問層的dll(比如dataaccess.dll),並使用dataaccess.dll中的方法。當專案完成並給客戶用了,可有些心裡bt的客戶這個時候也可以請個稍微懂net的人來引用你的dataaccess.dll並呼叫其中的方法搞破壞。比如可以直接使用裡面的changepwd(string username,string pwd)方法把其他使用者的密碼改了,這個時候就你就.......
好了,該開始說怎麼保護我們的**了:
首先我們需要把我們的程式集做成強命名的程式集。
這裡我們在.net 命令提示中輸入sn -k c:\test.snk 建立乙個新的隨機金鑰對並將其儲存在c:\test.snk
中
然後新建立類庫classlibrary1,裡面只有個類檔案class1.cs,**如下:
1system;23
namespace
classlibrary1413
14public
string
insert()
1518
1920
assemblyinfo.cs**:
//............其他的就用預設
[assembly: assemblykeyfile("c:\\test.snk")] // 連線上面用強命名工具sn.exe生成的檔案.
private
void
button1_click(
object
sender, system.eventargs e)
在這裡就可以直接執行了,不過大家都看的出來,這樣是能成功呼叫class1中的方法的。
現在讓我們來修改下class1.cs,**:
using
system;
using
system.security.permissions;
namespace
classlibrary1
public
string
insert()}}
保護你的DLL和Code不被別人使用
大家做專案開發一般都是分層的,比如ui層,業務層,資料訪問層。業務層引用資料訪問層的dll 比如dataaccess.dll 並使用dataaccess.dll中的方法。當專案完成並給客戶用了,可有些心裡bt的客戶這個時候也可以請個稍微懂net的人來引用你的dataaccess.dll並呼叫其中的方...
保護你的DLL和Code不被別人使用
大家做專案開發一般都是分層的,比如ui層,業務層,資料訪問層。業務層引用資料訪問層的dll 比如dataaccess.dll 並使用dataaccess.dll中的方法。當專案完成並給客戶用了,可有些心裡bt的客戶這個時候也可以請個稍微懂net的人來引用你的dataaccess.dll並呼叫其中的方...
如何保護你的計算機不被惡意軟體勒索
不知你是否遇到過像cyptolocker這種陰損毒辣的惡意軟體 限制被感染的計算機,並要求受害者支付贖金後返還控制權。英國國家犯罪局已經發出了國家緊急警報,見johnchu同學的報道 1千萬英國使用者被cryptolocker勒索軟體瞄準 很明顯我們遇到了乙個很老套的話題 如果我們的計算機被攻破,該...