用户工具

站点工具


技术:软件:激活码

激活码方式注册的实现原理述 加密混淆授权 decode_pdd_binary(payloadData)+gzip

BODY:GZIP:

ANTICONTENT: {'postData': '{“data”:{“cmd”:“send_message”,“anti_content”:“0aoAfxnUdOIsggTajO3gVXTGbbgf9bBfPte3ALKA_dHEDnSg5_k8TyaJY7-YeXeuOLDSLOqYgRVeN9QbXmokUb3Os8Q9kBt7q8isgzvSC4C9kZS4igfAZNddGbPhLqvr4KDMQtbr2hcIJ03LeXt3FYvY9VUuhdG61BrvUbURQ88g5riGh6qN5Nr7cf1GgA66zxCtGVjNldkhgppi4CwSKIOBgkAqRT1GktjFtk6ez3gZ_ijmNbPsHtTGpL7gbsMAYYQ3be5caCLjBzEX2FhBC98deDP7Di1H6SB0y0tn35s4BzAawZFatpjnIgfS3DOEXiF0neTPVum28ZPrUoGEOcf7ENB0IQmYP14X0EKOCFMTwaJUTAI193vVdpM_Na9raS2C5XUilZJLnPHroyGaNIzHwi-V_VMxkbjv9ZAkDtChwKIgJyCMD2uI7-8EYMFEij9VNQ_SfVCkdwLF5ErGcWB83erqBtjnk-AiCdi1TOIgVwyusJX8UEWU5S-GREQojUN3PehiUlAheD1vhxRAVXyrW8IGbivsjU2t3V19AJVhL8pL9N6qU6W6GWyrrlVkeoB8lKWN6KR9n21SGH”,“request_id”:1614236710642573,“message”:{“to”:{“role”:“user”,“uid”:“5234360782075”},“from”:{“role”:“mall_cs”},“ts”:1614236710,“content”:“aaaaa”,“msg_id”:null,“type”:0,“is_aut”:0,“manual_reply”:1,“status”:“read”,“is_read”:1,“hash”:“56176b0a446f94b622aeae3e0b770862e306726081d6928354349f4b2a281d8c”},“random”:“d9fa0bb690684d0cffd592578131d629”}

轮流处理ip 地址 和域名account.jetbrains.com , 进行验证。

破解: 第一步,将“0.0.0.0 account.jetbrains.com”添加到hosts文件中 第二步,输入active code,提交

1. 软件授权方式概述 目前,商用软件和共享软件绝大部份都是采用注册码授权的方式来保证软件本身不被盗用,以保证自身的利益。尽管很多常用的许多软件系统的某些版本已经被别人破解,但对于软件特殊行业而言,注册码授权的方式还是一种保护软件系统本身的一种有效的手段。

通常而言,注册码授权方式有以下几种方式:

l 安装序列号方式

这是最为常用的方式,Microsoft提供的产品(例如:Windows系列产品、Office系列产品等等)都是采用这种方式。通过一种复杂的算法生成安装序列号,在安装过程中,安装程序对用户输入的安装序列号进行校验来验证该系统是否被合法,从而完成授权。

l 用户名+序列号方式

即软件系统的供应商给用户提供有效的用户名和序列号,用户在安装过程或启动过程中输入有效的用户名和序列号,系统通过算法校验通过后完成软件授权。

l 在线注册方式

用户安装系统后,通过网络进行注册授权。软件系统的供应商事先已经登记了用户的信息,用户在线注册时,供应商的注册系统对用户的信息进行验证。用户身份有效时,注册系统生成一个凭证信息,软件系统根据凭证信息完成授权。

l 激活码方式

用户安装系统后,软件系统会根据用户机器的关键信息(例如:MAC地址、CPU序列号、硬盘序列号等等)生成一个注册凭证(也可称为注册码),用户将这个注册凭证发送给软件供应商,供应商通过注册凭证生成一个激活码。用户输入激活码,软件系统完成授权。

不论是采用哪种方式来进行授权,理论上都是可以被破解的。只要破解者发现了软件授权机制和原理则任何保护机制都将化为乌有。因此,只能够通过选择复杂的算法和机制来增加破解者的破解难度,从而在在一定的时间内保证软件不被盗用。通常在行业应用软件领域,我们选用激活码方式进行软件授权管理。

2. 激活码方式注册的实现原理述 RSA算法(非对称加密算法)是一个广泛用于加密和数字签名的算法,是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥可以适用用户名+序列号、在线注册、激活码等软件保护方式。

RSA算法实现激活码注册方式的原理如下:

1. 生成一对公钥E和私钥D(供软件注册模板和注册机使用);

2. 用户安装软件后,软件注册模板提取用户机器指纹信息(如:MAC地址、CPU序列号、硬盘序列号等),并通过其它的编码算法(如BASE64)生成一个申请码C;

3. 用户将申请码C发给软件开发商。软件开发商通过注册机采用私钥D加密申请码C后生成激活码F。软件供应商将激活码F发给用户。

4. 用户输入激活码F,软件注册模板采用公钥E对激活码F解码后生成G(即:用户机器特征信息),然后软件注册模板提取用户机器的特定信息后进行编码。将编码的结果与G进行比较,如果相等则用户合法,完成授权,否则授权失败。

3. 激活码方式注册实现方案 3.1 总体架构 封装实现验证码验证功能,以DLL(动态连接库)的形式向应用程序提供验证服务。如何处理授权验证由应用程序本身来完成。

说明:

l 验证动态库封装不同算法策略和授权策略,提供密钥验证,生成、编、解码功能。

l 应用程序需要开发一个验证模块,通过调用验证动态库中的函数来进行验证。

l 验证动态库本身不会提供提示信息展现和相关界面,因此,应用程序的验证模块需要提供某些操作和提示界面(例如:注册码输入框、提示信息框等等)

3.2 功能模块

说明:

l 验证接口为一组WINAPI形式的API集,提供验证相关的服务,由应用程序的验证模块调用。

l 验证功能模块实现了具体的功能,由验证接口API调用,向外提供服务,其本身不向外暴露;

l RSA算法模块提供RSA算法实现,供验证功能模块调用;

l MD5算法模块提供MD5算法实现,供验证功能模块调用;

l BASE64算法模块提供BASE64算法实现,供验证功能模块调用;

l 注册表操作模块提供注册表相关操作的实现,供验证功能模块调用;

l 文件操作模块提供文件相关操作的实现,供验证功能模块调用

4. 软件源程序保护 授权解决程序版权问题,同时为了保障授权算法的顺利运行,必须对程序文件进行保护,加大反编译的难度。

一般软件保护是利用特殊的算法,对EXE、DLL文件里的资源进行压缩,改变其原来的特征码,隐藏一些字符串等等,使一些资源编辑软件不能正常打开或者修改。

技术/软件/激活码.txt · 最后更改: 2022/05/10 18:09 (外部编辑)