• net license tool, EasyLicense !


    net license tool, EasyLicense !

    开源 .net license tool, EasyLicense !

     

    介绍:

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

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

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

    使用代码:

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

    1: Create a public/private Key.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    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<stringstring>();
      
                // 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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    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

     
     
    作者:LoveJenny
  • 相关阅读:
    UVA 679 Dropping Balls 由小见大,分析思考 二叉树放小球,开关翻转,小球最终落下叶子编号。
    2017-5-14 湘潭市赛 Similar Subsequence 分析+四维dp+一些简单优化
    Problem #3263 丽娃河的狼人传说 区间满足灯数,r排序后贪心。
    2017-5-14 湘潭市赛 Longest Common Subsequence 想法题
    2017-5-14 湘潭市赛 Parentheses 转化思想+贪心 使括号序列合法的最小花费。满足前面左括号的数量>=有括号的数量。
    deque双端队列用法
    Shell字符串截取
    keepAlived发生故障切换VIP—邮件通知方案2
    KeepAlived发生故障切换VIP—邮件通知方案1
    缺少依赖 libmysqlclient.so.18(64bit)的解决办法
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/7133740.html
Copyright © 2020-2023  润新知