zoukankan      html  css  js  c++  java
  • 开源 .net license tool, EasyLicense !

    介绍:

    过去我常常像是否有一个帮助授权的软件,它可以非常简单的创建license,并且非常容易的验证license。

    这是一个非常普通和公共的功能,但是我没有找到合适的开源软件,大部分开源软件都比较复杂,并且有太多我不需要的功能。

    所以我创建了这个项目,希望可以让授权的流程变的简单。

    使用代码:

    Easy License 非常容易使用,为了验证一个软件,你需要下面3个步骤。

    1: Create a public/private Key.

    if (File.Exists("privateKey.xml") || File.Exists("publicKey.xml"))
    			{
    				var result = MessageBox.Show("The key is existed, override it?", "Warning", MessageBoxButton.YesNo);
    				if (result == MessageBoxResult.No)
    				{
    					return;
    				}
    			}
    
    			var privateKey = "";
    			var publicKey = "";
    			LicenseGenerator.GenerateLicenseKey(out privateKey, out publicKey);
    
    			File.WriteAllText("privateKey.xml", privateKey);
    			File.WriteAllText("publicKey.xml", publicKey);
    
    			MessageBox.Show("The Key is created, please backup it.");
    

      

    2:  Use private key to create a license

    if (!File.Exists("privateKey.xml"))
    			{
    				MessageBox.Show("Please create a license key first");
    				return;
    			}
     
    			var privateKey = File.ReadAllText(@"privateKey.xml");
    			var generator = new LicenseGenerator(privateKey);
     
    			var dictionary = new Dictionary<string, string>();
     
    			// generate the license
    			var license = generator.Generate("EasyLicense", Guid.NewGuid(), DateTime.UtcNow.AddYears(1), dictionary,
    				LicenseType.Standard);
    			
    			txtLicense.Text = license;
    			File.WriteAllText("license.lic", license);
    

      

    3:  Use public key to validate the license

    private static void ValidateLicense()
    		{
    			if (!File.Exists("publicKey.xml"))
    			{
    				MessageBox.Show("Please create a license key first");
    				return;
    			}
    			
    			var publicKey = File.ReadAllText(@"publicKey.xml");
     
    			var validator = new LicenseValidator(publicKey, @"license.lic");
     
    			try
    			{
    				validator.AssertValidLicense();
    			}
    			catch (Exception ex)
    			{
    				Console.WriteLine(ex.Message);
    			}
    		
    

      

    EasyLicense 内部有一个叫 LicenseTool 的工具,你可以下载源代码,运行,来看看它是怎样的创建Key,创建Licens 和验证License 的。

    并且系统还有一个Demo 的项目,可以帮助你。

    Git, 请帮忙加个star 吧。

     https://github.com/EasyHelper/EasyLicense

     http://git.oschina.net/EasyHelper/EasyLicense

     
     
  • 相关阅读:
    zyb的面试
    Codeforces Round #514 (Div. 2)
    Maximum GCD(fgets读入)
    Harmonic Number(调和级数+欧拉常数)
    Codeforces Round #516 (Div. 2, by Moscow Team Olympiad)
    Sigma Function (平方数与平方数*2的约数和是奇数)
    Leading and Trailing (数论)
    【贪心】【CF3D】 Least Cost Bracket Sequence
    【套题】qbxt国庆刷题班D1
    【极值问题】【CF1063B】 Labyrinth
  • 原文地址:https://www.cnblogs.com/LoveJenny/p/opensource_software_license_tool__easyhelper_easylicense.html
Copyright © 2011-2022 走看看