Golang LicenseServer受權服務器的設計 與 RSA 密鑰對的應用

//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

相關文章
相關標籤/搜索