//TODO 待寫文章html
目錄:算法
1.爲何要寫受權服務器 LicenseServer 數據庫
2.受權服務器的設計思路服務器
3.受權服務器所使用到的加密技術ssh
1.爲何要寫受權服務器post
爲了防止別人拿到二進制後,本身搭建服務器,製做私服而損害公司利益;受權服務器只是增長破解難度而已,逆向破解二進制那也就沒辦法的,這裏不考慮逆向。加密
2.受權服務器的設計思路url
LS=LicenseServer .net
CS=CenterServer 設計
LS使用HTTP協議,LS與CS之間使用RSA加密數據通訊(不用HTTPS,由於要加上本身的密碼)
流程是:
1.啓動LS,監聽HTTP端口 (同時加載 RSA私鑰配置 ) ,LS與CS是徹底隔離的。
2.啓動CS,加載RSA公鑰配置,加載程序寫死密碼,構造本機信息,結合寫死密碼首次加密,經過RSA公鑰進行二次加密,發送給LS
3.LS收到消息,經過RSA私鑰進行首次解密,結合寫死密碼二次解密(算法與CS保持一致),得到CS的啓動信息,本地進行數據庫查詢,驗證是否存在配置,存在返回OK,不然返回失敗,使用RSA公鑰簽名,簽名數據包含CS信息。
4.CS收到消息,經過RSA私鑰,記性簽名驗證,成功,檢查返回結果,OK,則啓動,不然 受權失敗,禁止啓動。
LS使用RSA私鑰進行數據的簽名,CS驗證數據合法性;CS發送信息包括RSA公鑰,以及本機信息,和內存中的固定密碼,利用RSA公鑰加密數據,傳送給LS讓LS進行驗證
ssh-keygen生成的默認密鑰對格式,pem 和one-line pem格式
pkcs#1是什麼
PKCS 全稱是 Public-Key Cryptography Standards
參考連接:
PKCS 15 個標準 https://www.cnblogs.com/jtlgb/p/6762050.html
pkcs1與pkcs8格式RSA私鑰互相轉換 https://blog.csdn.net/duan19056/article/details/52104966