From 99a38065bf10619a2677cb6dcbfe93ee16de69d1 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期四, 21 十一月 2019 17:20:05 +0800
Subject: [PATCH] fix: encrypt replace with RSA

---
 README.md |   51 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 42 insertions(+), 9 deletions(-)

diff --git a/README.md b/README.md
index 159487d..4533534 100644
--- a/README.md
+++ b/README.md
@@ -7,20 +7,53 @@
 	"basic.com/valib/licence.git"
 )
 
-const key = "flzxsqc,ysyhljt."
-
 func main() {
+	// 鐢熸垚绉橀挜鍜屽叕閽�
+	if len(os.Args) > 1 && os.Args[1] == "-g" {
+		licence.GetRsaKey()
+		return
+	}
+
 	// 鑾峰彇鏈哄櫒鐮�
-	machineCode := licence.GetMachineCode()
+	machCode := licence.GetMachineCode()
+	fmt.Println("MachineCode: ", machCode)
 
-	// 鐢熸垚Licence
-	licenceCode := licence.GenerateLicence(machineCode, "2019-12-12 00:00:00", key)
+	// 鑾峰彇娉ㄥ唽鐮�, 鍙傛暟: 鍏徃鍚�, 鐢靛瓙閭, 鎵嬫満鍙�
+	regCode := licence.GetRegisterCode("basic.com", "dev@basic.com", "13911697509")
+	fmt.Println("Register code:", regCode)
 
-	fmt.Println("machineCode: ", machineCode)
-	fmt.Println("licenceCode: ", licenceCode)
+	fd, err := os.Open("./private.key")
+	if err != nil {
+		fmt.Println(err)
+		return
+	}
 
-	// 楠岃瘉Licence锛� 0, 鎴愬姛 1, 鏃犳晥 2, 璁惧鏈巿鏉� 3, 杩囨湡
-	fmt.Println(licence.VerifyLicence(licenceCode, key))
+	defer fd.Close()
+	privateKey, err := ioutil.ReadAll(fd)
+	if err != nil {
+		fmt.Println(err)
+		return
+	}
+
+	// 鐢熸垚Licence, 鍙傛暟: 娉ㄥ唽鐮�, 鍒版湡鏃堕棿, 绉橀挜
+	licenceCode, err := licence.GenerateLicence(regCode, "2106-01-02 15:04:05", privateKey)
+	if err != nil {
+		fmt.Println("GenerateLicence error :", err)
+		return
+	}
+	fmt.Println("licence code:", licenceCode)
+	ioutil.WriteFile("./LicenceFile", []byte(licenceCode), 0666)
+
+	// 瑙e瘑Licence鏂囦欢
+	licenceText, err := licence.DecryptLicence("./LicenceFile", "./public.pem")
+	if err != nil {
+		fmt.Println("DecryptLicence error :", err)
+		return
+	}
+	fmt.Println("licence text:", string(licenceText))
+
+	// 楠岃瘉Licence, 鍙傛暟: LicenceFile, public.pem 鐨勮矾寰� 杩斿洖: 0, 鎴愬姛 1, 鏃犳晥 2, 璁惧鏈巿鏉� 3, 杩囨湡
+	fmt.Println(licence.VerifyLicence("./LicenceFile", "./public.pem"))
 }
 
 ```
\ No newline at end of file

--
Gitblit v1.8.0