CN107908392A - 数据采集工具包定制方法、装置、终端和存储介质 - Google Patents

数据采集工具包定制方法、装置、终端和存储介质 Download PDF

Info

Publication number
CN107908392A
CN107908392A CN201711113783.4A CN201711113783A CN107908392A CN 107908392 A CN107908392 A CN 107908392A CN 201711113783 A CN201711113783 A CN 201711113783A CN 107908392 A CN107908392 A CN 107908392A
Authority
CN
China
Prior art keywords
data acquisition
script
function
acquisition script
item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711113783.4A
Other languages
English (en)
Other versions
CN107908392B (zh
Inventor
史贵岭
谢培杰
尧德仁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201711113783.4A priority Critical patent/CN107908392B/zh
Priority to PCT/CN2018/076961 priority patent/WO2019091016A1/zh
Publication of CN107908392A publication Critical patent/CN107908392A/zh
Application granted granted Critical
Publication of CN107908392B publication Critical patent/CN107908392B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种数据采集工具包定制方法、装置、终端和存储介质,方法包括:获取多个数据采集脚本;数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示数据采集项;获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。采用本方法能够降低数据采集工具包开发成本,提高数据采集工具包开发效率。

Description

数据采集工具包定制方法、装置、终端和存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及数据采集工具包定制方法、装置、终端和存储介质。
背景技术
为了更好的推广运营APP(Application,应用程序),APP开发商需要采集APP中的用户行为数据,并对采集到的数据进行分析。目前,用户行为数据采集方式主要是针对APP开发对应的数据采集SDK工具包(Software Development Kit,软件开发工具包),向用户发布安装有该数据采集SDK工具包的APP。传统方式中,如果要实现多款APP用户行为数据的采集,APP开发商需要手动针对每款APP分别开发对应的数据采集SDK工具包,开发成本和维护成本高,且开发效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低数据采集工具包开发成本,提高数据采集工具包开发效率的数据采集工具包定制方法、装置、终端和存储介质。
一种数据采集工具包定制方法,包括:
获取多个数据采集脚本;所述数据采集脚本具有对应的多个数据采集项;
通过数据采集配置页面显示所述数据采集项;
获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;
根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;
对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
在其中一个实施例中,所述配置参数包括自定义功能函数或定制数组,所述定制数组包括多个预设标识;所述利用配置参数对提取到的数据采集脚本进行更新的步骤,包括:
利用自定义功能函数对提取到的数据采集脚本进行填充;或
对定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。
在其中一个实施例中,对编译后的数据采集脚本进行混淆加密步骤,包括:
获取数据采集脚本中的敏感字段,计算所述敏感字段对应的二进制数值;
按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算所述盐值对应的二进制数值;
对所述敏感字段对应的二进制数值和所述盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;
通过将所述混淆字符串对相应所述敏感字段进行替换,对所述数据采集脚本进行混淆加密。
在其中一个实施例中,对编译后的数据采集脚本进行混淆加密步骤,包括:
通过函数指针将数据采集脚本中的代码封装至预设主函数,所述预设主函数包括多条输入输出类型转换语句;
利用所述输入输出类型转换语句将数据采集脚本的输入类型转换为第一固定类型,输出类型转换为第二固定类型,以对所述数据采集脚本进行混淆加密。
在其中一个实施例中,对编译后的数据采集脚本进行混淆加密步骤,包括:
获取数据采集脚本中的多个具有功能含义的函数名;
获取函数名对应的自定义字符串;通过将自定义字符串对相应的函数名进行替换,对所述函数名的功能含义进行隐藏,以对所述数据采集脚本进行混淆加密。
在其中一个实施例中,对编译后的数据采集脚本进行混淆加密步骤,包括:
查询数据采集脚本中函数调用语句;所述函数调用语句包括调用函数的函数名及被调用函数的函数名;
根据被调用函数的函数名查询被调用函数的函数体,通过在所述被调用函数的函数体添加预设关键字,对调用函数和被调用函数之间的调用关系进行隐藏,以对所述数据采集脚本进行混淆加密。
一种数据采集工具包定制装置,所述装置包括:
页面展示模块,用于获取多个数据采集脚本;所述数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示所述数据采集项;
参数配置模块,用于获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;
脚本更新模块,用于根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;
混淆加密模块,用于对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
在其中一个实施例中,所述混淆加密模块还用于获取数据采集脚本中的敏感字段,计算所述敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算所述盐值对应的二进制数值;对所述敏感字段对应的二进制数值和所述盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将所述混淆字符串对相应所述敏感字段进行替换,对所述数据采集脚本进行混淆加密。
一种终端,包括存储装置及其处理器,所述存储装置中储存有计算机程序,所述处理器执行所述计算机程序时实现本发明任意一个实施例中提供的数据采集工具包定制方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该指令被处理器执行时实现本发明任意一个实施例中提供的数据采集工具包定制方法的步骤。
上述数据采集工具包定制方法、装置、终端和存储介质,通过数据采集配置页面对多个数据采集项进行展示,使得应用程序开发商可以在数据采集配置页面对数据采集项进行选择并录入与选定的数据采集项对应的配置参数;根据被选定的数据采集项,可以提取对应的数据采集脚本;利用配置参数对提取到的数据采集脚本进行更新,可以满足个性化的数据采集需求;在对更新后的数据采集脚本进行编译,混淆加密和封装后,可以得到安全性高的数据采集工具包。采用页面配置的方式选定数据采集项,使得无需重新编写代码,只需添加或删除易读的数据采集项即可实现数据采集工具包定制,降低了数据采集工具包的开发门槛和开发成本。当需要针对其他某款应用程序开发数据采集工具包时,只需变更对数据采集项的选择即可,可以提高数据采集工具包开发效率。
附图说明
图1为一个实施例中数据采集工具包定制方法的应用环境图;
图2为一个实施例中数据采集工具包定制方法的流程图;
图3为一个实施例中数据采集工具包定制装置的结构图;
图4为一个实施例中终端的框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
本申请提供一种数据采集工具包定制方法,可以应用于如图1所示的应用环境中。其中,定制终端102通过网络与用户终端104连接。用户终端104可以是智能手机、平板电脑、笔记本电脑、POS机、车载电脑中的至少一种,但并不局限于此。用户终端104上安装有应用程序。定制终端102用于生成不同应用程序对应的数据采集工具包,并向对应的用户终端104发布安装有该数据采集工具包的应用程序。定制终端102预存储了多个数据采集脚本,每个数据采集脚本具有对应的一个或多个数据采集项。定制终端102将多个数据采集项以数据采集配置页面的形式显示。基于显示的数据采集配置页面,应用程序开发商可以根据开发需求在定制终端102对数据采集项进行选择,并输入与选定的数据采集项对应的配置参数,如自定义功能函数,或者包括多个预设标识的定制数组等。定制终端102根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新。例如,定制终端102利用自定义功能函数对提取到的数据采集脚本进行填充;或对定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。定制终端102对更新后的数据采集脚本进行编译,并对编译后的数据采集脚本进行混淆加密和封装,得到定制的数据采集工具包。当需要针对不同应用程序开发数据采集工具包时,只需变更对数据采集项选择即可,可以提高数据采集工具包开发效率。
在一个实施例中,如图2所示,提供了一种数据采集工具包定制方法,以该方法应用于定制终端为例进行说明,具体包括以下步骤:
步骤202,获取多个数据采集脚本;数据采集脚本具有对应的多个数据采集项。
当需要针对某款应用程序定制对应的数据采集工具包时,应用程序开发商可以通过在定制终端的命令行窗口输入预设的定制命令,向定制终端发起数据采集工具包定制请求。定制终端可以是多款应用程序的控制终端。这里的应用程序可以是金融应用、理财应用、电商应用等需要进行网络交易的敏感应用。根据定制终端上运行的操作系统不同,预先编写的定制命令可以不同。例如,在andriod(安卓)平台,定制命令可以是gradle命令(一种项目自动化构建工具)。gradle命令是应用程序开发商利用groovy语言(一种编程语言)编写的能够在构建工具gradle中运行的脚本。可以理解,还可以采用其他方式触发定制终端对数据采集工具包进行定制,对此不作限制。
定制终端根据数据采集工具包定制请求获取预先封装的基础的数据采集工具包。基础的数据采集工具包可以是应用程序开发商自行开发的。基础的数据采集工具包也可以由第三方开发,并将开发的数据采集工具包以接口的形式对外开放,以供定制终端调用。
数据采集工具包用于对应用程序中的目标数据进行采集。目标数据可以是应用程序页面对应的视图信息或用户行为数据等,如视图名称,视图属性,用户对应用程序页面的触摸操作和访问频率等。根据数据采集脚本能够实现的功能,每个数据采集脚本具有对应的脚本标识。脚本标识包括数据采集项以及对数据采集项的处理操作。也就是说,每个数据采集脚本与一个或多个数据采集项相关联。例如,数据采集脚本SDK.x用于对应用程序页面中的视图属性进行采集,则可以用“视图属性采集”标识该数据采集脚本;数据采集脚本SDK.y用于采集应用程序页面中视图对应的触摸事件,并对触摸事件进行拦截,则可以用“触摸事件拦截”标识该数据采集脚本。
步骤204,通过数据采集配置页面显示所述数据采集项。
步骤206,获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数。
定制终端获取多个数据采集脚本对应的脚本标识,并通过数据采集配置页面对多个脚本标识进行展示。应用程序开发商可以根据数据采集配置页面展示的脚本标识对每个数据采集脚本的功能进行了解后,在数据采集配置页面对一个或多个脚本标识进行选择。
预先封装的基础的数据采集工具包中的数据采集脚本功能较为单一,为了满足应用程序开发商对每个数据采集项的个性化采集需求,定制终端在数据采集配置页面对每个脚本标识添加对应的脚本变更输入框。当对某个数据采集项具有特定的数据采集需求时,应用程序开发商可以在该数据采集项对应的脚本变更输入框录入相应的配置参数。容易理解,应用程序开发商也可以在数据采集配置页面以文件上传的方式对配置参数进行录入,对此不作限定。配置参数可以是应用程序开发商补充的功能函数或者自定义的字符串等。
步骤208,根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译。
定制终端根据应用程序开发商在数据采集配置页面选定的一个或多个脚本标识,在预先封装的基础的数据采集工具包中提取对应的数据采集脚本。若选定的一个或多个脚本标识具有对应的配置参数,则定制终端利用配置参数对相应的数据采集脚本进行更新。
在一个实施例中,配置参数包括自定义功能函数,利用配置参数对提取到的数据采集脚本进行更新的步骤,包括:利用自定义功能函数对提取到的数据采集脚本进行填充。
当预先封装的数据采集工具包中的某个数据采集脚本无法达到应用程序开发商的采集需求时,应用程序开发商可以在数据采集配置页面将自定义功能函数作为配置参数录入对应的脚本变更输入框。自定义功能函数可以是应用程序开发商根据期望数据采集脚本能够实现的其他功能预先编写的。配置参数还包括自定义功能函数对应的添加方式,添加方式包括插入和替换。当添加方式为插入时,配置参数还包括自定义功能函数的插入位置;当添加方式为替换时,配置参数还包括自定义功能函数的替换对象。
当自定义功能函数的添加方式为插入时,定制终端根据自定义功能函数的插入位置,将自定义功能函数插入对应的数据采集脚本。例如,在上述举例中,应用程序开发商期望数据采集脚本SDK.y可以对触摸事件进行上报,则可以将触摸事件上报功能函数插入至数据采集脚本SDK.y。当自定义功能函数的添加方式为替换时,定制终端根据自定义功能函数的替换对象,在相应的数据采集脚本中将替换对象删除,在该替换对象所在位置插入自定义功能函数。应用程序开发商只需根据开发需求编写新增功能的自定义功能函数,将该自定义功能函数填充至基础的数据采集脚本,即可实现对数据采集脚本的更新,而无需对整个数据采集脚本进行修改,减少应用程序开发商开发量,进而可以提高数据采集工具包开发效率。
在一个实施例中,配置参数包括定制数组,定制数组包括多个预设标识;利用配置参数对提取到的数据采集脚本进行更新的步骤,包括:对定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。
传统方式中,在利用数据采集工具包对用户行为数据进行采集之前,应用程序开发商需要预先针对不同的应用程序分别开发对应的数据采集工具包。但事实上,同一应用程序开发商开发的多款应用程序的实现逻辑相同或相似,使得多款应用程序分别对应的数据采集工具包相似。例如,数据采集工具包包括多个数据采集脚本。每个数据采集脚本包括一个或多个对象类,每个对象类具有对应的类名;每个对象类包括一个或多个函数,每个函数具有对应的函数名。部分应用程序对应的数据采集工具包的区别仅在于类名或函数名。若需要进行目标数据采集的应用程序较多,则应用程序开发商需要进行大量的重复动作,浪费人力,也降低了数据采集效率。
为了减少重复操作,定制终端允许应用程序开发商在数据采集页面将定制数组作为配置参数进行录入,利用定制数组批量定制数据采集工具包。数据采集工具包与实现逻辑相同或相似的多款应用程序相对应。具体的,定制数组为一维数组,将一个或多个预设标识作为数组元素进行记录。预设标识可以是字符或字符串等。
定制终端将定制数组中第一个数组元素作为前缀或后缀添加至相应数据采集脚本中全部类名中,以对数据采集脚本进行更新。定制终端对定制数组进行遍历,按照上述方式将下一个数组元素作为前缀或后缀添加至相应数据采集脚本中全部类名中,以此类推,批量获得多个更新后的数据采集脚本。定制终端对更新后的数据采集脚本可以获取多个定制的数据采集工具包。容易理解,获得数据采集工具包的数量与定制数组中数组元素的数量相同。应用程序开发商可以通过变更定制数组的数组元素,对需要生成的定制的数据采集工具包的数量自由调整,提高数据采集工具包的定制效率。例如,假设定制数组为[ABC,DEF,GHI],在相应数据采集脚本中所有类名前添加前缀ABC,编译后获得定制的数据采集工具包X;在相应数据采集脚本中所有类名前添加前缀DEF,编译后获得定制的数据采集工具包Y;在相应数据采集脚本中所有类名前添加前缀GHI,编译后获得定制的数据采集工具包Z。
步骤210,对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
定制终端对更新后的数据采集脚本进行编译,执行封装命令,得到定制的数据采集工具包。定制终端将定制的数据采集工具包安装至对应的应用程序,将安装有定制的数据采集工具包的应用程序发布至用户终端,以使用户终端在相应的应用程序中安装该定制的数据采集工具包。在一个实施例中,由于需要进行目标数据采集的应用程序可能是涉及网络交易的敏感应用,为了减少敏感数据的泄漏风险,在对编译后的数据采集脚本进行封装之前,定制终端对编译后的数据采集脚本混淆加密,以提高数据采集工具包的安全性。
本实施例中,通过数据采集配置页面对多个数据采集项进行展示,使得应用程序开发商可以在数据采集配置页面对数据采集项进行选择并输入与选定的数据采集项对应的配置参数;根据被选定的数据采集项,可以提取对应的数据采集脚本;利用配置参数对提取到的数据采集脚本进行更新,可以满足个性化的数据采集需求;在对更新后的数据采集脚本进行编译,混淆加密和封装后,可以得到安全性高的数据采集工具包。采用页面配置的方式选定数据采集项,使得无需重新编写代码,只需添加或删除易读的数据采集项即可实现数据采集工具包定制,降低了数据采集工具包的开发门槛和开发成本。当需要针对其他某款应用程序开发数据采集工具包时,只需变更对数据采集项的选择即可,可以提高数据采集工具包开发效率。
在一个实施例中,对编译后的数据采集脚本进行混淆加密的步骤,包括:获取数据采集脚本中的敏感字段,计算敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算盐值对应的二进制数值;对敏感字段对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将混淆字符串对相应敏感字段进行替换,对数据采集脚本进行混淆加密。
为了提高数据采集工具包中的敏感字段的安全性,应用程序开发商通常采用盐值加密的方式对敏感字段进行加密。敏感字段包括用户名、密码、密钥、域名、IP地址(Internet Protocol,网络协议)、CA(Certification Authority,认证)数字证书和数字签名等。盐值加密是指给待加密的敏感字段关联一个n位随机序列,该n位随机序列即为“盐值”。传统的盐值加密方式中,利用系统方法将敏感字段转化为可读的字符串。但采用系统方法难以保证字符串转换成功率,一旦转换失败,则需要更换盐值,降低加密效率。更重要的是,当字符串转换失败时,敏感字段关联的盐值面临着存储的问题,如果将盐值以明文的方式内置在数据采集脚本中则不利于加密效果,敏感字段的安全性仍不高。
为了解决上述问题,定制终端获取更新后的采集脚本中的敏感字段,动态生成敏感字段对应的盐值,根据敏感字段及对应盐值生成混淆字符串,利用混淆字符串对敏感字段进行加密。具体的,定制终端将敏感字段转化为二进制数值。定制终端获取数据采集脚本中的多个类名和函数名,按照预设规则将获取到的类名和函数名进行拼接,得到随机字符串,对随机字符串进行哈希变换,生成敏感字段对应的盐值。定制终端将敏感字段对应的盐值转化为二进制数值,对敏感字段对应的二进制数值和盐值对应的二进制数值分别进行加密,对加密后的敏感字段对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到目标二进制数值。预设逻辑运算包括异或运算。定制终端将目标二进制数值转化为十六进制数值,将该十六进制数值作为混淆字符串对敏感字段进行替换。将包含敏感字段和盐值的数据信息的混淆字符串内置在数据采集脚本中,可以解决敏感字段对应盐值的存储问题,且混淆字符串的获取只需简单的进制转换,可以解决字符串转换失败的问题,从而可以提高对敏感字段的加密效率。
定制终端将混淆加密后的数据采集工具包发布至用户终端。当合法用户在用户终端使用安装有该数据采集工具包的应用程序时,用户终端获取数据采集脚本中的混淆字符串,对混淆字符串进行解密,将混淆字符串还原为敏感字段。具体的,用户终端将数据采集脚本中的混淆字符串转换为二进制数值。用户终端按照上述方式生成混淆字符串对应的盐值,即获取数据采集脚本中的多个类名和函数名,按照预设规则将获取到的类名和函数名进行拼接,得到随机字符串,对随机字符串进行哈希变换,生成混淆字符串对应的盐值。由于均是按照预设规则利用数据采集脚本中的类名和函数名生成,对混淆字符串解密时生成的盐值与对敏感字段加密时生成的盐值相同。用户终端将混淆字符串对应的盐值转化为二进制数值,对混淆字符串对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到目标二进制数值。预设逻辑运算包括异或运算。用户终端将目标二进制数值转化为十六进制数值。可以理解,该十六进制数值即为敏感字段。敏感字段的获取只需简单的进制转换,可以提高对混淆字符串的解密效率。
本实施例中,混淆加密过程利用数据采集脚本中的类名或函数名动态产生盐值,可以减少盐值被泄漏的风险。将包含敏感字段和盐值的数据信息的混淆字符串内置在数据采集脚本中,可以解决敏感字段对应盐值的存储问题。混淆字符串的获取只需简单的进制转换,可以解决字符串转换失败的问题,进而可以提高对敏感字段的加密效率。
在一个实施例中,对编译后的数据采集脚本进行混淆加密的步骤,包括:通过函数指针将数据采集脚本中的代码封装至预设主函数,预设主函数包括多条输入输出类型转换语句;利用输入输出类型转换语句将数据采集脚本的输入类型转换为第一固定类型,输出类型转换为第二固定类型,以对数据采集脚本进行混淆加密。
传统方式中,利用混淆加密工具对数据采集脚本进行混淆加密。但现有混淆加密工具对数据采集脚本的混淆加密强度不够,很容易被攻击者破解,造成客户信息等敏感数据的泄漏。例如,使用escape混淆加密后的数据采集脚本,只需要使用unescape函数即可还原出源数据采集脚本,现有的混淆加密工具难以保证数据采集脚本的安全。
为了解决上述问题,定制终端对更新后的数据采集脚本的输入类型和输出类型进行混淆。具体的,定制终端对更新后的数据采集脚本进行编译后,将数据采集脚本中的代码封装至预设主函数中。预设主函数可以是基于预设编程语言实现的主函数。容易理解,根据操作系统的不同,数据采集脚本中的代码采用的编程语言可以不同。例如,在andriod平台,可以采用Java语言(一种编程语言)编写数据采集脚本;在IOS(iPhone Operating System,苹果操作系统)平台,可以采用Objective-C语言(一种编程语言)编写数据采集脚本;在混合应用平台,可以采用JS语言(JavaScript,直译式脚本语言)编写数据采集脚本。预设编程语言可以是区别于开发数据采集脚本时采用的编程语言,如C语言或者C++语言(一种编程语言)等。
预设主函数包括多条输入输出类型转换语句。输入输出类型转换语句用于将数据采集脚本中多样化的数据输入类型和输出类型分别转换为第一固定类型和第二固定类型。输入输出类型转换语句可以通过在预设主函数定义结构体来实现。具体的,预设主函数包括多个结构体,每个结构体中声明了多个函数指针,将函数指针指向数据采集脚本中的一个或多个对象类。每个结构体具有对应的结构体变量,结构体变量数据类型为第一固定类型或第二固定类型。第一固定类型和第二固定类型分别可以是int型(整数型),long型(长整数型)或者String(字符串类型)等。当定制终端对更新后的数据采集脚本进行编译时,预设主函数利用函数指针调用对应数据采集脚本中的代码,从而将数据采集脚本中的代码封装至预设主函数中。定制终端通过执行预设主函数将数据采集脚本的输入类型和输出类型转换为固定的类型,从而对数据采集脚本的输入类型和输出类型进行混淆,且该混淆为不可逆混淆。可以理解,输入输出类型转换语句也可以通过其他方式实现,对此不作限制。
本实施例中,对数据采集脚本中每个对象类的输入类型和输出类型进行混淆,且该混淆为不可逆混淆,攻击者通过反编译得到的输入类型和输出类型均为数字或字母,攻击者无从知晓数据采集脚本的实际输入类型和输出类型,从而也就无法获知数据采集脚本中各个函数的实际功能,增加了数据采集脚本的破解成本。
在一个实施例中,对编译后的数据采集脚本进行混淆加密的步骤,包括:获取数据采集脚本中的多个具有功能含义的函数名;获取函数名对应的自定义字符串;通过将自定义字符串对相应的函数名进行替换,对函数名的功能含义进行隐藏,以对数据采集脚本进行混淆加密。
为了提高数据采集工具包的安全性,定制终端将数据采集脚本中具有明确的功能含义的函数名替换为无实际意义的自定义字符串。自定义字符串可以是应用程序开发商在数据采集配置页面录入的配置参数,也可以是定制终端按照预设规则随机生成的。自定义字符串可以是由安全系统较高的预设字符和/或汉字组合而成,如“#”,“@”,“*”等。替换方式可以是在数据采集脚本中添加宏定义语句等,宏定义语句包括被替换函数名和对应的自定义字符串,如#define SafeHideInvoke(x)a#,从而将SafeHideInvoke(x)函数名替换为自定义字符串a#。对函数名进行替换后,攻击者通过反编译得到的函数名均为无实际意义的字符或汉字,难以根据函数名猜测函数功能,进而可以增加数据采集脚本的破解成本。
需要说明的是,数据采集脚本中具有明确的功能含义的函数名对应的字符长度普遍较长。本方案中,自定义字符串的长度小于对应函数名的长度,从而采用自定义字符串替换数据采集脚本中的函数名还可以对数据采集脚本起到代码压缩的作用,减少对定制终端资源的占用。
在一个实施例中,对编译后的数据采集脚本进行混淆加密的步骤,包括:查询数据采集脚本中函数调用语句;函数调用语句包括调用函数的函数名及被调用函数的函数名;根据被调用函数的函数名查询被调用函数的函数体,通过在被调用函数的函数体添加预设关键字,对调用函数和被调用函数之间的调用关系进行隐藏,以对数据采集脚本进行混淆加密。
为了提高数据采集工具包的安全性,定制终端对数据采集脚本中多个函数之间的调用关系进行隐藏。具体的,定制终端在更新后的数据采集脚本中查询是否存在函数调用语句。函数调用语句包括调用函数的函数名和被调用函数的函数名,如函数static sum(){c=fun(a,b);}中,sum()为调用函数的函数名;fun(a,b)为被调用函数的函数名。定制终端通过在被调用函数对应函数体的返回类型项前添加预设关键字,对该调用函数和被调用函数之间的调用关系进行隐藏。
预设关键字可以是inline关键字(一种关键字)。通过在被调用函数对应函数体的返回类型项前添加inline关键字,可以将被调用函数指定为对应调用函数的内联函数。当执行调用函数时,内联函数可以直接插入调用函数,从而对被调用函数进行执行,区别于传统的采用直接调用的方式对被调用函数进行执行,从而可以对调用函数和被调用函数之间的调用关系进行隐藏。
本实施例中,对函数之间的调用关系进行隐藏后,攻击者通过反编译得到的多个孤立的函数,无从知晓多个函数之间的逻辑关系,从而难以确定每个函数对数据采集脚本的功能作用,进而可以增加数据采集脚本的破解成本。
在一个实施例中,如图3所示,提供了一种数据采集工具包定制装置,包括:页面展示模块302,参数配置模块304,脚本更新模块306和混淆加密模块308,其中:
页面展示模块302,用于获取多个数据采集脚本;数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示数据采集项。
参数配置模块304,用于获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数。
脚本更新模块306,用于根据被选定的数据采集项,从数据采集工具包中提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译。
混淆加密模块308,用于对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
在一个实施例中,混淆加密模块308还用于获取数据采集脚本中的敏感字段,计算敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算盐值对应的二进制数值;对敏感字段对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将混淆字符串对相应敏感字段进行替换,对数据采集脚本进行混淆加密。
上述的数据采集工具包定制装置可以实现为一种计算机程序的形式,计算机程序可在如图4所示的终端上运行。
在一个实施例中,提供了一种终端的内部框图,如图4所示,该终端包括通过系统总线连接的处理器、内存储器、非易失性存储介质、网络接口、显示屏和输入装置。其中,该处理器用于提供计算和控制能力,支撑整个终端的运行。该定制终端的非易失性存储介质存储有操作系统和计算机程序,该计算机程序可被处理器所执行以实现以下各实施例所提供的一种数据采集工具包定制方法。终端中的内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。网络接口用于连接到网络进行通信。显示屏用于显示各种界面,比如,可显示数据采集配置页面。输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等,用于供输入配置参数和各种指令。处理器执行计算机程序时可以执行以下步骤:获取多个数据采集脚本;数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示数据采集项;获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,配置参数包括自定义功能函数或定制数组,定制数组包括多个预设标识;处理器执行计算机程序时还执行以下步骤:利用自定义功能函数对提取到的数据采集脚本进行填充;或定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:获取数据采集脚本中的敏感字段,计算敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算盐值对应的二进制数值;对敏感字段对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将混淆字符串对相应敏感字段进行替换,对数据采集脚本进行混淆加密。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:通过函数指针将数据采集脚本中的代码封装至预设主函数,预设主函数包括多条输入输出类型转换语句;利用输入输出类型转换语句将数据采集脚本的输入类型转换为第一固定类型,输出类型转换为第二固定类型,以对数据采集脚本进行混淆加密。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:获取数据采集脚本中的多个具有功能含义的函数名;获取函数名对应的自定义字符串;通过将自定义字符串对相应的函数名进行替换,对函数名的功能含义进行隐藏,以对数据采集脚本进行混淆加密。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:查询数据采集脚本中函数调用语句;函数调用语句包括调用函数的函数名及被调用函数的函数名;根据被调用函数的函数名查询被调用函数的函数体,通过在被调用函数的函数体添加预设关键字,对调用函数和被调用函数之间的调用关系进行隐藏,以对数据采集脚本进行混淆加密。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现计算机程序以下步骤:获取多个数据采集脚本;数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示数据采集项;获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
在一个实施例中,配置参数包括自定义功能函数或定制数组,定制数组包括多个预设标识;计算机程序被处理器执行时还执行以下步骤:利用自定义功能函数对提取到的数据采集脚本进行填充;或对定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:获取数据采集脚本中的敏感字段,计算敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算盐值对应的二进制数值;对敏感字段对应的二进制数值和盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将混淆字符串对相应敏感字段进行替换,对数据采集脚本进行混淆加密。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:通过函数指针将数据采集脚本中的代码封装至预设主函数,预设主函数包括多条输入输出类型转换语句;利用输入输出类型转换语句将数据采集脚本的输入类型转换为第一固定类型,输出类型转换为第二固定类型,以对数据采集脚本进行混淆加密。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:获取数据采集脚本中的多个具有功能含义的函数名;获取函数名对应的自定义字符串;通过将自定义字符串对相应的函数名进行替换,对函数名的功能含义进行隐藏,以对数据采集脚本进行混淆加密。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:查询数据采集脚本中函数调用语句;函数调用语句包括调用函数的函数名及被调用函数的函数名;根据被调用函数的函数名查询被调用函数的函数体,通过在被调用函数的函数体添加预设关键字,对调用函数和被调用函数之间的调用关系进行隐藏,以对数据采集脚本进行混淆加密。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,前述计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,前述计算机可读取存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据采集工具包定制方法,包括:
获取多个数据采集脚本;所述数据采集脚本具有对应的多个数据采集项;
通过数据采集配置页面显示所述数据采集项;
获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;
根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;
对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
2.根据权利要求1所述的方法,其特征在于,所述配置参数包括自定义功能函数或定制数组,所述定制数组包括多个预设标识;所述利用配置参数对提取到的数据采集脚本进行更新的步骤,包括:
利用自定义功能函数对提取到的数据采集脚本进行填充;或
对定制数组中的预设标识进行循环遍历,将定制数组中的预设标识插入数据采集脚本中的类名,得到多个更新后的数据采集脚本。
3.根据权利要求1所述的方法,其特征在于,所述对编译后的数据采集脚本进行混淆加密的步骤,包括:
获取数据采集脚本中的敏感字段,计算所述敏感字段对应的二进制数值;
按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算所述盐值对应的二进制数值;
对所述敏感字段对应的二进制数值和所述盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;
通过将所述混淆字符串对相应所述敏感字段进行替换,对所述数据采集脚本进行混淆加密。
4.根据权利要求1所述的方法,其特征在于,所述对编译后的数据采集脚本进行混淆加密的步骤,包括:
通过函数指针将数据采集脚本中的代码封装至预设主函数,所述预设主函数包括多条输入输出类型转换语句;
利用所述输入输出类型转换语句将数据采集脚本的输入类型转换为第一固定类型,输出类型转换为第二固定类型,以对所述数据采集脚本进行混淆加密。
5.根据权利要求1所述的方法,其特征在于,所述对编译后的数据采集脚本进行混淆加密的步骤,包括:
获取数据采集脚本中的多个具有功能含义的函数名;
获取函数名对应的自定义字符串;通过将自定义字符串对相应的函数名进行替换,对所述函数名的功能含义进行隐藏,以对所述数据采集脚本进行混淆加密。
6.根据权利要求1所述的方法,其特征在于,所述对编译后的数据采集脚本进行混淆加密的步骤,包括:
查询数据采集脚本中函数调用语句;所述函数调用语句包括调用函数的函数名及被调用函数的函数名;
根据被调用函数的函数名查询被调用函数的函数体,通过在所述被调用函数的函数体添加预设关键字,对调用函数和被调用函数之间的调用关系进行隐藏,以对所述数据采集脚本进行混淆加密。
7.一种数据采集工具包定制装置,包括:
页面展示模块,用于获取多个数据采集脚本;所述数据采集脚本具有对应的多个数据采集项;通过数据采集配置页面显示所述数据采集项;
参数配置模块,用于获取对数据采集项的选定操作,根据选定操作获取被选定的数据采集项以及与被选定的数据采集项对应的配置参数;
脚本更新模块,用于根据被选定的数据采集项提取对应的数据采集脚本,利用配置参数对提取到的数据采集脚本进行更新,对更新后的数据采集脚本进行编译;
混淆加密模块,用于对编译后的数据采集脚本进行混淆加密,对加密后的数据采集脚本进行封装以得到定制的数据采集工具包。
8.根据权利要求7所述的装置,其特征在于,所述混淆加密模块还用于获取数据采集脚本中的敏感字段,计算所述敏感字段对应的二进制数值;按照预设规则将数据采集脚本中的类名或函数名进行拼接,得到敏感字段对应的盐值,计算所述盐值对应的二进制数值;对所述敏感字段对应的二进制数值和所述盐值对应的二进制数值进行预设逻辑运算,得到混淆字符串;通过将所述混淆字符串对相应所述敏感字段进行替换,对所述数据采集脚本进行混淆加密。
9.一种终端,包括存储装置及处理器,所述存储装置中储存有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-6任意一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-6任意一项所述方法的步骤。
CN201711113783.4A 2017-11-13 2017-11-13 数据采集工具包定制方法、装置、终端和存储介质 Active CN107908392B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711113783.4A CN107908392B (zh) 2017-11-13 2017-11-13 数据采集工具包定制方法、装置、终端和存储介质
PCT/CN2018/076961 WO2019091016A1 (zh) 2017-11-13 2018-02-22 数据采集工具包定制方法、装置、终端和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711113783.4A CN107908392B (zh) 2017-11-13 2017-11-13 数据采集工具包定制方法、装置、终端和存储介质

Publications (2)

Publication Number Publication Date
CN107908392A true CN107908392A (zh) 2018-04-13
CN107908392B CN107908392B (zh) 2020-12-22

Family

ID=61844913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711113783.4A Active CN107908392B (zh) 2017-11-13 2017-11-13 数据采集工具包定制方法、装置、终端和存储介质

Country Status (2)

Country Link
CN (1) CN107908392B (zh)
WO (1) WO2019091016A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829396A (zh) * 2018-06-15 2018-11-16 腾讯科技(深圳)有限公司 脚本编译的方法、脚本执行的方法、相关装置及系统
CN109063040A (zh) * 2018-07-17 2018-12-21 清华大学 客户端程序数据采集方法及系统
CN109218322A (zh) * 2018-09-28 2019-01-15 郑州昂视信息科技有限公司 一种拟态防御方法、装置及系统
CN109543433A (zh) * 2018-11-27 2019-03-29 网易(杭州)网络有限公司 软件开发工具包加密方法、装置、计算机和存储介质
CN109918048A (zh) * 2018-12-27 2019-06-21 北京奇艺世纪科技有限公司 目标对象提取方法、装置、系统及计算机可读存储介质
CN110222104A (zh) * 2019-04-30 2019-09-10 中国人民财产保险股份有限公司 数据提取方法、设备及存储介质
CN113312053A (zh) * 2020-02-27 2021-08-27 北京沃东天骏信息技术有限公司 一种数据处理的方法和装置
CN113691574A (zh) * 2020-05-19 2021-11-23 武汉同创元盛科技有限公司 一种基于电商交易的综合服务管理平台及其实现方法
CN113992342A (zh) * 2021-09-10 2022-01-28 南京南瑞信息通信科技有限公司 一种无损网络安全监测管控方法、装置及系统
CN114039743A (zh) * 2021-09-27 2022-02-11 成都鲁易科技有限公司 数据的加密方法、装置、存储介质以及终端

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118553A (zh) * 2007-08-09 2008-02-06 姜边 一种策略导向的面向领域的互联网信息采集方法
US20100211774A1 (en) * 2009-02-13 2010-08-19 Mitsubishi Electric Corporation Information gathering system, terminal unit, program for information gathering, and program for a terminal
CN103188088A (zh) * 2011-12-27 2013-07-03 北京新媒传信科技有限公司 设备信息采集系统及方法
CN103886095A (zh) * 2014-04-03 2014-06-25 北京深思数盾科技有限公司 跨平台目标文件复用方法
CN103973450A (zh) * 2014-04-24 2014-08-06 广东华邦技术软件有限公司 一种通信方法、系统及终端设备
CN104166822A (zh) * 2013-05-20 2014-11-26 阿里巴巴集团控股有限公司 一种数据保护的方法和装置
US20150023502A1 (en) * 2013-07-17 2015-01-22 Qualcomm Incorporated Communicating rf fingerprint-based geofences
CN106445526A (zh) * 2016-09-26 2017-02-22 哈尔滨工业大学 Hit‑tena数据采集器及hit‑tena数据采集方法
CN106933551A (zh) * 2015-12-30 2017-07-07 北京国双科技有限公司 配置处理方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267333B (zh) * 2007-06-15 2011-09-07 南京联创科技集团股份有限公司 自动变更采集代理的业务系统监控方法
CN101833498B (zh) * 2009-07-31 2012-06-06 北京伟晨豪嘉科技有限责任公司 一种基于测试脚本技术的嵌入式系统自动化检测系统
CN104360837B (zh) * 2014-10-16 2017-10-13 公安部第三研究所 取证软件中基于自定义脚本实现电子数据取证分析的方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118553A (zh) * 2007-08-09 2008-02-06 姜边 一种策略导向的面向领域的互联网信息采集方法
US20100211774A1 (en) * 2009-02-13 2010-08-19 Mitsubishi Electric Corporation Information gathering system, terminal unit, program for information gathering, and program for a terminal
CN103188088A (zh) * 2011-12-27 2013-07-03 北京新媒传信科技有限公司 设备信息采集系统及方法
CN104166822A (zh) * 2013-05-20 2014-11-26 阿里巴巴集团控股有限公司 一种数据保护的方法和装置
US20150023502A1 (en) * 2013-07-17 2015-01-22 Qualcomm Incorporated Communicating rf fingerprint-based geofences
CN103886095A (zh) * 2014-04-03 2014-06-25 北京深思数盾科技有限公司 跨平台目标文件复用方法
CN103973450A (zh) * 2014-04-24 2014-08-06 广东华邦技术软件有限公司 一种通信方法、系统及终端设备
CN106933551A (zh) * 2015-12-30 2017-07-07 北京国双科技有限公司 配置处理方法和装置
CN106445526A (zh) * 2016-09-26 2017-02-22 哈尔滨工业大学 Hit‑tena数据采集器及hit‑tena数据采集方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘晓英: "软件开发中的一个重要环节-混淆", 《南京邮电学院学报》 *
霍建雷 等: "Java标识符重命名混淆算法及其实现", 《计算机工程》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829396A (zh) * 2018-06-15 2018-11-16 腾讯科技(深圳)有限公司 脚本编译的方法、脚本执行的方法、相关装置及系统
CN108829396B (zh) * 2018-06-15 2022-02-01 腾讯科技(深圳)有限公司 脚本编译的方法、脚本执行的方法、相关装置及系统
CN109063040B (zh) * 2018-07-17 2020-07-07 清华大学 客户端程序数据采集方法及系统
CN109063040A (zh) * 2018-07-17 2018-12-21 清华大学 客户端程序数据采集方法及系统
CN109218322A (zh) * 2018-09-28 2019-01-15 郑州昂视信息科技有限公司 一种拟态防御方法、装置及系统
CN109543433A (zh) * 2018-11-27 2019-03-29 网易(杭州)网络有限公司 软件开发工具包加密方法、装置、计算机和存储介质
CN109918048A (zh) * 2018-12-27 2019-06-21 北京奇艺世纪科技有限公司 目标对象提取方法、装置、系统及计算机可读存储介质
CN109918048B (zh) * 2018-12-27 2022-09-06 北京奇艺世纪科技有限公司 目标对象提取方法、装置、系统及计算机可读存储介质
CN110222104A (zh) * 2019-04-30 2019-09-10 中国人民财产保险股份有限公司 数据提取方法、设备及存储介质
CN113312053A (zh) * 2020-02-27 2021-08-27 北京沃东天骏信息技术有限公司 一种数据处理的方法和装置
CN113691574A (zh) * 2020-05-19 2021-11-23 武汉同创元盛科技有限公司 一种基于电商交易的综合服务管理平台及其实现方法
CN113992342A (zh) * 2021-09-10 2022-01-28 南京南瑞信息通信科技有限公司 一种无损网络安全监测管控方法、装置及系统
CN114039743A (zh) * 2021-09-27 2022-02-11 成都鲁易科技有限公司 数据的加密方法、装置、存储介质以及终端

Also Published As

Publication number Publication date
WO2019091016A1 (zh) 2019-05-16
CN107908392B (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
CN107908392A (zh) 数据采集工具包定制方法、装置、终端和存储介质
CN104680039B (zh) 一种应用程序安装包的数据保护方法及装置
TWI598765B (zh) Data protection methods and devices
US9542552B2 (en) Extensible platform for securing apps on a mobile device using policies and customizable action points
EP1376310A2 (en) Secure and opaque type library providing secure data protection of variables
Chell et al. The mobile application hacker's handbook
Meyerovich et al. Object views: Fine-grained sharing in browsers
CN105022936A (zh) 一种类class文件加密解密方法和装置
US11586726B2 (en) Secure web framework
CN109784007A (zh) 一种字节码加密的方法、字节码解密的方法及终端
CN110278115A (zh) 热更新方法及装置
CN109840400B (zh) 提供安全性的设备和方法以及针对通用中间语言执行安全性的设备和方法
CN110826031A (zh) 加密方法、装置、计算机设备及存储介质
CN106897587A (zh) 加固应用、加载加固应用的方法和装置
CN110096433A (zh) 一种iOS平台上获取加密数据的方法
CN116662941B (zh) 信息加密方法、装置、计算机设备和存储介质
Ozkan et al. Security analysis of mobile authenticator applications
WO2023053101A1 (en) Systems and methods for malicious code neutralization in execution environments
CN107871066A (zh) 基于安卓系统的代码编译方法及装置
JP6554103B2 (ja) 暗号アルゴリズムで使用されるときに秘密データを保護する方法
CN107066888A (zh) 可扩展的可信用户接口、方法和电子设备
Wang et al. Webenclave: protect web secrets from browser extensions with software enclave
CN113282892A (zh) 代码混淆方法、装置、计算机设备和存储介质
CN106648770A (zh) 一种应用程序安装包的生成方法、加载方法及装置
CN107229844B (zh) 检测swf文件调用者的方法、装置、服务端及客户端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant