一种代码处理方法和装置制造方法及图纸

技术编号:14911863 阅读:37 留言:0更新日期:2017-03-30 01:54
本发明专利技术提供了一种代码处理方法和装置,该方法包括:注册代码处理参数;获取待处理代码文件;根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件。在本发明专利技术中,通过注册代码处理参数,对待处理文件中的代码进行操作,避开了各个终端平台的区别,同时也避开了各个语言的区别,从而实现对不同的语言、不同平台代码进行复杂化处理。本发明专利技术还公开相应的代码处理装置。

【技术实现步骤摘要】

本专利技术涉及软件安全领域,尤其涉及一种代码处理方法和装置。
技术介绍
目前,对于应用程序开发者,将代码开发完成后,通过编译器编译出各个平台(PC客户端、移动端)的可执行文件。而目前对于应用比较核心的功能按照上述方式进行遍历并发布到用户手中,很容易的被竞争对手通过分析汇编代码的实现逻辑,从而弄清楚我们核心功能的实现方法,比如对与直播平台的人气统计协议、直播平台的美颜功能的实现原理、直播平台的视频编码解码逻辑、视频加密算法等等。因此,需要提出一种能够在原有逻辑不变的情况下使得汇编代码更复杂、能够提高程序安全性的技术方案。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种代码处理方法和装置,以力图解决或者至少缓解上面存在的问题。第一方面,本专利技术的实施例提供一种代码处理方法,该方法包括:注册代码处理参数;获取待处理代码文件;根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件。可选地,在根据本专利技术的方法中,所述代码处理参数包括指令复杂化参数、增加函数虚假分支参数和指令加密参数中的至少一种或几种。可选地,在根据本专利技术的方法中,在所述代码处理参数为所述指令复杂化参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述指令复杂化参数,利用递归算法对所述待处理代码文件中的每条指令进行处理,得到所述可执行代码文件。可选地,在根据本专利技术的方法中,在所述代码处理参数为所述增加函数虚假分支参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述增加函数虚假分支参数,在所述待处理代码文件中的每个函数中增加虚假分支,得到所述可执行代码文件。可选地,在根据本专利技术的方法中,在所述代码处理参数为所述指令加密参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述指令加密参数,利用加密算法对所述待处理文件中的每条指令进行加密处理,得到所述可执行代码文件。第二方面,本专利技术的实施例提供一种代码处理装置,该装置包括:注册单元,用于注册代码处理参数;获取单元,用于获取待处理代码文件;处理单元,用于根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件。可选地,在根据本专利技术的装置中,所述代码处理参数包括指令复杂化参数、增加函数虚假分支参数和指令加密参数中的至少一种或几种。可选地,在根据本专利技术的装置中,在所述代码处理参数为所述指令复杂化参数时,所述处理单元还用于:根据所述指令复杂化参数,利用递归算法对所述待处理代码文件中的每条指令进行处理,得到所述可执行代码文件。可选地,在根据本专利技术的装置中,在所述代码处理参数为所述增加函数虚假分支参数时,所述处理单元还用于:根据所述增加函数虚假分支参数,在所述待处理代码文件中的每个函数中增加虚假分支,得到所述可执行代码文件。可选地,在根据本专利技术的装置中,在所述代码处理参数为所述指令加密参数时,所述处理单元还用于:根据所述指令加密参数,利用加密算法对所述待处理文件中的每条指令进行加密处理,得到所述可执行代码文件。根据本专利技术的技术方案,通过注册代码处理参数,对待处理文件中的代码进行操作,避开了各个终端平台的区别,同时也避开了各个语言的区别,从而实现对不同的语言、不同平台代码进行复杂化处理。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本专利技术的代码处理装置的示例计算设备100的框图;图2示出了本专利技术实施例所提供的一种代码处理方法的流程图;图3示出了本专利技术实施例所提供的LLVM编辑器中间语言文件的架构示意图;图4示出了本专利技术实施例所提供的一种应用中的组件检测装置的结构图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的图片上传装置驻留在计算设备中,图1布置为实现根据本专利技术的代码处理装置的示例计算设备100的框图。在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器((μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。在一些实施方式中,应用122可以布置为在操作系统上利用程序数据124进行操作。计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的本文档来自技高网...

【技术保护点】
一种代码处理方法,其特征在于,该方法包括:注册代码处理参数;获取待处理代码文件;根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件。

【技术特征摘要】
1.一种代码处理方法,其特征在于,该方法包括:注册代码处理参数;获取待处理代码文件;根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件。2.如权利要求1所述的方法,其特征在于,所述代码处理参数包括指令复杂化参数、增加函数虚假分支参数和指令加密参数中的至少一种或几种。3.如权利要求2所述的方法,其特征在于,在所述代码处理参数为所述指令复杂化参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述指令复杂化参数,利用递归算法对所述待处理代码文件中的每条指令进行处理,得到所述可执行代码文件。4.如权利要求2所述的方法,其特征在于,在所述代码处理参数为所述增加函数虚假分支参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述增加函数虚假分支参数,在所述待处理代码文件中的每个函数中增加虚假分支,得到所述可执行代码文件。5.如权利要求2所述的方法,其特征在于,在所述代码处理参数为所述指令加密参数时,所述根据所述代码处理参数,处理所述待处理代码文件,得到可执行代码文件,包括:根据所述指令加密参数,利用加密算法对所...

【专利技术属性】
技术研发人员:周志刚
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1