zhangzengfei
2019-11-21 99a38065bf10619a2677cb6dcbfe93ee16de69d1
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)
   // 解密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"))
}
```