license伺服器
根據選單選項製作明文,包括了:
序列號:基於硬體特殊mac計算
signature:檔案利用公鑰計算
功能選項:url過濾,病毒掃瞄,雲查殺等一些特有服務功能
pem:.pem這種檔案就是乙個x.509的數字證書,裡面有使用者的公鑰等資訊
加解密過程:
檔案資料(4的倍數檢查)->evp_decodeblock(4:3)->license_enc(通過key)->buff
1、base64編譯碼
license檔案是base64編碼,需要轉換為base編碼
base64是將字元的assic碼,轉換為都在0-64的可見範圍內,不會有特殊符號「:」等影響資料頭,從而影響解析
字元8位只取低6位,高補0,也就是3個8位變4個6位。
這裡有可能會末尾signature多「=」,由於之前的license檔案的位數不是6的倍數
解碼時候需要刪除=右邊資料
base64編碼函式
void evp_encodeblock(unsigned char *t, const unsigned char *f, int n);
功能:進行base64資料編碼, 適用於小量資料。
引數:t:[out]編碼後的資料。f:[in]待編碼的資料。n:[in]待編碼資料的長度
返回值:編碼後的資料長度。
base64解碼函式
void evp_decodeblock(unsigned char *t, const unsigned char *f, int n);
功能:進行base64資料解碼, 適用於小量資料。
引數:t:[out]解碼後的資料。f:[in]待解碼的資料。n:[in]待解碼資料的長度
返回值:解碼後的資料長度。
2、rc4加解密
在密碼學中,rc4(來自rivest cipher 4的縮寫)是一種流加密演算法,金鑰長度可變。
它加解密使用相同的金鑰,因此也屬於對稱加密演算法
由於rc4演算法加密是採用的xor,所以,一旦子金鑰序列出現了重複,密文就有可能被破解
根據固定字串生成rc4_key,進行解密,生成明文,得到了license的內容和signature
金鑰長度範圍為 1-256 位元組,沒有任何的分析對於金鑰長度達到128位的rc4有效
license_passwd[16]="legendsecbeijin";
3、sha一致性判斷
安全雜湊演算法(secure hashalgorithm),接收一段明文,然後以一種不可逆的方式將它轉換成一段(通常更小)密文
ha-1與md5 的最大區別在於其摘要比md5 摘要長 32bit
獲取serial_num和signature之間的內容,生成sha值,
signature=後面的內容是base64編碼,需要先去掉=和=右邊多的內容,
rsa解密後,得到明文,然後計算得到sha值,
解密得到的sha和自己生成的sha對比判斷是否一致
md5最後生成的摘要資訊是16個位元組,sha1是20個位元組
4、rsa_verify,rsa是一種非對稱演算法
對稱演算法:有傳送金鑰的過程,雙方金鑰一致
非對稱演算法:一方或者機構生成一對金鑰,有公鑰和私鑰,私鑰自己儲存,傳送公鑰,可以互解密
數字簽名:非對稱加密演算法,機構頒發公鑰私鑰,公鑰公開,私鑰為公司做license伺服器私有
根據publickey解密signature內容,rsa解密後得到明文
根據signature之前內容,生成md5值
第一次根據license_back檔案存放的上次匯入的md5值對比判斷重複
第二次根據檔案中的md5值對比判斷重複匯入
6、序列號的計算加解密
根據mac位址計算md5
根據md5計算sha
根據sha標準輸出40位16進製制
12d660f3e63744676772337af652afcf04a588dc
7、bash的計算和加解密
根據mac位址計算出serial num
srand(tm)設定產生一系列偽隨機數發生器的起始點
tm+rand()+serial===>***
計算***的md5輸出,儲存到檔案/secgate/etc/conf/license/
解密就是md5輸出和輸入字串之間兩者關係解密,和serial無關了
時間1800秒,30分鐘update一次
匯入過程:
安全
校驗硬體序列號
檢查檔案生產時間
檢查檔案內容sha
檢查重複匯入md5
時間分類覆蓋
計算疊加
意外初始
時間更新
告警一天一次
5秒一次
序列號 serial
生產時間 grant_time
功能專案 mode
簽名 signature
入網許可證 進網許可證 電信裝置入網許可證詳解!
進網許可證也叫入網許可證。入網許可證是加貼在已獲得進網許可的電信裝置上的質量標誌,由資訊產業部統一印製和核發,也是行貨手機的真品憑證之一。入網許可證上有水印,表面的顏色不均勻,有深有淺,有粗有細 而假的多為影印,表面顏色沒有變化。入網證一般都是用針式印表機列印的,數字清晰,仔細看有針打的凹痕,而假的...
開源許可證
開源許可證是一種法律許可。目前國際公認的有80多種。通過它,版權擁有人明確允許,使用者可以免費地使用 修改 共享版權軟體。分類 1 沒有使用限制 使用者可以使用 做任何想做的事情。2 沒有擔保 不保證 質量,使用者自擔風險。3 披露要求 使用者必須披露原始作者。1 bsd 二條款版 分發軟體時,必須...
許可證特點
不管產品是免費向公眾分發,還是 制定乙份許可協議非常有用,否則,對於前者,你相當於放棄了自己所有的權利,任何人都沒有義務表明你的原始作 者身份,對於後者,你將不得不花費比開發更多的精力用來逐個處理使用者的授權問題。而開源許可協議使這些事情變得簡單,開發者很容易向乙個專案貢獻自己的 它還可以保護你原始...