DotNet.AuthorizeServer/AuthorizeServer.cs
(完整代码) 2KBusing System;
using System.Collections.Generic;
using System.Text;
namespace DotNet.AuthorizeServer
{
internal static class AuthorizeServer
{
/// <summary>
/// 生成激活码
/// </summary>
/// <param name="isTrailVersion">为True时是试用版,为False时为正式版</param>
/// <param name="activateDateStart">授权起始日期</param>
/// <param name="activateDateStop">授权结束日期</param>
/// <param name="isActivateForever">为True则授权永久有效,为False则按授权日期确定</param>
/// <param name="registCode">注册码(示例:"F35FB-373F9-E53DE-F20C7-36AC8")</param>
/// <returns>激活码</returns>
internal static string CreateActivationCode(bool isTrailVersion, DateTime activateDateStart, DateTime activateDateStop, bool isActivateForever, string registCode)
{
// 激活码明文示例:120150720201607200F35FB373F9E53DEF20C736AC8
// *****************************************************************
// 0 版本:试用版、正式版 ==> 字符数(1个):1是试用版本,0是正式版
// 1 期限:开始日、截止日 ==> 字符数(16个):20150720 20160720
// 2 永久:是否永久有效 ==> 字符数(1个):0为按有效期限授权,1为授权永久有效
// 3 验证:注册码 ==> 字符数(25个):客户端面去掉“-”符号。
// *****************************************************************
string plaintext = string.Format("{0}{1}{2}{3}{4}",
isTrailVersion ? 1 : 0,
activateDateStart.ToString("yyyyMMdd"),
activateDateStop.ToString("yyyyMMdd"),
isActivateForever ? 1 : 0,
registCode.Replace("-", "")
);
DotNet.Authorize.RSAPrivateKey privateKey = new DotNet.Authorize.RSAPrivateKey(Program.FilePrivateKey);
Authorize.RSAKeyInfo rsaKeyInfo = new Authorize.RSAKeyInfo(privateKey);
Authorize.RSAHelper rsa = new Authorize.RSAHelper(rsaKeyInfo);
return rsa.RSAEncryptWithPrivateKey(plaintext);
}
}
}
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。