关于虚拟串口驱动专业版 Eltima Virtual Serial Port Driver Pro 注册原理分析

        一直以来对该程序的注册分析总是针对 vspdpro.exe,没有针对服务程序 vspdpro_service.exe,于是表面上 vspdpro.exe 看上去能运行,实际运行在14天试运行测试版机制上,只要超过安装日后14天,服务程序 vspdpro_service.exe 停止串口虚拟服务, vspdpro.exe 运行创建虚拟串口就失效。

        其实注册的关键在于服务程序 vspdpro_service.exe,分析思路在于隔断软件的升级网页与注册验证网页,并在本地虚拟注册验证信息给服务程序 vspdpro_service.exe,服务程序启动时,读取 C:\ProgramData\ELTIMA Software\VSPDPro\vspdpro.act 激活信息文件。分析注册信息,有多种条件:

注册激活信息:
Act data:
{
activationDate: 2020-01-01
errorCode: ALREADY_ACTIVATED
firstActivation: 2020-01-01
hid: hid
key_type: 0
license_key_code:11111-22222-33333-44444-55555
licenseName: Personal
nextActivation: 2120-01-01
product_id: 73
product_name: Virtual Serial Port Driver PRO
product_version: 9
registed_name: YuJunQi
serverDate: 2020-01-01
serverTime: 1577836800
}

证书信息字段:
hid=hid
license_key_code:11111-22222-33333-44444-55555
licenseName=Personal
product_id=73
product_name=Virtual Serial Port Driver PRO
product_version=9
serverDate=2020-01-01
activationDate=2020-01-01
nextActivation=2120-01-01
firstActivation=2020-01-01
errorCode=ALREADY_ACTIVATED
key_type=0
registed_name=YuJunQi
license_options=
key_options=
serverTime=1577836800
activation_param=
hash=977e5de9c47e4dbb03e25aafa5b0f806

1、注册信息返回代码“ALREADY_ACTIVATED”字符,代表已经激活;
2、注册信息返回激活数据 Act data 合法,代表激活信息正常;
3、注册信息密钥类型 key_type,代表用户激活类型,必须与许可证密钥码 license_key_code 计算相应;
        0 表示激活用户, 代码 errorCode 为: ALREADY_ACTIVATED
        3 表示OEM用户,代码 errorCode 为: +WRONG_OEM
4、注册信息返回激活开始、结束时间、服务器时间相应合法,代表已经激活正常;
5、以上所有注册信息的哈希验证合法,代表已经激活正常;

服务程序 vspdpro_service.exe 代码中,根据激活文件内容由此产生逻辑布尔值判断:
1、act file: true 验证激活文件是有效的
2、Activation expired: false 验证激活已过期是无效的
3、External Status: ALREADY_ACTIVATED 验证外部状态是已经激活
4、IsGoodToWork: true 验证运行状态好,转向正常虚拟工作
5、IsTimeBackward: false 验证时光倒流是无效的
6、IsExpired: false 验证激活已过期是无效的
7、DaysLimit: 4 验证试用软件天数限制
8、NumberLimit: 2147483647 验证试用软件时间限制(与天数相应)
9、IsExpired: false 验证激活已过期是无效的

应用程序 vspdpro.exe 代码中,根据服务程序反馈的注册证书状态由此产生逻辑布尔值判断:
1、IsDemoKey: false 验证是否演示密钥
2、IsExpired: false 验证激活已过期是无效的
3、IsProKey: true 验证是否专业版密钥
4、IsGoodToWork: true 验证运行状态好,转向正常虚拟工作
5、IsTimeBackward: false 验证时光倒流是无效的

注册证书状态有以下内容:
1、+STARTING 表示演示结束,给出字符串“DEMO_IS_OVER”
2、+BACKWARDTIME 表示本机时间与服务器时间倒置,表示修改本机时间到过去的非法行为
3、+BADTIME 表示本机时间不正确
4、+WRONG_HID 表示工作正常,错误隐藏
5、NO_AVAILABLE_ACTIVATIONS 表示没有可用的激活
6、DEMO_IS_OVER 表示演示结束
7、ALREADY_ACTIVATED 表示已经激活
8、KEY_BANNED 表示密钥被禁止

详细定义如下:
public const string APE_OK = “0”;
public const string APE_ALREADY = “ALREADY_ACTIVATED”;
public const string APE_DEMO_IS_OVER = “DEMO_IS_OVER”;
public const string APE_MAX_HIDS = “NO_AVAILABLE_ACTIVATIONS”;
public const string APE_KEY_BANNED = “KEY_BANNED”;
public const string APE_BAD_KEY = “CANT_FIND_KEY_CODE”;
public const string APE_BAD_REQ_NOHID = “NO_REQUEST_HID”;
public const string APE_BAD_REQ_NOKEY = “NO_REQUEST_KEY_CODE”;
public const string APE_BAD_REQ_NOPID = “NO_REQUEST_PRODUCT_ID”;
public const string APE_BAD_REQ_NOVER = “NO_REQUEST_PRODUCT_VERSION”;
public const string APE_UNK_PRODUCT = “UNKNOWN_PRODUCT”;
public const string APE_UNK_VERSION = “KEY_NOT_FOR_THIS_VERSION”;
public const string APE_UNK_LICENSE = “UNKNOWN_LICENSE”;
public const string APE_SRV_ERR_SAVE = “CANT_SAVE_ACTIVATION_RECORD”;
public const string APE_SRV_ERR_UPD = “CANT_UPDATE_ACTIVATION_RECORD”;
public const string APE_STARTING = “+STARTING”;
public const string APE_WRONG_HID = “+WRONG_HID”;
public const string APE_WRONG_PRODUCT_VERSION = “+WRONG_PRODUCT_VERSION”;
public const string APE_WRONG_OEM = “+WRONG_OEM”;
public const string APE_REACTIVATE = “+REACTIVATE”;
public const string APE_GRACE = “+GRACE”;
public const string APE_GRACE_EXPIRED = “+GRACE_EXPIRED”;
public const string APE_OFFLINE = “OFFLINE”;
public const string APE_BAD_LOCALTIME = “+BADTIME”;
public const string APE_TIME_BACKWARD = “+BACKWARDTIME”;
public const string APE_CORRUPTED_DATA = “+CORRUPTED”;
public const string APE_OUTDATED = “+OUTDATED”;
public const string APE_CANNOT_SAVE_FILE = “+CANNOT_SAVE_DATA”;
public const string AKEY_demo = “demo”;
public const string AKEY_reactivate = “reactivate”;

官方证书类型:
Trial Version License
Single License (Standard/PRO version)
SDK License
Site License
Source License

        如何获得正确注册,就是将网络反馈的注册信息修改为本地注册信息,让程序认为已经注册,就达到了程序免费注册的目的!这些修改工作在服务程序 vspdpro_service.exe 里进行,将网络获取的注册验证信息修改,即可真正达到程序注册仿真!!

        按以上方法 Virtual Serial Port Driver 10.0.858 到达本地注册的目的,使用原版 vspdpro_service.exe 本机演示日期早已经过期,使用修改版 vspdpro_service.exe 达到了真正实现本地软件注册。

        对 vspdpro.exe 实现了汉化,见下图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

VSPD 10 官方下载地址(可能已经禁止下载)

https://cdn.electronic.us/products/vspd/windows/download/vspd.exe

官方原版安装程序VSPD V9.0.270-10.0.944,百度云下载:
链接:https://pan.baidu.com/s/1Z6C7SstLtxrxYXskBKjJNg
提取码:yujq

vspdpro_service 服务程序及
vspdpro V9.0.270 、V10.0.858、V10.0.914 最新汉化:
https://download.csdn.net/download/zyyujq/68205518

最新版 vspdpro V10.0.944 汉化:
https://download.csdn.net/download/zyyujq/72535589

官方原版安装程序VSPD V9.0.270-10.0.992
链接:https://pan.baidu.com/s/1ZQW10aqsfd0LN-htArDTOA
提取码:yujq

Virtual Serial Port Driver Pro 10.0.979 汉化
https://download.csdn.net/download/zyyujq/85101726

Virtual Serial Port Driver Pro 10.0.992 汉化
https://download.csdn.net/download/zyyujq/85492721

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐