检测程序非法反编译和更新正式版本的方法及系统与流程

文档序号:18266285发布日期:2019-07-27 09:10阅读:337来源:国知局
检测程序非法反编译和更新正式版本的方法及系统与流程

本发明涉及移动互联网领域,具体为一种检测程序非法反编译和更新正式版本的方法及系统。



背景技术:

随着市面上反编译方法、工具越来越多,确保用户使用程序稳定性、发布软件的完整性是亟待解决的问题。现有技术在软件升级前未对程序合法性进行判断,无法保证程序的合法性、稳定性和发布软件的完整性,导致非法程序流通率高,开发者的合法权益得不到保障。



技术实现要素:

本发明旨在提供一种检测程序非法反编译和更新正式版本的方法及系统,在用户感知情况下卸载、更新最新版本,保证用户使用最新的、合法的互联网程序,降低非法程序流通率。

为解决上述技术问题,本发明所采用的技术方案是:一种检测程序非法反编译和更新正式版本的方法,包括以下步骤:

1)客户端根据当前包名获取当前程序的md5值;

2)客户端通过包名、渠道号、软件版本号拼接url,请求后台数据;

3)后台校验当前程序的md5值;若校验成功,则结束;否则,客户端下载最新程序,卸载当前非法程序。

步骤3)的具体实现过程包括:

判断后台是否返回响应数据,若否,则结束;若是,则判断当前程序的md5值是否唯一且合法,若合法,则结束,若不合法,则判断是否弹出非法程序对话框,若弹出,则客户端下载最新程序,卸载当前非法程序,若未弹出,则结束。

后台校验md5的具体实现过程包括:

根据key校验md5,若校验成功,则拼接校验成功数据,结束;若校验失败,记录校验失败信息,后台将校验数据发送给客户端,结束。本发明的key是版本号与渠道号的组合。

校验失败时,后台给开发者发送报警信息。

后台校验当前程序的md5值的方法为:后台判断当前程序的md5值是否存在于后台统计存储记录内,若是,则校验成功;否则,校验失败。

通过上述过程,后台可以判断程序的合法性,进而可以实时修改逻辑业务,发布版本后,在客户端修改成本高,需要升级,运营,而在后台修改成本低。

相应地,本发明还提供了一种检测程序非法反编译和更新正式版本的系统,其包括:

客户端,用于根据当前包名获取当前程序的md5值,通过包名、渠道号、软件版本号拼接url,请求后台数据;并在后台校验失败时下载最新程序,卸载当前非法程序;

后台,用于校验md5,并在校验失败时通知客户端下载最新程序,卸载当前非法程序。

所述客户端包括:

采集单元,用于根据当前包名获取当前程序的md5值;

拼接单元,用于通过包名、渠道号、软件版本号拼接url,请求后台数据;

卸载单元,用于在后台校验失败时下载最新程序,卸载当前非法程序。

所述卸载单元包括:

第一判断单元,用于判断后台是否返回响应数据,若是,则执行第二判断单元的操作;否则,结束;

第二判断单元,用于判断响应数据是否唯一且合法,若是,则执行第三判断单元的操作;否则,结束;

第三判断单元,用于判断是否弹出非法程序对话框,若是,则跳转到下载界面,并卸载当前非法程序;否则,结束。

所述后台包括:

校验单元,用于根据key校验md5;

第一拼接单元,用于在校验单元返回校验成功信息时拼接校验成功数据;

记录单元,用于在校验单元返回校验失败信息时记录校验失败信息;

第二拼接单元,用于在校验失败时将校验数据发送给客户端。

所述校验单元根据key查询当前程序的md5值是否存在于后台统计存储记录内,若是,则校验成功;否则,校验失败。

与现有技术相比,本发明所具有的有益效果为:本发明可以在用户感知情况下卸载、更新最新版本,保证用户使用最新的、合法的互联网程序,降低了非法程序流通率,保障了开发者的合法权益。

附图说明

图1是本发明客户端处理流程图。

图2是本发明后台处理流程图。

具体实施方式

本发明的目的是在软件升级之前,验证程序的合法性,该验证过程要解决以下问题:

问题一、如何判断发布互联网程序唯一性;

问题二、后台下发校验策略内容,统计校验失败渠道号、版本号;

问题三、移动互联网校验失败时后台卸载、更新最新软件。

对应问题一、本发明通过启动程序时获取当前md5、渠道号、版本号拼接url,请求后台返回响应数据;后台根据之前统计到的渠道号、版本号判断当前程序md5是否存在于后台统计存储记录内,若存在则校验通过;否则校验不通过。

对于问题二,后台根据统计的发布版本渠道号、版本号、md5校验程序合法性;后台返回校验结果,下发校验策略(例如,是否只提示用户而不下载升级程序,或者是否提示用户并强制更新程序,是否展示校验失败文案);若校验失败记录当前渠道号、软件版本号等信息,并且给开发者发送报警邮件。

对于问题三,校验失败并且下发校验结果时,移动客户端下载最新程序,后台卸载当前非法程序。

表一

表二

移动互联网客户端在运行时启动线程,线程内获取当前版本号、渠道号、运行程序md5,如表一信息,拼接成url(统一资源定位符)请求后台数据,后台根据请求信息的key(软件版本号、渠道号)获取统计库里面的md5(消息摘要算法,message-digestalgorithm,一种被广泛使用的密码散列函数),判断当前请求md5内容和统计库是否相同,若不相同则校验失败,后台记录当前请求的版本号、渠道号等信息、发邮件到开发者并且响应客户端如表二信息;客户端根据下发数据弹出对话框、是否下载最新程序、是否卸载当前反编译非法软件。

例如,小米、三星等工具软件,有第三方公司山寨时,仅将程序反编译并修改名字就上线,导致山寨的程序流通,利用本发明的方法,可以通知开发者有第三方公司山寨其软件,并告知用户卸载该山寨软件。



技术特征:

技术总结
本发明公开了一种检测程序非法反编译和更新正式版本的方法及系统,客户端根据当前包名获取当前程序的md5值;客户端通过包名、渠道号、软件版本号拼接URL,请求后台数据;后台校验md5;若校验成功,则结束;否则,客户端下载最新程序,卸载当前非法程序。本发明可以在用户感知情况下卸载、更新最新版本,保证用户使用最新的、合法的互联网程序,降低了非法程序流通率。

技术研发人员:孙丰;张配杰;丁嘉林
受保护的技术使用者:湖南快乐阳光互动娱乐传媒有限公司
技术研发日:2019.04.23
技术公布日:2019.07.26
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1