//TODO 待寫文章
目錄:
1.為什么要寫授權服務器 LicenseServer
2.授權服務器的設計思路
3.授權服務器所使用到的加密技術
1.為什么要寫授權服務器
為了防止別人拿到二進制后,自己搭建服務器,制作私服而損害公司利益;授權服務器只是增加破解難度而已,逆向破解二進制那也就沒辦法的,這里不考慮逆向。
2.授權服務器的設計思路
LS=LicenseServer
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