CN111488602A - 数据对象的隐私保护方法、装置及电子设备 - Google Patents
数据对象的隐私保护方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111488602A CN111488602A CN202010300460.1A CN202010300460A CN111488602A CN 111488602 A CN111488602 A CN 111488602A CN 202010300460 A CN202010300460 A CN 202010300460A CN 111488602 A CN111488602 A CN 111488602A
- Authority
- CN
- China
- Prior art keywords
- data object
- target
- target data
- private key
- index
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本说明书实施例提供数据对象的隐私保护方法、装置及电子设备,该方法包括:响应于目标设备运行目标数据对象的请求,打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引;根据索引在目标设备中运行目标数据对象。
Description
技术领域
本说明书涉及互联网技术领域,更具体地,涉及数据对象的隐私保护方法、数据对象的隐私保护装置、电子设备及计算机可读存储介质。
背景技术
随着人工智能的发展,越来越多的行业场景需要建立机器学习模型,包括但不限于应用统计分析方法、机器学习方法、深度学习方法、迁移学习方法等进行建模。
在现有技术中,越来越多的机器学习模型的代码产品实现了商业化。因此,本说明书需要提出一种保护代码产品的隐私的方法。
发明内容
本说明书的实施例提供了一种对数据对象进行隐私保护的新技术方案。
根据本说明书的第一方面,提供了一种数据对象的隐私保护方法,包括:
响应于目标设备运行目标数据对象的请求,打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引;
根据所述索引在所述目标设备中运行所述目标数据对象。
可选的,还包括:
获取原始数据对象;
将所述原始数据对象转换为指定语言类型的所述目标数据对象;
并将所述目标数据对象传输至所述目标设备上。
可选的,还包括:
对所述目标数据对象进行加密,并将对应的私钥存储至所述目标数据对象对应的运行框架中;
将加密的目标数据对象和所述运行框架传输至所述目标设备上。
可选的,还包括:
对所述私钥进行加密,以将加密后的私钥存储至所述目标数据对象对应的运行框架中。
可选的,所述根据所述索引在所述目标设备中运行所述目标数据对象之前还可以包括:
根据预设的公钥对所述加密后的私钥进行解密处理,得到所述私钥;
根据所述私钥对所述加密的目标数据对象进行解密处理,得到所述目标数据对象。
可选的,所述对所述目标数据对象进行加密包括:
对所述目标数据对象进行符号混淆、字符串混淆、汇编混淆、控制流混淆和数据流混淆中的至少一种。
可选的,还包括:
获取所述目标设备的设备信息;其中,所述设备信息为用于唯一标识所述目标设备的信息;
根据所述设备信息生成所述目标设备的授权码;
将所述授权码提供至所述目标设备进行授权。
可选的,还包括:
响应于所述请求,对所述目标设备进行鉴权,在鉴权成功的情况下,执行所述打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引的步骤。
根据本说明书的第二方面,提供了一种数据对象的隐私保护装置,包括:
响应模块,用于响应于目标设备运行目标数据对象的请求,打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引;
运行模块,用于根据所述索引在所述目标设备中运行所述目标数据对象。
可选的,还包括:
用于获取原始数据对象的模块;
用于将所述原始数据对象转换为指定语言类型的所述目标数据对象的模块;
用于将所述目标数据对象传输至所述目标设备上的模块。
可选的,还包括:
用于对所述目标数据对象进行加密,并将对应的私钥存储至所述目标数据对象对应的运行框架中的模块;
用于将加密的目标数据对象和所述运行框架传输至所述目标设备上的模块。
可选的,还包括:
用于对所述私钥进行加密,以将加密后的私钥存储至所述目标数据对象对应的运行框架中的模块。
可选的,还包括:
用于根据预设的公钥对所述加密后的私钥进行解密处理,得到所述私钥的模块;
用于根据所述私钥对所述加密的目标数据对象进行解密处理,得到所述目标数据对象的模块。
可选的,所述对所述目标数据对象进行加密包括:
对所述目标数据对象进行符号混淆、字符串混淆、汇编混淆、控制流混淆和数据流混淆中的至少一种。
可选的,还包括:
用于获取所述目标设备的设备信息的模块;其中,所述设备信息为用于唯一标识所述目标设备的信息;
用于根据所述设备信息生成所述目标设备的授权码的模块;
用于将所述授权码提供至所述目标设备进行授权的模块。
可选的,还包括:
用于响应于所述请求,对所述目标设备进行鉴权的模块;
所述响应模块用于在鉴权成功的情况下,执行所述打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引。
根据本说明书的第三方面,提供了一种电子设备,包括:处理器和存储器,所述存储器用于存储可执行的指令,所述指令用于控制所述处理器执行根据本说明书第一方面所述的方法。
根据本说明书的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现如本说明书第一方面所述的方法。
通过以下参照附图对本说明书的示例性实施例的详细描述,本说明书的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本说明书的实施例,并且连同其说明一起用于解释本说明书的原理。
图1是可用于实现本说明书第一个实施例的数据对象的隐私保护方法的电子设备的硬件配置的框图。
图2是可用于实现本说明书第二个实施例的数据对象的隐私保护方法的电子设备的硬件配置的框图。
图3示出了一个实施例的数据对象的隐私保护场景的示意图。
图4示出了一个实施例的数据对象的隐私保护方法的流程图。
图5示出了另一个实施例的数据对象的隐私保护场景的示意图。
图6示出了另一个实施例的数据对象的隐私保护方法的流程图。
图7示出了一个实施例的数据对象的隐私保护装置的框图。
图8示出了一个实施例的电子设备的框图。
具体实施方式
现在将参照附图来详细描述本说明书的各种示例性实施例。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本说明书及其应用或使用的任何限制。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
图1和图2是可用于实现本说明书任意实施例的数据对象的隐私保护方法的电子设备1000的硬件配置的框图。
在一个实施例中,如图1所示,电子设备1000可以是服务器1100。
服务器1100提供处理、数据库、通讯设施的计算机。服务器1100可以是整体式服务器或是跨多计算机或计算机数据中心的分散式服务器。服务器可以是各种类型的,例如但不限于,网络服务器,新闻服务器,邮件服务器,消息服务器,广告服务器,文件服务器,应用服务器,交互服务器,数据库服务器,或代理服务器。在一些实施例中,每个服务器可以包括硬件,软件,或用于执行服务器所支持或实现的合适功能的内嵌逻辑组件或两个或多个此类组件的组合。例如,服务器例如刀片服务器、云端服务器等,或者可以是由多台服务器组成的服务器群组,可以包括上述类型的服务器中的一种或多种等等。
本实施例中,服务器1100可以如图1所示,包括处理器1110、存储器1120、接口装置1130、通信装置1140、显示装置1150、输入装置1160。
在该实施例中,服务器1100还可以包括扬声器、麦克风等等,在此不做限定。
处理器1110可以是专用的服务器处理器,也可以是满足性能要求的台式机处理器、移动版处理器等,在此不做限定。存储器1120例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1130例如包括各种总线接口,例如串行总线接口(包括USB接口)、并行总线接口等。通信装置1140例如能够进行有线或无线通信。显示装置1150例如是液晶显示屏、LED显示屏触摸显示屏等。输入装置1160例如可以包括触摸屏、键盘等。
在该实施例中,服务器1100的存储器1120用于存储指令,该指令用于控制处理器1110进行操作以至少执行根据本说明书任意实施例的数据对象的隐私保护方法。技术人员可以根据本说明书所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
尽管在图1中示出了服务器1100的多个装置,但是,本说明书可以仅涉及其中的部分装置,例如,服务器1100只涉及存储器1120和处理器1110。
在一个实施例中,电子设备1000可以是操作人员使用的PC机、笔记本电脑等终端设备1200,在此不做限定。
本实施例中,参照图2所示,终端设备1200可以包括处理器1210、存储器1220、接口装置1230、通信装置1240、显示装置1250、输入装置1260、扬声器1270、麦克风1280等等。
处理器1210可以是移动版处理器。存储器1220例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1230例如包括USB接口、耳机接口等。通信装置1240例如能够进行有线或无线通信,通信装置1240可以包括短距离通信装置,例如是基于Hilink协议、WiFi(IEEE 802.11协议)、Mesh、蓝牙、ZigBee、Thread、Z-Wave、NFC、UWB、LiFi等短距离无线通信协议进行短距离无线通信的任意装置,通信装置1240也可以包括远程通信装置,例如是进行WLAN、GPRS、2G/3G/4G/5G远程通信的任意装置。显示装置1250例如是液晶显示屏、触摸显示屏等。输入装置1260例如可以包括触摸屏、键盘等。用户可以通过扬声器1270和麦克风1280输入/输出语音信息。
在该实施例中,终端设备1200的存储器1220用于存储指令,该指令用于控制处理器1210进行操作以至少执行根据本说明书任意实施例的数据对象的隐私保护方法。技术人员可以根据本说明书所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
尽管在图2中示出了终端设备1200的多个装置,但是,本说明书可以仅涉及其中的部分装置,例如,终端设备1200只涉及存储器1220和处理器1210和显示装置1250。
<方法实施例一>
图3为本说明书的一个实施例的数据对象的隐私保护方法的应用场景的示意图。
在如图3所示的场景中,可以包括数据对象的使用方可以提供用于触发目标设备运行目标数据对象的请求的接口,数据对象的使用方的用户可以通过点击该接口,触发目标设备运行目标数据对象的请求。数据对象的使用方的电子设备响应于目标设备运行目标数据对象的请求,打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引;并根据该索引运行目标数据对象。
图4为一个实施例的数据对象的隐私保护方法的示意性流程图。在一个例子中,图4所示的方法可以是由数据对象使用方的目标设备实施。该目标设备可以是如图1所示的服务器1100,或者是如图2所示终端设备1200提供。
如图4所示,本实施例的方法包括如下步骤S402~S404:
步骤S402,响应于目标设备运行目标数据对象的请求,打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引。
在本实施例中,目标数据对象可以是预先传输并保存至目标设备中的。
该目标设备运行目标数据对象的请求可以是由用户通过目标设备来触发的。
在本说明书的一个或多个实施例中,该目标数据对象可以是模型代码。在本说明书的实施例中,模型代码具体可以是实现任意模型功能的代码。
进一步地,该模型代码可以是C++语言的模型代码。
在目标数据对象是C++语言的模型代码的实施例中,模型代码例如可以包括输入层、隐藏层和输出层,其中隐藏层还可以包括卷积层、池化层和激活层。模型代码的每一层均可以作为一个网络结构。
输入层用于对数据进行预处理,包括去均值、归一化、PCA(principal componentsanalysis,主成分分析)/白化中的至少一个。其中,去均值是把输入数据各个维度都中心化到0。归一化是将输入数据的幅度归一化到同样的范围。PCA是用PCA降维。白化是对数据每个特征轴上的幅度归一化。
卷积层用于提取输入的不同特征。每层卷积层由若干卷积单元(卷积核)组成,每个卷积单元的参数都是通过反向传播算法优化得到的。
激活层用于把卷积层输出结果做非线性映射。
池化层用于压缩数据和参数的量,减小过拟合,减低网络的复杂度。
全连接层也就是最后的输出层,计算损失进行分类(或回归)。前面的卷积和池化相当于做特征工程,最后的全连接层在整个卷积神经网络中起到“分类器”的作用。
在接收到目标设备运行目标数据对象的请求时,可以对目标数据对象的网络结构进行随机打乱,并生成用于记录每一网络结构对应的网络数据在目标设备中的存储地址的索引。
具体的,该索引中记录了每一网络结构对应的网络数据的存储地址,在运行目标数据对象的情况下,通过该索引可以获得正确顺序的网络数据。
步骤S404,根据该索引在目标设备中运行该目标数据对象。
通过本实施例的方法,可以抵御内存备份文件系统攻击,保护用户的隐私,提升目标数据对象的安全性。
在本说明书的一个或多个实施例中,该方法还可以包括由数据对象提供方的电子设备实施的如下步骤:
获取目标设备的设备信息;根据该设备信息生成目标设备的授权码;将该授权码提供至目标设备进行授权。
其中,设备信息为用于唯一标识目标设备的信息,例如,可以是目标设备的IP地址、MAC地址和硬件地址等信息中的至少一个。
在本实施例中,根据设备信息所生成的授权码,可以反映对目标设备进行授权的信息,仅能够用于对目标设备进行授权。
将授权码提供至目标设备进行授权,具体可以包括:将授权码提供至目标设备中,验证目标设备的设备信息与该授权码是否匹配,在匹配的情况下,在设定期限或者设定次数内对目标设备进行授权。
对应的,该方法还可以包括由数据对象使用方执行的如下步骤:响应于该目标设备运行目标数据对象请求,对目标设备进行鉴权,在鉴权成功的情况下,执行打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引的步骤。
在设定期限内对目标设备进行授权的实施例中,对目标设备进行鉴权具体可以是:检测对目标设备进行鉴权的当前时刻是否属于设定期限,如是,则鉴权成功。
在设定次数内对目标设备进行授权的实施例中,对目标设备进行鉴权具体可以是:根据设定次数确定目标数据对象的剩余授权次数,在该剩余授权次数为正整数的情况下,鉴权成功,并将目标设备的剩余授权次数减一。其中,在首次对目标设备进行鉴权的情况下,剩余授权次数等于设定次数。
通过本实施例,可以进一步保护用户的隐私,提升目标数据对象的安全性。
<方法实施例二>
在前述实施例一的基础上,图5为本说明书的另一个实施例的数据对象的隐私保护方法的应用场景的示意图。
在如图5所示的场景中,可以包括数据对象的使用方的目标设备和数据对象的提供方的电子设备。数据对象的提供方的电子设备,可以是将目标数据对象提供至数据对象的使用方的目标设备。或者,也可以是对目标数据对象进行加密,并将对应的私钥存储至目标数据对象对应的运行框架中,并将加密的目标数据对象和运行框架传输至目标设备中。
在将目标数据对象传输至数据对象的使用方的目标设备上之后,用户可以在目标设备上触发运行目标数据对象的请求,根据预设的公钥对运行框架中存储的加密后的私钥进行解密处理,得到私钥;再根据该私钥对加密的目标数据对象进行解密处理,得到目标数据对象;打乱目标数据对象的网络结构,并生成用于记录每一网络结构对应的网络数据在目标设备中的存储地址的索引;根据该索引在目标设备中运行目标数据对象。
数据对象的提供方的电子设备可以是如图1所示的服务器1100,或者是如图2所示终端设备1200提供。
在本说明书的一个或多个实施例中,在数据对象的提供方将目标数据对象传输至目标设备中之前,该方法还可以包括如图6所示的步骤S602~S604:
步骤S602,对目标数据对象进行加密,并将对应的私钥存储至目标数据对象对应的运行框架中。
在本实施例中,该私钥为与对目标数据对象的加密方式对应的秘钥,可以用于对加密的目标数据对象进行解密。
在本说明书的一个或多个实施例中,例如可以但不限于对目标数据对象进行加密打包或者进行混淆。
对目标数据对象进行混淆的方式可以包括:符号混淆(Symbols Name Obfucate,SNO)、字符串混淆(Constant String Encryption,CSE)、汇编混淆(Assemble FlowObfuscate,AFO)、控制流混淆(Control Flow Obfuscate,CFO)和数据流混淆(Data FlowObfuscate,DFO)中的至少一种。
符号混淆是对C/C++全局变量,函数名,类名,结构名,命名空间等的名称进行混淆,对于OC符号(interface、category、method)混淆也是支持的。业界符号混淆的做法基本都是将原始符号混淆成无意义的符号,例如,a,b,c等。在本说明书的一个或多个实施例中,可以是将原始符号混淆成一个看起来有意义的名称,这样更加具有迷惑性。
字符串加密是对目标数据对象中敏感的字符串和常量进行加密,运行时再解密。用来抵抗静态分析。CSE随机使用多种加密算法对常量进行加密保护,保证其保护效果的多样性。同时CSE支持对OC字符串、字符串数组、struct字符串数组保护。
汇编混淆是对原有技术的增强版,能够有效对抗IDA、或Hopper等逆向工具进行反汇编、流程图分析和F5伪代码翻译。AFO是一种IR混淆结合汇编混淆的保护方案,两者各有特点。IR混淆往往在对抗反编译上有较好的效果,ASM汇编混淆则对抗反汇编上有比较明显的作用。AFO结合两者的特点,这样就提供双重的保护效果。
本实施例中的控制流混淆大幅度加强了FLA和BCF的功能,并将两者的功能融为一体。
CFO中借鉴了FLA中使用switch进行调度的思路,但是不再是单一的switch模式,且模式更多样化、随机化;CFO中也集成了BCF的功能,并引入了更多样化的不透明谓词,且判断结果随机为true或者false,提高了混淆的强度,而且可以实现技术完全闭源。
对于数据流混淆,符号执行和污点分析等攻击技术都是用于辅助分析程序中的数据流。例如对于恶意代码分析和漏洞样本分析的细粒度分析平台研究——ARM可视化逆向数据流回溯,它可以逆向分析出通过加固之后的程序的原始数据流图,而它的技术支持就是污点分析和符号执行。
然而符号执行和污点分析技术也会被恶意的攻击者所采用,数据流混淆保护方案,其针对符号执行和污点分析技术具有路径爆炸和污点污染这些缺点,提高了逆向成本。
本实施例中通过对目标数据对象进行加密,可以有效保护用户的隐私,提升目标数据对象的安全性,防止非授权用户对目标数据对象进行反编译攻击。
目标数据对象对应的运行框架可以是TVM框架。TVM是一个用于深度学习系统的编译器堆栈。它旨在缩小以生产力为重点的深度学习框架与面向性能或效率的硬件后端之间的差距。TVM提供以下主要功能:将Keras,MXNet,PyTorch,Tensorflow,CoreML,DarkNet中的深度学习模型汇编成各种硬件后端的最小可部署模块;基础架构可在更多后端自动生成和优化张量运算符,并具有更好的性能。
步骤S604,将加密的目标数据对象和该运行框架传输至目标设备上。
在本实施例中,通过对目标数据对象进行加密,可以抵御接口攻击,可以进一步提高在数据对象的提供方和使用方之间传输的数据的安全性,保证目标数据对象的隐私。
在本说明书的一个或多个实施例中,该方法还可以包括:
对该私钥进行加密,以将加密后的私钥存储至目标数据对象对应的运行框架中。
在本实施例中,可以是预先与目标设备约定对私钥的加密方式,并将用于对加密后的私钥进行解密的公钥预先存储至目标设备中,对应的,根据索引在目标设备中运行目标数据对象之前还可以包括:
根据预设的公钥对运行框架中存储的加密后的私钥进行解密处理,得到私钥;再根据该私钥对加密的目标数据对象进行解密处理,得到目标数据对象。
在本实施例中,通过对私钥进行二次加密的方式,可以进一步保护用户的隐私,提升目标数据对象的安全性。
在本说明书的一个或多个实施例中,该目标数据对象为指定语言类型的数据对象,但是,数据对象的提供方的用户所编译的数据对象可以是其他语言类型的,那么,在此基础上,本实施例还可以包括如下所示的步骤:
获取原始数据对象;将原始数据对象转换为指定语言类型的目标数据对象。
在本说明书的一个或多个实施例中,该原始数据对象可以是其他语言类型的模型代码,其与目标原始对象所能够实现的功能逻辑可以相同。
具体的,该原始数据对象可以是由数据对象的提供方的用户编译得到的,例如可以是python语言的模型代码。
在本说明书的一个或多个实施例中,指定语言类型可以是C++语言,那么,将原始数据对象转换为指定语言类型的目标数据对象可以是:将python语言的模型代码转换为C++语言的模型代码。
<装置>
在本实施例中,提供一种数据对象的隐私保护装置7000。如图7所示,该数据对象的隐私保护装置7000可以包括响应模块7100和运行模块7200。该响应模块7100用于响应于目标设备运行目标数据对象的请求,打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引;该运行模块7200用于根据索引在目标设备中运行目标数据对象。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于获取原始数据对象的模块;
用于将原始数据对象转换为指定语言类型的目标数据对象的模块;
用于将目标数据对象传输至目标设备上的模块。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于对目标数据对象进行加密,并将对应的私钥存储至目标数据对象对应的运行框架中的模块;
用于将加密的目标数据对象和运行框架传输至目标设备上的模块。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于对私钥进行加密,以将加密后的私钥存储至目标数据对象对应的运行框架中的模块。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于根据预设的公钥对加密后的私钥进行解密处理,得到私钥的模块;
用于根据私钥对加密的目标数据对象进行解密处理,得到目标数据对象的模块。
在本说明书的一个或多个实施例中,对目标数据对象进行加密包括:
对目标数据对象进行符号混淆、字符串混淆、汇编混淆、控制流混淆和数据流混淆中的至少一种。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于获取目标设备的设备信息的模块;其中,设备信息为用于唯一标识目标设备的信息;
用于根据设备信息生成目标设备的授权码的模块;
用于将授权码提供至目标设备进行授权的模块。
在本说明书的一个或多个实施例中,该数据对象的隐私保护装置7000可以还包括:
用于响应于请求,对目标设备进行鉴权的模块;
响应模块用于在鉴权成功的情况下,执行打乱目标数据对象的网络结构,并生成用于记录网络结构对应的网络数据在目标设备中的存储地址的索引。
本领域技术人员应当明白,可以通过各种方式来实现数据对象的隐私保护装置7000。例如,可以通过指令配置处理器来实现数据对象的隐私保护装置7000。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现数据对象的隐私保护装置7000。例如,可以将数据对象的隐私保护装置7000固化到专用器件(例如ASIC)中。可以将数据对象的隐私保护装置7000分成相互独立的单元,或者可以将它们合并在一起实现。数据对象的隐私保护装置7000可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
在本实施例中,数据对象的隐私保护装置7000可以具有多种实现形式,例如,数据对象的隐私保护装置7000可以是任何的提供数据对象的隐私保护服务的软件产品或者应用程序中运行的功能模块,或者是这些软件产品或者应用程序的外设嵌入件、插件、补丁件等,还可以是这些软件产品或者应用程序本身。
<电子设备>
在本实施例中,还提供一种电子设备8000。该电子设备8000可以包括如图1中所示的服务器1100,也可以是如图1中所示的终端设备1200。
如图8所示,电子设备8000还可以包括处理器8100和存储器8200,该存储器8200用于存储可执行的指令;该处理器8100用于根据指令的控制运行电子设备8000执行根据本说明书任意实施例的数据对象的隐私保护方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例中的说明的都是与其他实施例的不同之处。尤其,对于装置实施例和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书可以是电子设备、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本说明书的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本说明书操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本说明书的各个方面。
这里参照根据本说明书实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本说明书的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本说明书的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本说明书的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本说明书的范围由所附权利要求来限定。
上述对本说明书特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的效果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连接顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
Claims (11)
1.一种数据对象的隐私保护方法,包括:
响应于目标设备运行目标数据对象的请求,打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引;
根据所述索引在所述目标设备中运行所述目标数据对象。
2.根据权利要求1所述的方法,还包括:
获取原始数据对象;
将所述原始数据对象转换为指定语言类型的所述目标数据对象;
并将所述目标数据对象传输至所述目标设备上。
3.根据权利要求1所述的方法,还包括:
对所述目标数据对象进行加密,并将对应的私钥存储至所述目标数据对象对应的运行框架中;
将加密的目标数据对象和所述运行框架传输至所述目标设备上。
4.根据权利要求3所述的方法,还包括:
对所述私钥进行加密,以将加密后的私钥存储至所述目标数据对象对应的运行框架中。
5.根据权利要求4所述的方法,所述根据所述索引在所述目标设备中运行所述目标数据对象之前还包括:
根据预设的公钥对所述加密后的私钥进行解密处理,得到所述私钥;
根据所述私钥对所述加密的目标数据对象进行解密处理,得到所述目标数据对象。
6.根据权利要求2所述的方法,所述对所述目标数据对象进行加密包括:
对所述目标数据对象进行符号混淆、字符串混淆、汇编混淆、控制流混淆和数据流混淆中的至少一种。
7.根据权利要求1所述的方法,还包括:
获取所述目标设备的设备信息;其中,所述设备信息为用于唯一标识所述目标设备的信息;
根据所述设备信息生成所述目标设备的授权码;
将所述授权码提供至所述目标设备进行授权。
8.根据权利要求7所述的方法,还包括:
响应于所述请求,对所述目标设备进行鉴权,在鉴权成功的情况下,执行所述打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引的步骤。
9.一种数据对象的隐私保护装置,包括:
响应模块,用于响应于目标设备运行目标数据对象的请求,打乱所述目标数据对象的网络结构,并生成用于记录所述网络结构对应的网络数据在所述目标设备中的存储地址的索引;
运行模块,用于根据所述索引在所述目标设备中运行所述目标数据对象。
10.一种电子设备,包括:处理器和存储器,所述存储器用于存储可执行的指令,所述指令用于在所述电子设备运行时控制所述处理器执行根据权利要求1至8中任一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现如权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010300460.1A CN111488602A (zh) | 2020-04-16 | 2020-04-16 | 数据对象的隐私保护方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010300460.1A CN111488602A (zh) | 2020-04-16 | 2020-04-16 | 数据对象的隐私保护方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111488602A true CN111488602A (zh) | 2020-08-04 |
Family
ID=71792463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010300460.1A Pending CN111488602A (zh) | 2020-04-16 | 2020-04-16 | 数据对象的隐私保护方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111488602A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463722A (zh) * | 2020-12-18 | 2021-03-09 | 中国计量大学上虞高等研究院有限公司 | 一种嵌入式SoC软件的离线保护系统及配置方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202421A (zh) * | 2014-09-19 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于云计算的密码服务系统 |
CN108537012A (zh) * | 2018-02-12 | 2018-09-14 | 北京梆梆安全科技有限公司 | 基于变量和代码执行顺序的源代码混淆方法及装置 |
CN108898028A (zh) * | 2018-07-06 | 2018-11-27 | 成都大象分形智能科技有限公司 | 涉及迭代与随机加密的神经网络模型加密保护系统及方法 |
CN110062014A (zh) * | 2019-06-11 | 2019-07-26 | 苏州思必驰信息科技有限公司 | 网络模型的加密、解密方法及系统 |
CN110619220A (zh) * | 2019-08-09 | 2019-12-27 | 北京小米移动软件有限公司 | 对神经网络模型加密的方法及装置、存储介质 |
-
2020
- 2020-04-16 CN CN202010300460.1A patent/CN111488602A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202421A (zh) * | 2014-09-19 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于云计算的密码服务系统 |
CN108537012A (zh) * | 2018-02-12 | 2018-09-14 | 北京梆梆安全科技有限公司 | 基于变量和代码执行顺序的源代码混淆方法及装置 |
CN108898028A (zh) * | 2018-07-06 | 2018-11-27 | 成都大象分形智能科技有限公司 | 涉及迭代与随机加密的神经网络模型加密保护系统及方法 |
CN110062014A (zh) * | 2019-06-11 | 2019-07-26 | 苏州思必驰信息科技有限公司 | 网络模型的加密、解密方法及系统 |
CN110619220A (zh) * | 2019-08-09 | 2019-12-27 | 北京小米移动软件有限公司 | 对神经网络模型加密的方法及装置、存储介质 |
EP3772700A1 (en) * | 2019-08-09 | 2021-02-10 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and device for encrypting model of neural network, and storage medium |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463722A (zh) * | 2020-12-18 | 2021-03-09 | 中国计量大学上虞高等研究院有限公司 | 一种嵌入式SoC软件的离线保护系统及配置方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111371549B (zh) | 一种报文数据传输方法、装置及系统 | |
US10050982B1 (en) | Systems and methods for reverse-engineering malware protocols | |
CN107786331B (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
CN110858249B (zh) | 一种数据库文件加密方法、解密方法和相关装置 | |
CN110796267A (zh) | 数据共享的机器学习方法和机器学习装置 | |
WO2023029447A1 (zh) | 模型保护方法、装置、设备、系统以及存储介质 | |
JP2020524864A (ja) | データへのアクセスの制御 | |
CN110708291A (zh) | 分布式网络中数据授权访问方法、装置、介质及电子设备 | |
CN109412791B (zh) | 密钥信息处理方法、装置、电子设备及计算机可读介质 | |
CN111488602A (zh) | 数据对象的隐私保护方法、装置及电子设备 | |
CN109446751A (zh) | 生成包括多个子文件的数据集的方法、装置和存储介质 | |
CN103605927A (zh) | 一种基于嵌入式Linux系统实现加密和解密方法 | |
Sombatruang et al. | Internet Service Providers' and Individuals' Attitudes, Barriers, and Incentives to Secure {IoT} | |
CN109995534B (zh) | 一种对应用程序进行安全认证的方法和装置 | |
CN115883078A (zh) | 文件加密方法、文件解密方法、装置、设备及存储介质 | |
KR20200136629A (ko) | 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법 | |
CN113595982B (zh) | 一种数据传输方法、装置、电子设备及存储介质 | |
CN107403103B (zh) | 文件解密方法和装置 | |
Rijanandi et al. | Implementation of encrypt national ID card in Sinovi application use waterfall methodology | |
KR20210104338A (ko) | 양자난수 기반의 양자암호화칩이 탑재된 비화게이트웨이 및 이를 이용한 IoT디바이스간 비화통신 서비스 제공방법 | |
US8213601B2 (en) | Font level encryption method and apparatus | |
CN112654986A (zh) | 启用软件分布 | |
CN113886892B (zh) | 应用程序的数据获取方法和装置、及存储介质和电子设备 | |
CN112906034B (zh) | 一种密钥保存方法、装置、存储介质及电子设备 | |
KR102311996B1 (ko) | 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40034133 Country of ref document: HK |
|
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200804 |
|
RJ01 | Rejection of invention patent application after publication |