文档章节

开源 .net license tool, EasyLicense !

EasyHelper
 EasyHelper
发布于 2017/07/04 20:25
字数 371
阅读 5
收藏 0
点赞 0
评论 0

介绍:

 

 

过去我常常像是否有一个帮助授权的软件,它可以非常简单的创建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

本文转载自:

共有 人打赏支持
EasyHelper
粉丝 0
博文 2
码字总数 3
作品 0
浦东
程序员
EasyHelper/EasyLicense

EasyLicense An easy license library. EasyLicense is an open-source license tool for .NET applications. License Tool Demo Project --- Features EasyLicense is an open-source licen......

EasyHelper
2017/06/29
0
0
泷涯/SYFramework

English SYFramework 此框架是原为泷涯自用,现开源,框架基本遵循Module、Model、Controller、View的分层 目前最新稳定版本为,最新测试版本为 此项目基于Apache License 2.0开源 查看文档 ...

泷涯
2015/10/19
0
0
Remix OS 被指违反 GPL 和 Apache 许可证

Remix OS项目将移动版的Android操作系统带到了桌面上。但测试者很快注意到这个项目存在违反开源许可证的情况:它的Remix OS USB Tool软件其实是改了名字的 UNetbootin,而UNetbootin采用的是...

oschina
2016/01/19
6.4K
43
许雪里/xxl-excel

XXL-EXCEL XXL-EXCEL, a fast and flexible tool for translating Java objects to and from Excel documents. -- Browse website. -- Introduction XXL-EXCEL is a fast and flexible tool ......

许雪里
2017/09/12
0
0
pippo/server-hardware-info-tool

server-hardware-info-tool 通过HP服务器 ILO4 Web接口获取服务器硬件信息,目前包涵CPU信息,内存信息,网卡信息 支持swagger 此处为单点开源获取服务器信息版本,适用于批量获取小规模服务器...

pippo
01/11
0
0
远望の无限/cnBeta reader

cnBeta reader This is the third-party of cnbeta reader client for Android 4.0+ Quick Overview Screenshots Pre-requisites Android Studio 1.5 gradle 2.8 Android SDK v22 Android Bu......

远望の无限
2015/06/02
0
0
Kingdee/Common_gitignore

此项目基于开源项目构建:https://github.com/github/gitignore/ 不同类型的gitignore可以提交到Kingdee文件夹中,请大家积极共享 A collection of templates This is GitHub’s collection ...

Kingdee
2014/11/19
0
0
onice/Jira Tool Box

Jira Tool Box (JTB) info Jira Tool Box(short just JTB) is designed to speed up your workflow. It's simple to use! You can easily direct to a JIRA ticket just by enter the ID. Yo......

onice
2017/09/14
0
0
微软谷歌Office的对手:基于Web的OpenOffice

Open-Xchange,自称“一个破坏性的开源软件公司”,由OpenOffice的一些核心开发人员组成,他们发布了OX Documents——一个基于云的Office产品套件,以基于Web的字处理工具OX Text为特色。 OX...

xyxzfj
2013/03/27
0
0
Jackson 官网下载页面,Jar包选择的版本问题,JSON厉器总结疑问

1、Jackson 下载页面点击哪里是分开下载jar包的的页面? 2、Jackson 单独下载需要下载 Core 、Annotations 、Databind 的jar包吗? 3、Jackson All 的jar包包含了哪些jar包,如果我的项目里面...

hacxer
2013/10/17
6.4K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

OSChina 周五乱弹 —— 我们是食物链的最底层

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @温家成 :分享谢安琪的单曲《姿色份子》 《姿色份子》- 谢安琪 手机党少年们想听歌,请使劲儿戳(这里) @贪吃飒:最近p2p怎么了、半个月爆了...

小小编辑
11分钟前
3
1
Android Studio 3.0 之后打包apk出现应用未安装问题

1、废话 出现这个问题的原因,并不是只有一个,而是有多个原因,不懂的估计会被搞得一头雾水,下面我列举的是我遇到的几种问题和网友遇到的几种问题,但不一定是全部,也有可能有些莫名其妙的...

她叫我小渝
30分钟前
0
0
前端基础

1. get请求传参长度的误区 误区:我们经常说get请求参数的大小存在限制,而post请求的参数大小是无限制的。 实际上HTTP 协议从未规定 GET/POST 的请求长度限制是多少。对get请求参数的限制是...

wenxingjun
今天
0
0
拦截SQLSERVER的SSL加密通道替换传输过程中的用户名密码实现运维审计(一)

工作准备 •一台SQLSERVER 2005/SQLSERVER 2008服务 •SQLSERVER jdbc驱动程序 •Java开发环境eclipse + jdk1.8 •java反编译工具JD-Core 反编译JDBC分析SQLSERVER客户端与服务器通信原理 SQ...

紅顏為君笑
今天
7
0
jQuery零基础入门——(六)修改DOM结构

《jQuery零基础入门》系列博文是在廖雪峰老师的博文基础上,可能补充了个人的理解和日常遇到的点,用我的理解表述出来,主干出处来自廖雪峰老师的技术分享。 在《零基础入门JavaScript》的时...

JandenMa
今天
0
0
linux mint 1.9 qq 安装

转: https://www.jianshu.com/p/cdc3d03c144d 1. 下载 qq 轻聊版,可在百度搜索后下载 QQ7.9Light.exe 2. 去wine的官网(https://wiki.winehq.org/Ubuntu) 安装 wine . 提醒网页可以切换成中...

Canaan_
今天
0
0
PHP后台运行命令并管理运行程序

php后台运行命令并管理后台运行程序 class ProcessModel{ private $pid; private $command; private $resultToFile = ''; public function __construct($cl=false){......

colin_86
今天
1
0
数据结构与算法4

在此程序中,HighArray类中的find()方法用数据项的值作为参数传递,它的返回值决定是否找到此数据项。 insert()方法向数组下一个空位置放置一个新的数据项。一个名为nElems的字段跟踪记录着...

沉迷于编程的小菜菜
今天
1
1
fiddler安装和基本使用以及代理设置

项目需求 由于开发过程中客户端和服务器数据交互非常频繁,有时候服务端需要知道客户端调用接口传了哪些参数过来,这个时候就需要一个工具可以监听这些接口请求参数,已经接口的响应的数据,这种...

银装素裹
今天
0
0
Python分析《我不是药神》豆瓣评论

读取 Mongo 中的短评数据,进行中文分词 对分词结果取 Top50 生成词云 生成词云效果 看来网上关于 我不是药神 vs 达拉斯 的争论很热啊。关于词频统计就这些,代码中也会完成一些其它的分析任...

猫咪编程
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部