# SoftwareLicense
**Repository Path**: EWIN66/SoftwareLicense
## Basic Information
- **Project Name**: SoftwareLicense
- **Description**: 软件注册及授权
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 1
- **Created**: 2020-09-06
- **Last Updated**: 2024-11-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
### 项目信息

#### 用于进行软件授权
示例中使用了一组RSA密钥,实际项目中需要使用RSAKey生成新的密钥来使用
验证流程如下:
1.客户端从本地key.lic文件中读取授权信息
2.使用RSA公钥对授权信息进行签名验证
3.判断机器码是否与授权机器码一致
4.比对授权时间与本机时间是否过期
5.完成验证进入程序,未完成验证显示机器码提示注册
授权流程如下:
1.通过客户端机器码、授权时间等生成字串
2.使用密钥对字串进行签名
3.将签名信息和授权信息合并后整体转Base64
4.将Base64字串发送给客户端
#### 客户端调用示例
请对Register进行签名,防止程序替换
```C#
static class Program
{
///
/// 应用程序的主入口点。
///
[STAThread]
static void Main()
{
//进行授权验证
if (!Validate.Check())
return;
//进行授权验证(无弹框模式)
//if (!Validate.Check(false))
// return;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmMain());
}
}
```
JackChen
2018-04-17