保護你的DLL和Code不被別人使用。

2021-09-05 14:54:53 字數 1035 閱讀 3735

大家做專案開發一般都是分層的,比如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勒索軟體瞄準 很明顯我們遇到了乙個很老套的話題 如果我們的計算機被攻破,該...