"翻身做主"--給自己的軟體製作註冊碼
從今天起, 您開發的的任何軟體如果您願意都可以為之加密 --為您的軟體製作一款序號產生器!
當您看完這篇文章時, 您就可以理直氣壯的告訴您的使用者 : "喂, 想用我的軟體是吧 ? 掏錢!".
呵呵, 這當然只是給自己壯膽的話, 現在連萬能序號產生器都有了, 人家還怕啥 ? 不過只要您想想微軟, 人家再牛b的加密技術都會被國人"鄙視"? 但人家不也在中國大把大把的撈錢嗎? ok, 不扯了, 我們進入正題.
同一般的軟體註冊一樣, 我們這裡的註冊是這樣進行的:
1. 首先根據使用者的硬體資訊生成24位的機器碼
-- 相當於種子,用於生成隨機數
2. 採用序號產生器根據特徵數字生成乙個24位註冊碼
-- 相當於偽隨機數生成器, 輸出長度自己定, 最後用乙個格式化函式,將隨機數對映到ascii字元集合
3. 使用者輸入註冊碼註冊成功
假設客戶很喜歡您的軟體, 也假設他沒有破解, 他需要通過以下方式向您取得註冊碼:
(1).如果他能上網, 他需要把機器碼用email發給您;
(2).如果他不能上網, 他可以把機器碼用手機簡訊的方式發給您.
(3).如果他沒有手機, 他可以帶著機器碼然後坐火車到您的辦公室想您要乙個註冊碼.
--第3條只是為了讓您看帖子的時候別太枯燥了, 抱歉.
現在, 您拿到了客戶的機器碼後, 如果您同時也收到了他匯的錢, 呵呵, 好像給軟體加密就是為了要錢吧? 那麼您就可以用客戶的機器碼生成乙個唯一的註冊碼再用同樣的方式給使用者, 最後, 使用者輸入註冊碼即可!
需要強調的是客戶機器的硬體資訊獲取方式是有很多種選擇的. 這裡我們選擇***的兩個硬體: cup的序列號和硬碟的卷標號. 好了, 下面您就可以一步一步製作一款軟體序號產生器了.
步驟一: 獲得cup序列號和硬碟序列號的實現**如下:
獲得cpu的序列號
publicstring getcpu()取得裝置硬碟的卷標號return strcpu;
}
publicstring getdiskvolumeserialnumber()步驟二: 收集硬體資訊生成機器碼, **如下:
生成機器碼
privatevoid button1_click(object sender, eventargs e)步驟三: 使用機器碼生成軟體註冊碼, **如下:label2.text ="";
random rdid =new random();
for (int i =0; i <24; i++)//從陣列隨機抽取24個字元組成新的字元生成機器三
}
publicint intcode =newint[127];//用於存金鑰步驟四: 使用者輸入註冊碼註冊軟體, 演示**如下:publicvoid setintcode()//給陣列賦值個小於10的隨機數
} publicint intnumber =newint[25];//用於存機器碼的ascii值
publicchar charcode =newchar[25];//儲存機器碼字
//生成註冊碼
privatevoid button2_click(object sender, eventargs e)
//
for (int j =1; j < intnumber.length; j++)//把字元的ascii值存入乙個整數組中。
string strasciiname =null;//用於儲存機器碼
for (int j =1; j < intnumber.length; j++)
elseif (intnumber[j] >=65&& intnumber[j] <=90)//判斷字元ascii值是否a-z之間
elseif (intnumber[j] >=97&& intnumber[j] <=122)//判斷字元ascii值是否a-z之間
else//判斷字元ascii值不在以上範圍內
else
} label3.text = strasciiname;//得到註冊碼
} } else
}
privatevoid btnregist_click(object sender, eventargs e)我平時整理的乙個生成機器碼的類,大夥看看.else
} else
}
using system;using system.management;
using system.io;
using system.runtime.interopservices;
using system.security.cryptography;
using system.text;
using microsoft.win32;
namespace yisheng
return cpuinfo.tostring();
}
/// /// 獲取硬碟id
///
/// string
public static string gethdid()
return hdid.tostring();
}
給自己的軟體製作註冊碼
從今天起,您開發的的任何軟體如果您願意都可以為之加密 為您的軟體製作一款序號產生器 當您看完這篇文章時,您就可以理直氣壯的告訴您的使用者 喂,想用我的軟體是吧 掏錢 呵呵,這當然只是給自己壯膽的話,現在連萬能序號產生器都有了,人家還怕啥 不過只要您想想微軟,人家再牛b的加密技術都會被國人 鄙視 但人...
給自己的軟體製作註冊碼
同一般的軟體註冊一樣,我們這裡的註冊是這樣進行的 1.首先根據使用者的硬體資訊生成 24位的 機器碼 相當於種子,用於生成隨機數 2.採用序號產生器根據特徵數字生成乙個2 4位註冊碼 相當於偽隨機數生成器,輸出長度自己定,最後用乙個格式化函式,將隨機數對映到ascii字元集合 3.使用者輸入註冊碼註...
給自己的軟體製作註冊碼
血色戰車 原文 給自己的軟體製作註冊碼 翻身做主 給自己的軟體製作註冊碼 從今天起,您開發的的任何軟體如果您願意都可以為之加密 為您的軟體製作一款序號產生器 當您看完這篇文章時,您就可以理直氣壯的告訴您的使用者 喂,想用我的軟體是吧 掏錢 呵呵,這當然只是給自己壯膽的話,現在連萬能序號產生器都有了,...