软件注册与激活授权系统

一、源码特点
      本软件是一个WinForm软件授权管理工具,原理是每台电脑生成不同的注册码,再根据不同注册码生成不同授权码进行唯一绑定使用。
二、功能介绍
      加密授权信息采用RSA私钥,解密授权信息采用RSA公钥,只要私钥不泄露,软件将无法被破解。
      1、注册码:根据电脑主板序列号、CPU和硬盘序列号等信息生成32位的MD5唯一编码,取其中25个字符组成注册码(如:"FAJVC-3CQTX-DCDVP-26QCT-924M3")。
      2、激活码:采用RSA算法,使用私钥加密授权信息(正式版/试用版本、授权起止日期、是否永久有效、注册码)生成激活码(如:"17508FFCC33DFAC748CA3E3B27ACCFC646EF802B3D322CC5EAC97E578E8B9B5AFC48F0B8EA9DAA50C94FB19DAC5C21724B716ADE42FC6B4F15D16DEA595E0C2C295B164DD15A3B0733B7A911AD61FE8EA07AE3DBC3BCEB89BD692BB0B3AAC4FF5F88187C03C51A20784FB015F6F52A32C8D92353B8504EFEF81B3E0D49D0C154")。
      3、授权识别:软件终端使用RSA公钥解密激活码,得到授权信息明文(如"120150720201607200F35FB373F9E53DEF20C736AC8",软件据此解析出授权信息进行验证使用。
      4、误操作更改电脑日期后造成授权过期,可修改IsExpired.dat文件中的值为"0"并修正日期即可,不需要重新生成激活码;不用担心用户重复修改IsExpired值从而破解软件,因为还将进行激活码验证。
三、注意事项
      1、激活码存储位置:DotNet.AuthorizeClientinDebugKeysLicense.dat。
      2、授权过期标识:DotNet.AuthorizeClientinKeysIsExpired.dat,文件内容值为1表示过期,值为0表示未过期,建议将此标识存储在注册表中,防止普通用户恶意修改。
      3、仅提供WinForm软件授权例子程序,WebForm可参考本例子实现。
      4、电脑增加新硬盘也视为不是同一台电脑,授权会自动失效。
      5、本授权激活工具仅适合于集成在业务与时间相关的软件中,并与时间相关的业务挂接;本软件不适合(如操作系统)业务与时间无关的软件,因为用户在授权过期后将时间修改至有效期内,并修改IsExpired.dat中的过期标识为未过期,软件将恢复为授权有效,可正常使用。同时,本软件可保证软件与所安装的电脑唯一绑定,不能复制安装到未授权电脑。
      6、本源码可以用于学习目的和商业用途。

   

下载地址:http://www.51aspx.com/code/codename/46847

 

原文地址:https://www.cnblogs.com/dengxi/p/6349493.html