CN116451279B - 一种数据处理方法、装置、设备以及可读存储介质 - Google Patents
一种数据处理方法、装置、设备以及可读存储介质 Download PDFInfo
- Publication number
- CN116451279B CN116451279B CN202310730914.2A CN202310730914A CN116451279B CN 116451279 B CN116451279 B CN 116451279B CN 202310730914 A CN202310730914 A CN 202310730914A CN 116451279 B CN116451279 B CN 116451279B
- Authority
- CN
- China
- Prior art keywords
- data
- mask
- packet data
- list
- merging
- 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.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000003672 processing method Methods 0.000 title abstract description 12
- 238000000586 desensitisation Methods 0.000 claims abstract description 248
- 230000002776 aggregation Effects 0.000 claims abstract description 201
- 238000004220 aggregation Methods 0.000 claims abstract description 201
- 238000013507 mapping Methods 0.000 claims abstract description 172
- 238000009826 distribution Methods 0.000 claims abstract description 103
- 238000000034 method Methods 0.000 claims abstract description 82
- 238000001914 filtration Methods 0.000 claims abstract description 31
- 238000012545 processing Methods 0.000 claims description 120
- 230000006870 function Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 24
- 238000006116 polymerization reaction Methods 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 8
- 230000004931 aggregating effect Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 230000003993 interaction Effects 0.000 description 24
- 238000005516 engineering process Methods 0.000 description 22
- 238000013473 artificial intelligence Methods 0.000 description 16
- 238000012512 characterization method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 8
- 238000007405 data analysis Methods 0.000 description 5
- 238000013480 data collection Methods 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 241000282320 Panthera leo Species 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 241001282135 Poromitra oscitans Species 0.000 description 2
- 206010048232 Yawning Diseases 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
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/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
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种数据处理方法、装置、设备以及可读存储介质,方法包括:获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系;对分组数据进行脱敏处理,得到分组数据对应的脱敏数据,基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致;将对齐标识与脱敏数据之间的映射关系,对齐标识与混淆掩码之间的映射关系发送至第二对象;对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据对应的聚合结果。采用本申请,可以在传输业务数据的业务中提升数据传输的安全性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、设备以及可读存储介质。
背景技术
当前在诸多应用场景中,不同机构是独立存储自身相关的业务数据,甚至同一机构的不同部门也是将相关业务数据进行独立存储,以此来维护数据的安全性,虽然这很好地保护了数据,减少了数据被明文泄露的可能,但这也使得存在关联的业务数据被分散在了不同的机构或不同的部门,这些数据无法直接集中在一起,形成了“数据孤岛”的现象。
对于不同机构或不同部门所独立存储的数据,往往存在需要互相应用的需求,那么在存在数据互相应用的需求时,不同机构(或部门)则需要向其他方分享自己的业务数据。然而,相关技术中,在不同机构(或部门)分享业务数据时,通常是采用明文传输的方式来分享,这种方式虽然可以非常高效地将业务数据进行分享并展开后续地数据计算,但是这种方式非常不利于保护业务数据的安全性,使得各个机构的“孤岛数据”变成了公知数据。因此,对于“数据孤岛”场景中的不同机构的“孤岛数据”,如何将这些“孤岛数据”进行安全地分享传输,是一个亟待解决的问题。
发明内容
本申请实施例提供一种数据处理方法、装置、设备以及可读存储介质,可以在传输业务数据的业务中,提升数据传输的安全性。
本申请实施例一方面提供了一种数据处理方法,包括:
获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系;
对分组数据进行脱敏处理,得到分组数据对应的脱敏数据,基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致;
将对齐标识与分组数据对应的脱敏数据之间的映射关系,对齐标识与分组数据对应的混淆掩码之间的映射关系发送至第二对象;
对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果;第一聚合列表是第二对象基于对齐标识与分组数据对应的脱敏数据之间的映射关系,将分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;第二聚合列表是第二对象基于对齐标识与分组数据对应的混淆掩码之间的映射关系,将分组数据对应的混淆掩码与待聚合业务数据进行对齐聚合处理后所得到的。
本申请实施例一方面提供了一种数据处理装置,包括:
列表获取模块,用于获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系;
脱敏模块,用于对分组数据进行脱敏处理,得到分组数据对应的脱敏数据;
掩码分配模块,用于基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致;
发送模块,用于将对齐标识与分组数据对应的脱敏数据之间的映射关系,对齐标识与分组数据对应的混淆掩码之间的映射关系发送至第二对象;
过滤还原模块,用于对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果;第一聚合列表是第二对象基于对齐标识与分组数据对应的脱敏数据之间的映射关系,将分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;第二聚合列表是第二对象基于对齐标识与分组数据对应的混淆掩码之间的映射关系,将分组数据对应的混淆掩码与待聚合业务数据进行对齐聚合处理后所得到的。
在一个实施例中,脱敏模块对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
获取脱敏规则集合,在脱敏规则集合中确定分组数据对应的目标脱敏规则;
按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据。
在一个实施例中,目标脱敏规则为哈希变换规则;
脱敏模块按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
按照哈希变换规则获取哈希函数;
通过哈希函数对分组数据进行哈希计算处理,得到分组数据对应的哈希值;
将分组数据对应的哈希值确定为分组数据对应的脱敏数据。
在一个实施例中,目标脱敏规则为字符截取规则;
脱敏模块按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
按照字符截取规则获取用于唯一表征分组数据的字符序列;字符序列由N个字符所组成;N为正整数;
按照字符序列中N个字符的排列顺序,依次提取字符序列的前K个字符,得到提取字符序列;K为小于N的正整数;
将提取字符序列确定为分组数据对应的脱敏数据。
在一个实施例中,第一原始数据列表中包括的分组数据的数量为M个,M为正整数;
在掩码分配模块基于配置掩码集合为分组数据分配混淆掩码之前,数据处理装置还包括:
集合配置模块,用于对M个分组数据进行归并处理,得到M个分组数据对应的归并分组数据集合;归并分组数据集合中的每个归并分组数据均具备唯一性,归并分组数据集合中的每个归并分组数据均包含于M个分组数据中;
集合配置模块,还用于统计归并分组数据集合中所包含的归并分组数据的数量,将归并分组数据集合中所包含的归并分组数据的数量确定为第一数量;
集合配置模块,还用于统计归并分组数据集合中,每个归并分组数据在第一原始数据列表中的出现频率;
集合配置模块,还用于按照第一数量,以及每个归并分组数据在第一原始数据列表中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合。
在一个实施例中,归并分组数据集合中包含归并分组数据Si,i为正整数;
集合配置模块按照第一数量,以及每个归并分组数据在分组数据集合中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体实现方式,包括:
将M个分组数据中所包含的分组数据的数量确定为第二数量;
将归并分组数据Si在第一原始数据列表中的出现频率确定为目标出现频率,将目标出现频率与第二数量之间的比值,确定为归并分组数据Si对应的数据呈现概率;
当确定出每个归并分组数据Si分别对应的数据呈现概率时,将每个归并分组数据分别对应的数据呈现概率所组成的概率分布,确定为第一原始数据列表中的分组数据所指示的数据概率分布;
按照第一数量与数据概率分布,对M个分组数据进行掩码配置处理,得到配置掩码集合。
在一个实施例中,集合配置模块按照第一数量与数据概率分布,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体实现方式,包括:
按照第一数量在候选掩码集合中,选择Q个候选掩码;Q与第一数量相等;Q个候选掩码包括候选掩码Hc,c为正整数;
在归并分组数据集合中选择任一归并分组数据作为候选掩码Hc对应的第一映射归并分组数据,将数据概率分布中第一映射归并分组数据所对应的数据呈现概率,确定为候选掩码Hc对应的掩码呈现概率;
在归并分组数据集合中确定剩余候选掩码对应的第二映射归并分组数据,将数据概率分布中第二映射归并分组数据所对应的数据呈现概率,确定为剩余候选掩码对应的掩码呈现概率;剩余候选掩码是指Q个候选掩码中,除候选掩码Hc以外的候选掩码;剩余候选掩码对应的第二映射归并分组数据与候选掩码Hc对应的第一映射归并分组数据互不相同;
将剩余候选掩码对应的掩码呈现概率,与候选掩码Hc对应的掩码呈现概率所组成的概率分布,确定为Q个候选掩码所指示的掩码概率分布;
将Q个候选掩码均确定为配置掩码,将包含Q个配置掩码以及掩码概率分布的集合确定为配置掩码集合。
在一个实施例中,掩码分配模块基于配置掩码集合为分组数据分配混淆掩码的具体实现方式,包括:
获取配置掩码集合所指示的掩码概率分布;掩码概率分布中包括配置掩码集合中,每个配置掩码分别对应的掩码呈现概率;
基于每个配置掩码分别对应的掩码呈现概率,在配置掩码集合中确定分组数据对应的混淆掩码;配置掩码集合包括配置掩码Pd,d为正整数,配置掩码Pd对应的掩码呈现概率用于指示配置掩码Pd被分配为分组数据的混淆掩码的概率。
在一个实施例中,第一原始数据列表中包括的分组数据的数量为M个,分组数据对应的脱敏数据包含M个分组数据分别对应的脱敏数据;分组数据对应的混淆掩码包含M个分组数据分别对应的混淆掩码;M为正整数;第二原始数据列表中包括的待聚合业务数据的数量为W个,W为正整数;第一聚合列表包括归并脱敏数据集合中每个归并脱敏数据分别对应的第一聚合值;第二聚合列表包括归并混淆掩码集合中每个归并混淆掩码分别对应的第二聚合值;归并脱敏数据集合是由第二对象将M个脱敏数据进行归并处理后所得到的,归并脱敏数据集合中的每个归并脱敏数据均具备唯一性,归并脱敏数据集合中的归并脱敏数据均包含于M个脱敏数据中;归并混淆掩码集合是由第二对象将M个混淆掩码进行归并处理后所得到的,归并混淆掩码集合中的每个归并混淆掩码均具备唯一性,归并混淆掩码集合中的归并混淆掩码均包含于M个混淆掩码中;第一聚合值与第二聚合值,均是将W个待聚合业务数据中的一个或多个待聚合业务数据进行聚合处理后所得到的。
在一个实施例中,归并脱敏数据集合包括归并脱敏数据Ra,a为正整数,第一聚合列表中的归并脱敏数据Ra对应的第一聚合值,是第二对象将W个待聚合业务数据中的归并脱敏数据Ra对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,是基于第一对齐列表所确定的,第一对齐列表是指第二对象基于对齐标识与M个脱敏数据之间的映射关系,以及对齐标识与W个待聚合业务数据之间的映射关系,所构建得到的包含M个脱敏数据与W个待聚合业务数据之间的对齐关系的列表,第一对齐列表中一个脱敏数据与一个待聚合业务数据之间存在对齐关系,具有对齐关系的脱敏数据与待聚合业务数据所对应的对齐标识相同;归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,在第一对齐列表中所对齐的脱敏数据是相同的。
在一个实施例中,归并混淆掩码集合包括归并混淆掩码Tb,b为正整数,第二聚合列表中的归并混淆掩码Tb对应的第二聚合值,是第二对象将W个待聚合业务数据中的归并混淆掩码Tb对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,是基于第二对齐列表所确定的,第二对齐列表是指第二对象基于对齐标识与M个混淆掩码之间的映射关系,以及对齐标识与W个待聚合业务数据之间的映射关系,所构建得到的包含M个混淆掩码与W个待聚合业务数据之间的对齐关系的列表,第二对齐列表中一个混淆掩码与一个待聚合业务数据之间存在对齐关系,具有对齐关系的混淆掩码与待聚合业务数据所对应的对齐标识相同;归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,在第二对齐列表中所对齐的混淆掩码是相同的。
在一个实施例中,M个分组数据包括分组数据Sj,j为正整数;分组数据所对应的聚合结果包括分组数据Sj对应的聚合结果;
过滤还原模块对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果的具体实现方式,包括:
将第二聚合列表进行过滤处理,将第一聚合列表确定为目标待还原列表;
将M个脱敏数据中分组数据Sj对应的脱敏数据确定为目标脱敏数据,将归并脱敏数据集合中与目标脱敏数据相同的归并脱敏数据,确定为目标归并脱敏数据;
将目标待还原列表中目标归并脱敏数据对应的第一聚合值,确定为分组数据Sj对应的聚合结果。
本申请实施例一方面提供了一种计算机设备,包括:处理器和存储器;
存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行本申请实施例中的方法。
本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行本申请实施例中一方面提供的方法。
在本申请实施例中,在第一对象与第二对象之间的数据交互过程中,提出一种基于隐私保护的数据传输方法。具体的,对于第一对象期望传输至第二对象的第一原始数据列表,可以将该第一原始数据列表中具备隐私性的分组数据进行脱敏处理以及分配混淆掩码处理,随后,第一对象可以将脱敏处理所得到的脱敏数据以及为其所分配的混淆掩码,替代原始的分组数据发送至第二对象,也就是说,第一对象理应将第一原始数据列表中,对齐标识与分组数据之间的映射关系发送至第二对象,但是通过脱敏处理与掩码分配处理后,第一对象是将对齐标识与脱敏数据之间的映射关系、对齐标识与混淆掩码之间的映射关系发送至第二对象。其中,应当理解的是,本申请在为分组数据分配混淆掩码时,是从配置掩码集合中来为分组数据分配混淆掩码,该配置掩码集合可以是一个预先配置的掩码概率分布与分组数据所指示的数据概率分布一致的掩码集合,那么基于该配置掩码集合为分组数据分配混淆掩码再发送至第二对象后,对于第二对象而言,由于混淆掩码与原始的分组数据的概率分布是一致的,那么第二对象无法通过任何技术手段来推断出所接收到的数据是原始的分组数据还是具备混淆性的混淆掩码数据,由此可以很好地保护第一对象所发送的分组数据的隐私性,提升数据安全性;而对于第一对象而言,所接收到的也是第二对象基于上述映射关系所返回的聚合结果列表,该聚合结果列表是将第二原始数据列表中的待聚合业务数据进行聚合处理后所得到的,即第一对象并不会接收到任何属于第二对象的第二原始数据列表中的任何明细数据,那么在第一对象与第二对象进行数据交互时,本申请通过脱敏处理和分配混淆掩码的方式,可以将第一对象的分组数据作为加密数据进行传输,可以严格地保护第一对象的数据安全性,同时保护第二对象的数据明细,而第一对象可以基于脱敏数据与分组数据之间的对应关系、混淆掩码与分组数据之间的对应关系,来基于第二对象返回的聚合列表还原得到分组数据的聚合结果,由此也可以实现聚合结果的准确性。综上,本申请可以在传输业务数据的业务中,提升数据传输安全性与准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据处理系统的网络架构图;
图2是本申请实施例提供的一种数据处理方法的流程示意图;
图3是本申请实施例提供的一种基于对齐标识,将待聚合业务数据进行本地分组聚合得到聚合结果的场景示意图;
图4是本申请实施例提供的一种进行掩码配置确定配置掩码集合的流程示意图;
图5是本申请实施例提供的一种基于游戏场景的场景示意图;
图6是本申请实施例提供的一种数据处理装置的结构示意图;
图7是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例涉及到纵向联邦、随机掩码以及分组聚合等相关技术,为便于理解,以下将优先对纵向联邦、随机掩码以及分组聚合等相关技术概念进行阐述:
纵向联邦:纵向联邦是一种数据联邦技术,它将不同层次的数据集成在一起,例如将不同组织或不同地理位置的数据整合起来。在纵向联邦中,每个数据拥有者仅共享其部分数据,而不是所有数据。这种方法可以保护数据隐私,同时允许数据拥有者在不暴露数据的情况下进行分析和应用。纵向联邦在医疗保健、金融服务、广告和其他多种领域中得到广泛应用。
随机掩码:随机掩码是一种用于保护隐私的技术,在数据收集和共享过程中使用。它涉及将数据中的个人标识符替换为随机生成的标识符,以便保护个人的身份信息。这样可以使数据分析保持准确性,同时保护个人的隐私。
分组聚合:分组是使用特定的条件将元数据划分为多个组;聚合是对划分得到的每个分组中的数据执行某些操作,最后将计算结果进行整合。分组与聚合的过程可以至少分为以下三步:1)拆分:将数据集按照一些标准拆分为若干组。2)应用:将某个函数或者方法应用到每个分组。其中,函数或方法通常有Sum(求和函数)、Max(求最大值函数)、Min(求最小值函数)、Avg(求均值函数)、Count(计数函数)等,这里将不再进行赘述。3)合并:将步骤2)中产生的新值整合到结果对象中。
本申请实施例还涉及人工智能等相关技术,为便于理解,以下将对人工智能及其相关概念进行阐述:
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案属于人工智能领域中的纵向联邦技术和机器学习(Machine Learning, ML)。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
联邦学习旨在建立一个基于分布数据集的联邦学习模型。在模型训练的过程中,模型相关的信息能够在各方之间交换(或者是以加密形式交换),已训练好的联邦学习模型可以置于联邦学习系统的各参与方,也可以在多方之间共享。纵向联邦属于联邦学习中的一种。
本申请实施例具体可通过纵向联邦技术,将不同对象(如第一对象与第二对象)的相关数据进行交换,同时,可以通过机器学习技术来对联邦学习模型进行训练。
为便于理解,请参见图1,图1是本申请实施例提供的一种数据处理系统的网络架构图。如图1所示,该网络架构可以包括业务服务器1000和终端设备集群,终端设备集群可以包括一个或者多个终端设备,这里将不对终端设备的数量进行限制。如图1所示,多个终端设备可以包括终端设备100a、终端设备100b、终端设备100c、…、终端设备100n;如图1所示,终端设备100a、终端设备100b、终端设备100c、…、终端设备100n可以分别与业务服务器1000进行网络连接,以便于每个终端设备可以通过该网络连接与业务服务器1000之间进行数据交互。另外,终端设备集群100中的任一终端设备可以是指运行有操作系统的智能设备,本申请实施例对终端设备的操作系统不进行具体限定。
如图1所示的数据处理系统中的终端设备可以为智能手机、平板电脑、笔记本电脑、掌上电脑、台式计算机、移动互联网设备(MID,mobile internet device)、POS(PointOf Sales,销售点)机、智能音箱、智能电视、智能手表、智能车载终端、虚拟现实(VirtualReality,VR)设备、增强现实(Augmented Reality,AR)设备等,但并不局限于此。终端设备往往配置有显示装置,显示装置可以为显示器、显示屏、触摸屏等等,触摸屏可以为触控屏、触控面板等等。
如图1所示的数据处理系统中的业务服务器可以是单个的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备与业务服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在一种可能的实现方式中,终端设备(如终端设备100a)中运行有客户端,如视频客户端、浏览器客户端、游戏客户端、教育客户端等,这里将不对客户端进行一一举例说明。在本申请实施例中,各个终端设备可以是指不同对象(对象如企业、机构、部门)的设备,终端设备可以基于业务服务器1000进行数据交互(数据交换)。具体的,业务服务器1000中可以部署有训练完成的联邦学习模型,通过该联邦学习模型可以将不同对象的相关业务数据进行互通,且在互通的过程中,保证双方明细数据的隐私性,以此提升数据安全性。
为便于理解,以游戏发行方A为第一对象、游戏运营方B为第二对象、第一对象与第二对象之间存在数据交互需求为例,假设游戏运营方B存在有不同游戏的业务数据(如游戏推送数据),而若游戏发行方A期望统计自己发行的各个游戏的推送频率,同时不泄露自己对所发行的游戏的相关信息,那么游戏发行方与游戏运营方B即可基于本申请所提供的方法进行数据交互,以在保护双方数据明细的前提下,确定各个游戏对于游戏推送频率的聚合结果。
具体的,业务服务器1000可以对第一对象与第二对象所拥有的业务数据分别执行样本求交集操作(执行PSI操作),通过样本求交集操作可以分别提取出第一对象与第二对象的业务数据中,存在关联的业务数据(例如,游戏发行方A所存储的业务数据中,包含有游戏1、游戏2以及游戏3的相关业务数据;而游戏运营方B所存储的业务数据中,也包含有游戏1、游戏2以及游戏3的相关推送数据,那么通过执行PSI,可以在游戏发行方A所存储的业务数据中,提取出这些游戏1、游戏2以及游戏3的相关业务数据;也可以在游戏运营方B所存储的业务数据中,提取出游戏1、游戏2以及游戏3的相关推送数据);此外,通过执行PSI,还可以生成行对齐标识(例如,在游戏发行方A提取出的游戏1、游戏2以及游戏3的相关业务数据中,分别为游戏1、游戏2以及游戏3的相关业务数据各生成一个表征标识;在游戏运营方B提取出的游戏1、游戏2以及游戏3的相关推送数据中,分别为游戏1、游戏2以及游戏3的相关推送数据各生成一个表征标识,且对于同一个游戏,在游戏发行方A与游戏运营方B处的表征标识是一致的,该一致的表征标识可用于在后续过程中,将同一游戏在不同方的不同业务数据进行对齐处理,所以这里的表征标识本申请将其称之为对齐标识。例如,以游戏1为例,通过执行PSI,假设在游戏发行方A处,其表征标识为35242,那么在游戏运营方B处,其表征标识也为35242)。
为便于区别,本申请可以将第一对象中期望得到聚合结果的数据,称为分组数据(例如,针对上述游戏发行方A所发行的游戏1、游戏2以及游戏3,对于游戏运营方B处所存储的不同日期的游戏推送数据,会基于游戏1、游戏2以及游戏3进行分组,再进行各个分组内的聚合,所以这里可以将上述游戏发行方A所发行的游戏1、游戏2以及游戏3均称之为一个分组数据),那么通过执行PSI,可以确定出针对于第一对象的对齐标识与各个分组数据之间的一个映射关系,通过该映射关系可以构建得到一个映射表,即该映射表包含有第一对象中,各个分组数据及其对应的对齐标识;同理,通过执行PSI,也可以确定出针对于第二对象的待聚合业务数据(如上述游戏1、游戏2以及游戏3在不同日期的推送数据)与各个对齐标识的一个映射关系,通过该映射关系也可以构建得到一个映射表,即该映射表包含有第二对象中,各个待聚合业务数据及其对应的对齐标识。本申请为便于区别,可以将属于第一对象的表称为第一原始数据列表,将属于第二对象的表称为第二原始数据列表。也就是说,通过分别对第一对象与第二对象所拥有的业务数据执行PSI操作,可以得到属于第一对象的第一原始数据列表,以及属于第二对象的第二原始数据列表,其中,在第一原始数据列表中,包含有各个分组数据(分组数据是指作为第二对象的待聚合业务数据的分组基准的数据)与其对齐标识之间的映射关系,在第二原始数据列表中,包含有各个待聚合业务数据与其对齐标识之间的映射关系。
进一步地,对于第二原始数据列表中的待聚合业务数据,需要基于第一原始数据列表中的各个分组数据来进行分组处理以及聚合处理,那么业务服务器1000需要将第一对象的第一原始数据列表,发送至第二对象,以使第二对象将第二原始数据列表中的待聚合业务数据进行分组聚合处理,而为了提升第一对象与第二对象之间数据交互的安全性,本申请中,业务服务器1000可以不是直接向第二对象发送第一原始数据列表,而是将第一原始数据列表中的分组数据进行同态加密处理和随机数配置处理后,再向第二对象发送加密数与所配置的随机数。具体的,对于第一原始数据列表中的分组数据,业务服务器1000可以对其进行脱敏处理(这里的脱敏处理可以理解为同态加密处理,具体可以采用哈希变换、映射、字符截取等方式来进行同态加密处理),由此可以得到各个分组数据分别对应的脱敏数据(即加密数据);对于分组数据,业务服务器1000也可以基于配置掩码集合(配置掩码集合中包含有不同的配置掩码,该配置掩码集合可以基于第一原始数据列表中的分组数据来进行预先配置,所配置好的配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布需一致)为每个分组数据分配混淆掩码,由此可以得到各个分组数据分别对应的混淆掩码。应当理解,基于第一原始数据列表中,各个分组数据与对齐标识之间的映射关系,可以确定出各个对齐标识与各个脱敏数据之间的映射关系,也可以得到各个对齐标识与各个混淆掩码之间的映射关系,那么业务服务器1000可以将各个对齐标识与各个脱敏数据之间的映射关系,与各个对齐标识与各个混淆掩码之间的映射关系一并发送至第二对象。
进一步地,第二对象即可基于各个对齐标识与各个混淆掩码之间的映射关系,将各个脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理,得到第一聚合列表;第二对象也可基于各个对齐标识与各个混淆掩码之间的映射关系,将各个混淆掩码与第二原始数据列表中的待聚合业务数据进行对齐聚合处理,得到第二聚合列表。业务服务器1000可基于脱敏数据与分组数据之间的对应关系、混淆掩码与分组数据之间的对应关系,将第一聚合列表与第二聚合列表进行过滤还原处理,由此即可得到分组数据对应的聚合结果。随后,业务服务器1000即可将各个分组数据对应的聚合结果返回至第一对象。
应当理解,在第一对象与第二对象进行数据互通的过程中,通过对第一对象中的分组数据进行同态加密处理和混淆掩码配置处理,可以使得原始的分组数据不被泄露,同时可以使得第二对象基于加密数据与混淆掩码分别对待聚合业务数据进行聚合处理,所得到的聚合结果也是准确的,由于混淆掩码的概率分布与原始的分组数据的概率分布是一致的,那么第二对象也无法明确所接收到的是否为原始的分组数据,具备极强的混淆性,由此可以很好地提升原始的分组数据的安全性;而第一对象所接收到的也是第二对象所返回的一个聚合结果,并不涉及任何第二对象所存储的数据明细,第二对象的数据明细也无法被泄露,可以保护第二对象的数据安全性。
可以理解的是,本申请实施例所提供的方法可以由计算机设备执行,计算机设备包括但不限于图1中所提及的终端设备或业务服务器。
需要说明的是,在本申请的具体实施方式中,涉及到用户信息、用户数据(用户在游戏中产生的游戏数据、在后文所提及的上网行为数据)等相关的数据,均是需要经过用户手动授权许可(即经过用户同意)才进行获取得到的。也就是说,当本申请以上实施例运用到具体产品或技术中时,本申请实施例所提供的方法与相关功能是在获得用户许可或者同意下所运行的(可以由用户主动开启本申请实施例所提供的功能),且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
需要说明的是,本申请实施例所提及的方法可以应用于不同的场景领域中,上述游戏发行方统计游戏运营方中的游戏推送频率仅是一种示例性场景应用,对于具体的应用场景,本申请对此并不进行限定。例如,还可以应用于金融场景、医疗保健场景、广告等等场景领域中。在应用场景不同时,第一对象与第二对象会相应发生变化,第一原始数据列表中的分组数据、第二原始数据列表中的待聚合业务数据也会随着场景变化而变化。为便于理解,这里以应用于金融场景为例,假设银行A为第一对象、互联网公司B为第二对象、且第一对象与第二对象之间存在数据交互需求,假设互联网公司B与银行A有着一批重合的用户,其中,互联网公司B有着这些用户的上网行为等特征信息,而银行A有着这些用户的存贷情况等特征信息。若银行A期望能够结合自身特征信息与互联网公司B所存储的特征信息,以训练出一个能够更为准确地识别用户信用风险的模型,那么银行A需要收集到互联网公司B中,同一用户在不同日期的上网行为,以结合自身存贷情况识别用户信用风险。那么基于此,银行A中对于用户的存贷情况即可作为分组数据(或直接以用户作为分组数据),而互联网公司B中,用户的上网行为特征即可作为待聚合业务数据,需要将同一用户在不同时间的上网行为进行聚合。
为便于理解,为便于理解,接下来将结合附图对本申请实施例提供的数据处理方法进行详细描述。请参见图2,图2是本申请实施例提供的一种数据处理方法的流程示意图。其中,该方法可以由终端设备(例如,上述图1所示的终端设备集群中的任一终端设备,如终端设备100a)执行,也可以由服务器(如上述图1所对应实施例中的业务服务器1000)所执行,还可以由终端设备和服务器共同执行。为便于理解,本实施例以该方法由终端设备执行为例进行说明。如图2所示,该数据处理方法至少可以包括以下步骤S101-步骤S104:
步骤S101,获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系。
本申请中,对象可以是指某个企业、机构、部门、小组等形式的组织,而第一对象可以是指任意一个对象,第二对象可以是指与第一对象存在数据交互需求的某个对象。应当理解,第一对象与第二对象是不同的对象,第一对象与第二对象所负责的业务不同,但第一对象与第二对象可能存储有同一子对象(子对象如用户、游戏、物品、动物、植物等)的不同业务的业务数据。例如,以第一对象为银行A、第二对象为互联网公司B为例,此时子对象可以是指用户,那么第一对象负责为用户提供各种金融业务,而第二对象负责为用户提供各种互联网业务,第一对象对应的后台服务器存储有不同用户在银行A中的金融业务数据(如存款数据、贷款数据等),第二对象对应的后台服务器存储有不同用户的互联网业务数据(如上网行为数据),在第一对象与第二对象为同一用户C提供了业务服务时,那么第一对象对应的后台服务器存储有用户C的金融业务数据,第二对象对应的后台服务器也存储有用户C的互联网业务数据,即第一对象与第二对象均存储有用户C在不同业务中的业务数据。
可以理解的是,在不同对象之间,可能存在数据交互需求,通过数据交互以对子对象进行更好地分析。例如,银行A期望结合互联网公司B中对于用户的上网行为数据,来分析用户的信用风险,那么此时,银行A与互联网公司B就存在有数据交互需求,银行A与互联网公司B可以进行数据交互。
应当理解的是,不同对象之间所重合的子对象仅是部分,并非全部,那么在进行数据交互时,只需将重合的子对象有关的业务数据进行互通即可,无需将所有的业务数据均传输至对方。例如,假设银行A中存储有子对象C1、子对象C2、子对象C3的金融业务数据,而互联网公司B中存储有子对象C2、子对象C3、子对象D4、子对象D5的互联网业务数据,可见银行A与互联网公司B所重合的子对象为子对象C2与子对象D3,那么在进行数据交互时,只需要将子对象C2、子对象C3的金融业务数据,与子对象C2、子对象C3的互联网业务数据进行交互互通即可。
基于上述可知,在第一对象与第二对象之间进行数据交互时,需要先获取到第一对象与第二对象之间的重合子对象(即第一对象与第二对象均存储有相关业务数据的子对象),再从第一对象所存储的所有业务数据中,获取到该重合子对象相关的业务数据,从第二对象所存储的所有业务数据中,获取到该重合子对象相关的业务数据。而基于属于第一对象的重合子对象相关的业务数据,即可得到一个属于第一对象的数据列表(可称之为第一原始数据列表),该第一原始数据列表即为应分享至第二对象的数据;同理,基于属于第二对象的重合子对象相关的业务数据,可以得到一个属于第二对象的数据列表(可称之为第二原始数据列表),该第二原始数据列表即为应分享至第一对象的数据。
其中,可以理解的是,第一对象对应的终端设备(可称之为第一设备,该第一设备可部署有训练完成的联邦学习模型),可以通过联邦学习模型对第一对象的所有业务数据执行PSI操作,而第二对象对应的终端设备(可称之为第二设备,该第二设备可部署有训练完成的联邦学习模型),可以通过联邦学习模型对第二对象的所有业务数据执行PSI操作,通过PSI操作可以确定出双方重合子对象对应的不同业务数据,且对于同一重合子对象在双方的不同业务数据,具备同样的表征标识,该表征标识可用于在后续对齐聚合业务中进行对齐,所以也可以将重合子对象对应的表征标识称为对齐标识。那么最终,第一设备执行PSI操作后,可以确定出包含每个重合子对象对应的业务数据,以及对齐标识的数据列表,该数据列表即可确定为属于第一对象的第一原始数据列表;同理,第二设备执行PSI操作后,可以确定出包含每个重合子对象对应的业务数据,以及对齐标识的数据列表,该数据列表可确定为属于第二对象的第二原始数据列表。
为便于理解,以下将举例描述确定属于第一对象的第一原始数据列表与属于第二对象的第二原始数据列表的具体过程,以第一对象为银行A、第二对象为互联网公司B为例,假设银行A存储有子对象C1、子对象C2、子对象C3以及子对象C4的金融业务数据,互联网公司存储有子对象C1、子对象C2、子对象C3、子对象D4以及子对象D5的互联网业务数据,通过执行PSI后,可以得到属于银行A的原始数据列表如表1所示:
表1
通过执行PSI后,可以得到属于互联网公司B的原始数据列表如表2所示:
表2
其中,银行A与互联网公司B中的重合子对象为子对象C1、子对象C2以及子对象C3,那么如表1所示的原始数据列表中,即包含有子对象C1、子对象C2以及子对象C3分别对应的金融业务数据,其中,金融业务数据C1为子对象C1对应的金融业务数据、金融业务数据C2为子对象C2对应的金融业务数据、金融业务数据C3为子对象C3对应的金融业务数据;在如表1所示的原始数据列表中,可以为每个子对象的金融业务数据,生成一个表征标识作为其对应的对齐标识,例如,金融业务数据C1对应的对齐标识为1(该金融业务数据C1与对齐标识1之间存在映射关系)、金融业务数据C2对应的对齐标识为2(该金融业务数据C2与对齐标识2之间存在映射关系)、金融业务数据C3对应的对齐标识为3(该金融业务数据C3与对齐标识3之间存在映射关系)。
而在如表2所示的原始数据列表中,包含有子对象C1、子对象C2以及子对象C3在不同日期时的互联网业务数据,例如,具体包含有子对象C1在date1与date2时的互联网业务数据C1、子对象C2在date1与date2时的互联网业务数据C2、子对象C3在date1与date2时的互联网业务数据C3;在如表2所示的原始数据列表中,可以为每个子对象的互联网业务数据,生成一个表征标识作为其对应的对齐标识,例如,互联网业务数据C1对应的对齐标识为1(该互联网业务数据C1与对齐标识1之间存在映射关系)、互联网业务数据C2对应的对齐标识为2(该互联网业务数据C2与对齐标识2之间存在映射关系)、互联网业务数据C3对应的对齐标识为3(该互联网业务数据C3与对齐标识3之间存在映射关系)。
可以理解的是,上述表1可以是指第一原始数据列表,表2可以是指第二原始数据列表,由于在本场景中,需要统计每个子对象的所有互联网业务数据,那么可以以表1所示的金融业务数据作为分组数据,来将表2中的互联网业务数据按照子对象进行分组,从而可以得到同一子对象在不同日期下的互联网业务数据,最后再将每个分组中的互联网业务数据进行聚合,即可得到各个子对象的所有互联网业务数据。而在将表2所示的互联网业务数据进行群组划分(即分组)时,可以基于表1与表2中的表征标识来进行数据对齐,只要两个业务数据的表征标识是一致的,那么就可以确定这两个业务数据均属于同一个子对象,那么此时即可将表2中同一表征标识对应的互联网业务数据进行分组,且分组后的互联网业务数据时对齐于表1中的同一表征标识的金融业务数据的,由此对于银行A而言,可以基于对齐关系来确定表2中的分组聚合结果,对应于哪一个金融业务数据,进而确定出该分组聚合结果对应于哪一个子对象。那么基于此,由于每个表征标识的作用是用于将不同列表中的业务数据进行数据对齐,那么本申请可以将每个表征标识称为对齐标识,而本申请中,对于生成的第一原始数据列表与第二原始数据列表,存在有相同的对齐标识,从而才可基于各个对齐标识,将不同列表中的所有业务数据进行一一对齐。
需要说明的是,本申请中的属于第二对象的第二原始数据列表中所包含的业务数据,是第一对象所期望进行分组聚合的数据(例如,各个子对象在不同日期下的互联网业务数据,银行A期望聚合得到每个子对象的所有互联网业务数据),那么本申请可以将第二原始数据列表中所包含的业务数据称为待聚合业务数据,将第一原始数据列表中所包含的业务数据称为分组数据(第一原始数据列表中包含的业务数据时作为待聚合业务数据的分组基准),由此可见,本申请中的第一原始数据列表中,包含有各个对齐标识与各个分组数据之间的映射关系(即一个分组数据对应于一个对齐标识),而第二原始数据列表中,包含有各个对齐标识与各个待聚合业务数据之间的映射关系(即一个待聚合业务数据对应一个对齐标识),且属于同一个子对象的分组数据与待聚合业务数据,所对应的对齐标识是相同的。即第一原始数据列表中所包含的各个对齐标识的数值,与第二原始数据列表中所包含的各个对齐标识的数值是相同的。第一对象与第二对象双方,均持有对齐对方业务数据的标识,那么第二对象才可基于对齐标识来进行数据对齐,并根据接收到的第一对象的业务数据(分组数据),将己方所持有的业务数据(待聚合业务数据)进行本地分组聚合得到聚合结果。
为便于理解将待聚合业务数据进行本地分组聚合的过程,请一并参见图3,图3是本申请实施例提供的一种基于对齐标识,将待聚合业务数据进行本地分组聚合得到聚合结果的场景示意图。如图3所示的场景是以第一对象为游戏发行方、第二对象为游戏运营方为例,游戏发行方的本地中存储有发行的游戏(如图3所示的游戏y1、游戏y2以及游戏y3),而游戏运营方的本地中存储有不同游戏的运营数据(运营数据包含每个游戏每天的推送频率,其中,推送频率是指游戏被推送的次数),假设游戏发行方存在有统计计算所发行的游戏(包含游戏y1、游戏y2以及游戏y3)的各自推送次数总和(推送总频率),那么此时游戏发行方与游戏运营方即存在有数据交互需求,游戏发行方与游戏运营方需要进行数据互通。
具体的,游戏发行方与游戏运营方通过执行PSI操作,可以分别得到如图3所示的表3001与表3002,其中,如图3所示的表3001可以为属于游戏发行方的原始数据列表(即第一原始数据列表,后续将称为第一原始数据列表3001),该列表中包含有游戏发行方所发行的各个游戏的名称及其每个游戏名称所对应的对齐标识(这里是以对齐标识为Id为例进行说明的);而如图3所示的表3002可以为属于游戏运营方的原始数据列表(即第二原始数据列表,后续将称为第二原始数据列表3002),该列表中包含有游戏运营方所运营的游戏y1、游戏y2以及游戏y3在不同时间下的推送频率。从第一原始数据列表3001与第一原始数据列表3002可见,在第一对象与第二对象进行数据互通时,通过执行PSI,可以使得双方均持有对齐对方数据的标识(如图3所示的Id)。
进一步地,游戏发行方可以通过终端设备将该第一原始数据列表3001发送至游戏运营方,游戏运营方接收到该第一原始数据列表3001后,可以基于两个列表中的对齐标识,将第一原始数据列表3001中的分组数据(即各个游戏名称)与第二原始数据列表3002中的待聚合业务数据(即各个推送频率)进行数据对齐,例如,第一原始数据列表3001中,游戏y1的Id(对齐标识)为1,第二原始数据列表中,时间1对应的推送频率1000以及时间2对应的推送频率1000的Id(对齐标识)也为1,那么即可将游戏y1与这两个推送频率进行数据对齐(数据对齐可以是指建立映射关系,即在游戏y1与这两个推送频率之间建立映射关系),通过数据对齐可以得到如图3所示的对齐列表3003。其中,在该对齐列表3003中包含有两个字段,这两个字段分别为游戏名称与推送频率。
进一步地,基于对齐列表3003,可以按照分组字段游戏名称对对齐列表3003进行拆分分组(即按照游戏这个分组数据进行分组),分组后可以得到如图3所示的三个分组列表,分别为分组列表301(该列表为游戏y1所对应的分组列表)、分组列表302(该列表为游戏y2所对应的分组列表)以及分组列表303(该列表为游戏y3所对应的分组列表),每个分组列表均包含有统一游戏在不同时间下的推送频率,最终,通过对每个分组列表中的推送频率执行聚合操作(如采用聚合函数sum对其求总和值),即可得到各个游戏的推送总频率,再将各个游戏的推送总频率进行合并即可得到最终的聚合列表3004,如图3所示,在该聚合列表3004中,包含有各个游戏最终的对于推送频率的聚合结果(即推送总频率)。也就是说,本申请中,本地分组聚合是指持有待聚合业务数据的一方(如上述游戏运营方,即第二对象)将本地数据库中所存储的待聚合业务数据,独立进行分组处理以及聚合处理,其中,分组处理是指将己方所持有的待聚合业务数据按照所接收到的分组数据(如上述各个游戏名称)进行分组得到不同的分组列表,而聚合处理是指将每个分组(每个分组列表)中的待聚合业务数据进行聚合处理得到聚合结果。可见,持有待聚合业务数据的一方(如第二对象)进行本地分组聚合是指将存储在本地的待聚合业务数据(如存储在本地数据库中的待聚合业务数据),在本地独立进行分组处理与聚合处理,在分组处理与聚合处理的过程中,均无需与其他设备(如第一对象对应的终端设备)进行任何数据交互,第二对象可以在自身所存储的待聚合业务数据不分享至其他方的情况下,独立进行数据分组聚合处理,得到准确的聚合结果,由此可以很好地保护第二对象的数据明细不被泄露一直存储在本地,提升第二对象的数据安全性。
可见,基于如图3所示的实施例可知,在不同对象进行数据互通时,每个对象应持有对齐对方数据的标识,从而才可进行数据对齐处理、且将己方所持有的相关业务数据进行本地分组聚合处理。
步骤S102,对分组数据进行脱敏处理,得到分组数据对应的脱敏数据,基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致。
本申请中,从上述图3所示的实施例可知,第一对象与第二对象在进行数据交互时是进行明文传输的,但是由于第一对象与第二对象属于不同的企业(机构、部门),其对应的业务数据均是存储在本地的数据库中(如存储在相应的后台服务器中),双方的业务数据的明细均是具备隐私性与保密性的,因此在进行数据交互时是不能将双方的数据明细互相发送至对方的。基于此,本申请中,对于第一原始数据列表中的分组数据,可将其进行脱敏处理,使其转换成不同于原始的分组数据的数据,再将脱敏后的数据(脱敏数据)发送至第二对象,那么第二对象所接收到的并非为原始的分组数据,而是经过脱敏处理后的脱敏数据,但是第二对象仍可基于对齐标识来进行数据对齐,并根据接收到的脱敏数据和己方的待聚合业务数据进行本地分组聚合,最后得到每一个脱敏数据分别对应的聚合值,形成一个脱敏数据所对应的聚合列表。第二对象可以将该脱敏数据对应的聚合列表返回至第一对象,第一对象可以根据原始的分组数据与脱敏数据之间的映射关系,还原得到各个分组数据所对应的聚合值。
也就是说,通过将原始的分组数据进行脱敏处理,可以较好地保护原始的分组数据不被第二对象所得知,同时第一对象也可以准确地确定出每个分组数据所对应的聚合结果值。其中,本申请可以预先配置不同的脱敏规则得到一个脱敏规则集合,在将分组数据进行脱敏处理时,可以从脱敏规则集合中选择某个脱敏规则作为目标脱敏规则来对其进行脱敏处理,得到各个分组数据对应的脱敏数据。也就是说,对于对分组数据进行脱敏处理,得到分组数据对应的脱敏数据具体实现方式可为:可以获取脱敏规则集合,随后可以在脱敏规则集合中确定分组数据对应的目标脱敏规则;进一步地,即可按照目标脱敏规则对分组数据进行脱敏处理,由此可以得到分组数据对应的脱敏数据。其中,对于目标脱敏规则可以是随机在脱敏规则集合中选择任一种脱敏规则,也可以是按照场景需求指定脱敏规则集合中的某一种脱敏规则作为目标脱敏规则,本申请对于目标脱敏规则集合的选取方式不进行限定。
可以理解的是,本申请中对分组数据进行脱敏处理,可以理解为是将分组数据转换为其他不同于分组数据的数据,相当于对分组数据进行了同态加密处理,在配置脱敏规则集合时,可以将不同的数据转换规则作为脱敏规则来组成脱敏规则集合,例如,可以将数据变换规则、哈希变换规则、映射变换规则以及字符截取规则等规则,来共同组成脱敏规则集合,在将分组数据进行脱敏处理时,即可选择某种规则作为目标脱敏规则。
为便于理解,以下将以目标脱敏规则为哈希变换规则为例,对对分组数据进行脱敏处理得到分组数据对应的脱敏数据的具体方式进行说明,在目标脱敏规则为哈希变换规则时,对于按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体方式可为:按照哈希变换规则获取哈希函数;随后,可以通过哈希函数对分组数据进行哈希计算处理,由此可以得到分组数据对应的哈希值;进一步地,即可将分组数据对应的哈希值确定为分组数据对应的脱敏数据。其中,这里的哈希函数可以是任一具备哈希计算逻辑的函数,包括但不限于是SHA-256函数、SM3函数,通过哈希函数即可将每个分组数据进行哈希计算,得到一个哈希值,该哈希值即可作为该分组数据所对应的脱敏数据(即同态加密数据)。
为更好理解,以下将以目标脱敏规则为字符截取规则为例,对对分组数据进行脱敏处理得到分组数据对应的脱敏数据的具体方式进行说明,在目标脱敏规则为字符截取规则时,对于按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体方式可为:按照字符截取规则获取用于唯一表征分组数据的字符序列;其中,字符序列由N个字符所组成;N为正整数;随后,可以按照字符序列中N个字符的排列顺序,依次提取字符序列的前K个字符,由此可以得到提取字符序列;其中,K为小于N的正整数;最后即可将提取字符序列确定为分组数据对应的脱敏数据。
应当理解,对于每个分组数据,均可以采用一个字符序列来表征,那么在将某个分组数据进行脱敏处理时,可以将该分组数据对应的字符序列进行截取(例如,提取出字符序列中的部分字符),所截取到的字符序列即可作为分组数据对应的脱敏数据。为便于理解,以用于唯一表征分组数据A的字符序列为“dfhiweihd”为例,在基于字符截取规则对其进行脱敏处理时,假设K为5,可以依次获取到前5位字符为“dfhiw”,这5位字符所组成的字符序列“dfhiw” 可称为提取字符序列,该提取字符序列“dfhiw”即可作为该分组数据A对应的脱敏数据。需要说明的是,在对分组数据的字符序列进行字符提取得到提取字符序列时,并不限定于是提取字符序列的前K位,也可以是其他的字符提取方式,例如,也可以是提取字符序列的后K位来得到提取字符序列,本申请中提取前K位仅是字符提取的一种。
可以理解的是,将分组数据进行脱敏处理后,可以较好地保护原始的分组数据,但是对于第一原始数据列表中的数值相同的分组数据而言,同样的分组数据在经过脱敏处理后,所得到的脱敏数据是一样的,那么基于脱敏数据,第二对象仍可推断出原始的分组数据中,哪些分组数据的取值是一样的,那么第二对象即可推导出原始的分组数据的数值分布情况,倘若此时第二对象明确了分组数据对应的真实数值分布规律,那么第二对象即可基于真实数值分布规律,来推断得到原始的分组数据。例如,假设第一原始数据列表如表3所示:
表3
如表3所示的分组数据可以是指n个狮子所属的类别(包括有类别1与类别2,其中,类别1为雄性,类别2可为雌性),假设第一对象的分组聚合需求为统计n个狮子中,属于类别1的狮子在一天内打哈欠的次数,以及属于类别2的狮子在一天内打哈欠的次数,那么第一对象即可将如表3所示的第一原始数据列表分享至第二对象。基于表3所示的分组数据可知,分组数据仅包含有类别1与类别2,那么将各个分组数据进行脱敏处理后,所得到的脱敏数据也包含有两种数值,基于这两种数值的脱敏数据,第二对象即可推导得知原始的分组数据中,哪些分组数据的数值是一致的,例如,第二对象可推导得知如表3所示的第一原始数据列表中,第一行与第二行的数据是一致的。倘若此时,对于n个狮子中,类别1与类别2的数量分布比例是已知的(假设为104:300),那么第二对象即可基于该已知的数量分布比例,以及所推导得到的一致的分组数据的结果,来确定出原始的具体的分组数据。
也就是说,仅对分组数据进行脱敏处理后再发送的方式,在部分特定的场景中,可能仍然存在泄露原始的分组数据的可能性,那么为了进一步提升数据交互过程中的隐私性与安全性,本申请在对分组数据进行脱敏处理后,可以再对每个分组数据添加一个混淆掩码,以此来提升所发送的数据的混淆性,减少第二对象推断出原始的分组数据的可能性。具体的,为了使得混淆掩码具备混淆性,本申请可以基于原始的分组数据的数据概率分布,来配置一个掩码集合,也就是说,所配置得到的配置掩码集合中各个配置掩码的掩码概率分布,是与分组数据的数据概率分布相同的,那么基于该配置掩码集合为分组数据分配混淆掩码后,可以使得分配的混淆掩码的概率分布也是与分组数据的数据概率分布一致的,基于此,第二对象在接收到各个分组数据对应的混淆掩码后,由于各个混淆掩码的概率分布是与分组数据对应的数据概率分布一致的,那么第二对象并无法区分所接收到的是否为原始的分组数据,具备较高的混淆性,从而可以提升原始分组数据被推导出的可能性。
其中,可以理解的是,这里的分组数据对应的数据概率分布,可以是指每个分组数据在第一原始数据列表中的出现概率(可称之为数据呈现概率),应当理解,第一原始数据列表中,可能存在有数值相同的分组数据,同一个数值的分组数据在第一原始数据列表中的出现频率越高,那么该数值的分组数据的出现概率即越大,也就是说,通过分组数据在第一原始数据列表中的出现频率,即可确定出每个分组数据在第一原始数据列表中的数据呈现概率,进而可以组成各个分组数据对应的数据概率分布。为便于理解,以下将以表4所示的数据列表为第一原始数据列表为例进行说明,如表4所示:
表4
其中,如表4所示的类别(具体可以是指某个物品所属的类别,如粉底液所属类别,具体可以包含无瑕类别、清透类别、厚重类别、奶油肌类别等)可以是指分组数据,分组数据具体可以包括类别y1、类别y2、类别y3、类别y4、类别y1以及类别y2,也就是说,分组数据总共包含6行。可以理解的是,在该第一原始数据列表中,类别y1的出现频率为2、类别y2的出现频率为2、类别y3以及类别y4的出现频率均为1,那么基于类别y1的出现频率2以及第一原始数据列表所包含的分组数据的总数量6(即6行分组数据),即可确定出类别y1的数据呈现概率为2/6;同理,可以确定出类别y2的数据呈现概率为2/6、类别y3的数据呈现概率为1/6、类别y4的数据呈现概率为1/6。基于类别y1、类别y2、类别y3以及类别y4的数据呈现概率,即可得到该第一原始数据列表中分组数据所指示的数据概率分布为[2/6,2/6,1/6,1/6]。
可以理解的是,由于第一原始数据列表中,两个分组数据的数值可能相同(如上述表4所示的第一原始数据列表中,对齐标识1对应的分组数据与对齐标识5对应的分组数据,均为类别y1),那么本申请中,在确定第一原始数据列表的分组数据所指示的数据概率分布时,需要先将该第一原始数据列表中的分组数据进行归并处理,其中,这里的归并处理可以是指统计该第一原始数据列表中所包含的分组数据中的唯一字符,即将分组数据中重复出现的数据进行删除,仅保留第一次出现的那个相同数据。例如,对于字符序列{2,1,0,0,-1,1}而言,对其进行归并处理后,所得到的归并字符序列可为{2,1,-1,0},可以看出,该字符序列中数值1与数值0均存在重复的情况,通过归并处理,可以仅保留第一次出现的数值1(即第二个序列位置上的数值1)与数值0(即第三个序列位置上的数值0)。进一步地,可以统计归并处理后的分组数据中,每个唯一数据在第一原始数据列表中的出现频率,进而可以基于出现频率与第一原始数据列表中所包含的分组数据的总数量,确定出每个唯一数据的数据呈现概率,随后即可组成分组数据所指示的数据概率分布。
应当理解,为了提升数据的混淆性,本申请向第二对象所发送的数据需要与分组数据所指示的数据概率分布呈一样的分布,那么本申请可以基于分组数据所指示的数据概率分布,来进行掩码的配置,即所配置的配置掩码集合所指示的掩码概率分布,需要与分组数据所指示的数据概率分布是一样的。换言之,假设第一原始数据列表包含的分组数据,共有N个取值,那么配置掩码集合中所包含的配置掩码,也是有N个取值,且各个配置掩码的取值所对应的概率分布,与分组数据各个取值所对应的数据概率分布是一致的。基于此,在基于配置掩码集合为每个分组数据分配混淆掩码时,由于配置掩码集合所指示的掩码概率分布与分组数据所指示的数据概率分布是一致的,那么配置混淆掩码后,各个混淆掩码所呈现的概率分布,也是与分组数据对应的数据概率分布一致的,将各个混淆掩码发送至第二对象后,可以具备较高的混淆性。对于基于数据概率分布配置掩码得到配置掩码集合的具体实现方式,可以参见后续图4所对应实施例中的描述。
可以理解的是,在确定出配置掩码集合后,在为每个分组数据分配混淆掩码时,由于配置掩码集合中配置掩码的取值数量,与分组数据中各个分组数据的取值数量是相同的,即,假设第一原始数据列表如表4所示,那么第一原始数据列表中分组数据的取值数量即可为4(取值具体为类别y1、类别y2、类别y3以及类别y4,共有4种取值),那么所配置得到的配置掩码集合中配置掩码的取值也应为4,例如,配置掩码集合可为{0.22,0.23,0.24,0.25},本申请可以预先将配置掩码集合中的一个配置掩码与一个分组数据之间构建映射关系,那么在为分组数据配置掩码时,可以直接将具有映射关系的那一个配置掩码分配至该分组数据。例如,可以将上述类别y1与配置掩码0.22之间建立映射关系,将上述类别y2与配置掩码0.23之间建立映射关系,将上述类别y3与配置掩码0.24之间建立映射关系,将上述类别y4与配置掩码0.25之间建立映射关系,那么对于分组数据“类别y1”而言,为其分配的混淆掩码即可为0.22。
当然,上述仅是基于配置掩码集合为每个分组数据配置混淆掩码的一种方式,对于分配混淆掩码的具体方式,当然并不限制于此,例如,还可以从配置掩码集合中,基于随机函数随机确定出一个配置掩码,作为某个分组数据的混淆掩码。也就是说,对于基于配置掩码集合为分组数据分配混淆掩码的具体方式,可以为:可以获取配置掩码集合所指示的掩码概率分布;其中,掩码概率分布中包括配置掩码集合中,每个配置掩码分别对应的掩码呈现概率;随后,可以基于每个配置掩码分别对应的掩码呈现概率,在配置掩码集合中确定分组数据对应的混淆掩码;其中,配置掩码集合中,掩码呈现概率越高的配置掩码被分配为分组数据的混淆掩码的概率越高。以配置掩码集合包括配置掩码Pd(d为正整数)为例,该配置掩码Pd对应的掩码呈现概率可以用于指示该配置掩码Pd被分配为分组数据的混淆掩码的概率,具体的,假设配置掩码Pd对应的掩码呈现概率较高,那么在配置掩码集合中,选择某个配置掩码作为某个分组数据的混淆掩码时,该配置掩码Pd被选中的可能性也越大;而假设配置掩码Pd对应的掩码呈现概率较小,那么在配置掩码集合中,选择某个配置掩码作为某个分组数据的混淆掩码时,该配置掩码Pd被选中的可能性会较小。也就是说,按照各个配置掩码对应的掩码呈现概率,在分配混淆掩码时,掩码呈现概率越大,那么被选中为分组数据的混淆掩码的可能性越大。
步骤S103,将对齐标识与分组数据对应的脱敏数据之间的映射关系,对齐标识与分组数据对应的混淆掩码之间的映射关系发送至第二对象。
本申请中,在确定出第一原始数据列表中,每个(每行)分组数据分别对应的脱敏数据与混淆掩码后,可以基于第一原始数据列表中,各个分组数据与各个对齐标识之间的映射关系,确定出各个对齐标识与各个脱敏数据之间的映射关系,以及各个对齐标识与各个混淆掩码之间的映射关系,第一对象对应的第一设备可以将各个对齐标识与各个脱敏数据之间的映射关系,发送至第二对象,同时将各个对齐标识与各个混淆掩码之间的映射关系,发送至第二对象。
其中,需要说明的是,第一设备可以将同一分组数据对应的脱敏数据与混淆掩码进行组合,得到一个组合数据,该组合数据与该分组数据对应的对齐标识之间可以构建一个映射关系,第一设备可以将该对齐标识与该组合数据之间的映射关系,也就是数,第一设备可以将分组数据对应的脱敏数据与混淆掩码组合到一起发送,而不是分开单独发送,且在第一设备组合某个分组数据对应的脱敏数据与混淆掩码时,脱敏数据与混淆掩码的先后顺序可以随机确定,例如,脱敏数据可以位于混淆掩码之前,也可以位于混淆掩码之后。在组合脱敏数据与混淆掩码时,脱敏数据与混淆掩码之间可以采用某个特定符号(如加号、顿号、连接号等)进行断开,从而减少脱敏数据与混淆掩码之间产生字符混乱的情况。
步骤S104,对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果;第一聚合列表是第二对象基于对齐标识与分组数据对应的脱敏数据之间的映射关系,将分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;第二聚合列表是第二对象基于对齐标识与分组数据对应的混淆掩码之间的映射关系,将分组数据对应的混淆掩码与待聚合业务数据进行对齐聚合处理后所得到的;第二原始数据列表包括对齐标识与待聚合业务数据之间的映射关系。
本申请中,第二对象在接收到对齐标识与脱敏数据之间的映射关系后,可以基于对齐标识,将第二原始数据列表中的待聚合业务数据进行本地分组聚合得到聚合结果。具体的,第二对象可以基于所接收到的对齐标识与脱敏数据之间的映射关系,以及第二原始数据列表中,各个对齐标识与待聚合业务数据之间的映射关系,将脱敏数据与第二原始数据列表中的待聚合业务数据进行数据对齐,由此可以得到一个对齐列表(为便于区别,可将其称为第一对齐列表),该第一对齐列表中,包含有各个脱敏数据与各个待聚合业务数据之间的对应关系(也可称之为对齐关系,即一个脱敏数据与一个待聚合业务数据之间是具备对齐关系的)。具体的,以第一原始数据列表为上述表1所示的列表为例,此时分组数据可以包括金融业务数据C1、金融业务数据C2以及金融业务数据C3,假设将各个分组数据进行脱敏处理后,所得到的脱敏数据为脱敏数据C1(对应于金融业务数据C1)、脱敏数据C2(对应于金融业务数据C2)以及脱敏数据C3(对应于金融业务数据C3),那么可以基于如表1所示的各行分组数据与对齐标识(Id)之间的映射关系,确定出各个脱敏数据与对齐标识之间的映射关系。具体的,脱敏数据C1与对齐标识1之间存在映射关系,对齐标识2与脱敏数据C2之间存在映射关系,对齐标识3与脱敏数据C3之间存在映射关系。随后,基于脱敏数据与对齐标识之间的映射关系,以及如表2所示的各个对齐标识与待聚合业务数据(即互联网业务数据)之间的映射关系,可以构建得到如表5所示的第一对齐列表,如表5所示:
表5
应当理解,在第一对齐列表中,具有对齐关系的脱敏数据与互联网业务数据,所映射的对齐标识是一致的。例如,对于表5中的第一行的脱敏数据C1与互联网业务数据C1,两者所映射的对齐标识均为Id1,对于第二行的脱敏数据C2与互联网业务数据C2,两者所映射的对齐标识均为Id2。也就是说,在构建第一对齐列表时,可以按照对齐标识,若一个脱敏数据与一个互联网业务数据具备同样的对齐标识,则可以将这个脱敏数据与该互联网业务数据进行对齐(即构建一个对齐关系)。
进一步地,第二对象可以在第一对齐列表中,将各个脱敏数据进行归并处理(即统计脱敏数据中的唯一字符),由此可以得到一个归并脱敏数据集合。例如,对于如表5所示的第一对齐列表中,脱敏数据C1出现了两次,那么可以将两个脱敏数据归并为1个(可理解为仅统计一次第一行出现的脱敏数据C1,其余的脱敏数据C1均进行删除);同理,脱敏数据C2与脱敏数据C3均出现了两次,那么可以归并为1个脱敏数据C2与脱敏数据C3,由此可以得到一个归并脱敏数据集合{脱敏数据C1、脱敏数据C2以及脱敏数据C3},这里我们为便于区别,可以将归并数据集合中所包含的各个脱敏数据,称之为归并脱敏数据(归并脱敏数据实则包含于原始的脱敏数据集合中,即一个归并脱敏数据也就是原始的某个脱敏数据)。将脱敏数据进行归并处理后,即可在第一对齐列表中,按照各个归并脱敏数据将待聚合业务数据(即如表5所示的互联网业务数据)进行分组聚合处理,所述分组聚合处理包括分组和聚合处理,例如,第一行的互联网业务数据C1与第四行的互联网业务数据C1均与归并脱敏数据C1存在对齐关系,那么可以将第一行的互联网业务数据C1与第四行的互联网业务数据C1划分至一组,随后可以将该组内的两个互联网业务数据C1进行聚合处理,由此即可得到该归并脱敏数据C1所对应的聚合值1;同理可以得到归并脱敏数据C2对应的聚合值2,以及归并脱敏数据C3对应的聚合值3,最终得到一个包含各个归并脱敏数据以及其对应的聚合值的一个聚合列表,该聚合列表可理解为脱敏数据所对应的第一聚合列表,该第一聚合列表如表6所示:
表6
其中,该第一聚合列表中的各个聚合值本申请可称之为第一聚合值。也就是说,假设第一原始数据列表中包括的分组数据的数量为M(M为正整数)个,第二原始数据列表中包括的待聚合业务数据的数量为W个(W为正整数),那么分组数据对应的脱敏数据也包含有M个分组数据分别对应的脱敏数据;此时第一聚合列表中会包括归并脱敏数据集合(基于上述可知,归并脱敏数据集合是由第二对象将M个脱敏数据进行归并处理后所得到的,归并脱敏数据集合中的每个归并脱敏数据均具备唯一性,且归并脱敏数据集合中的归并脱敏数据均包含于M个脱敏数据中)中,每个归并脱敏数据分别对应的第一聚合值,而对于某个归并脱敏数据(如归并脱敏数据Ra,a为正整数。假设归并脱敏数据集合包括归并脱敏数据Ra)而言,第一聚合列表中的该归并脱敏数据Ra对应的第一聚合值,是第二对象将W个待聚合业务数据中的该归并脱敏数据Ra对应的一个或多个映射待聚合业务数据(归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,也就是基于第一对齐列表所确定的,归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,在第一对齐列表中所对齐的脱敏数据是相同的。也就是说,这些映射待聚合业务数据,在第一对齐列表中,与归并脱敏数据Ra均具备对齐关系。例如,如表5所示的第一对齐列表中,由于第一行的互联网业务数据C1与第四行的互联网业务数据C1均与脱敏数据C1具备对齐关系,二者所对其的脱敏数据的取值是一样的,那么二者均可作为归并脱敏数据C1的映射待聚合业务数据)进行聚合处理后所得到的。换言之,对于第一聚合列表中的某个第一聚合值,是将W个待聚合业务数据中的一个或多个待聚合业务数据进行聚合处理后所得到的。
同理,第二对象在接收到对齐标识与混淆掩码之间的映射关系后,可以基于对齐标识,将第二原始数据列表中的待聚合业务数据进行本地分组聚合得到聚合结果,最终得到第二聚合列表。第二对象可以采用相同的方式,将各个混淆掩码与第二原始数据列表中的待聚合业务数据进行数据对齐,由此可以得到一个对齐列表(为便于区别,可将其称为第二对齐列表),该第二对齐列表中,包含有各个混淆掩码与各个待聚合业务数据之间的对应关系(也可称之为对齐关系,即一个混淆掩码与一个待聚合业务数据之间是具备对齐关系的)。进一步地,第二对象也可以将第二对齐列表中的各个混淆掩码进行归并处理,得到归并混淆掩码集合,随后可在第二对齐列表中,按照各个归并混淆掩码将待聚合业务数据进行分组聚合处理,得到各个归并混淆掩码对应的第二聚合值。
也就是说,假设第一原始数据列表中包括的分组数据的数量为M(M为正整数)个,第二原始数据列表中包括的待聚合业务数据的数量为W个(W为正整数),那么分组数据对应的混淆掩码也包含有M个分组数据分别对应的混淆掩码,此时第二聚合列表中会包括归并混淆掩码集合(基于上述可知,归并混淆掩码集合是由第二对象将M个混淆掩码进行归并处理后所得到的,归并混淆掩码集合中的每个归并混淆掩码均具备唯一性,归并混淆掩码集合中的归并混淆掩码均包含于M个混淆掩码中)中每个归并混淆掩码分别对应的第二聚合值,而对于某个归并混淆掩码(如归并混淆掩码Tb,b为正整数。假设归并混淆掩码集合包括归并混淆掩码Tb)而言,第二聚合列表中的归并混淆掩码Tb对应的第二聚合值,是第二对象将W个待聚合业务数据中的归并混淆掩码Tb对应的一个或多个映射待聚合业务数据(归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,是基于第二对齐列表所确定的,归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,在第二对齐列表中所对齐的混淆掩码是相同的)进行聚合处理后所得到的,换言之,对于第二聚合列表中的某个第二聚合值,是将W个待聚合业务数据中的一个或多个待聚合业务数据进行聚合处理后所得到的。其中,同第一对齐列表一样,第二对齐列表是指第二对象基于对齐标识与M个混淆掩码之间的映射关系,以及对齐标识与W个待聚合业务数据之间的映射关系,所构建得到的包含M个混淆掩码与W个待聚合业务数据之间的对齐关系的列表,第二对齐列表中一个混淆掩码与一个待聚合业务数据之间存在对齐关系,具有对齐关系的混淆掩码与待聚合业务数据所对应的对齐标识相同。对于构建第二对齐列表以及第二聚合列表的具体方式,这里将不再进行过于赘述。
进一步地,第一对象在接收到第二对象返回的第一聚合列表与第二聚合列表后,即可进行过滤还原处理,得到各个分组数据所对应的聚合结果。所述过滤还原处理包括进行噪声过滤处理和数据还原处理,其中,基于上述可知,本申请为分组数据所添加的混淆掩码可以理解为噪声数据,其目的在于提升第一对象所发送数据的混淆性,使得第二对象更难区分所接收到的数据是否为原始的分组数据,第二对象针对混淆掩码的聚合数据(第二聚合列表)是不具备数据意义的,那么噪声过滤处理可以是指将混淆掩码对应的第二聚合列表进行过滤处理;而数据还原处理可以是指基于脱敏数据与分组数据之间的对应关系,将脱敏数据对应的第一聚合列表进行还原处理。例如,由于混淆掩码是作为噪声来提升混淆性的数据,那么第一对象可以直接进行噪声过滤(即删掉第二聚合列表),随后再基于各个归并脱敏数据(即脱敏数据)与原始的分组数据之间的对应关系,来还原得到各个分组数据对应的聚合值。具体的,某个归并脱敏数据与某个分组数据之间存在对应关系,那么可以直接将该归并脱敏数据对应的第一聚合值,确定为该分组数据对应的聚合结果。也就是说,以M个分组数据包括分组数据Sj(j为正整数)为例,该分组数据所对应的聚合结果会包括分组数据Sj对应的聚合结果,对于对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果的具体实现方式可为:可以将第二聚合列表进行过滤处理,并将第一聚合列表确定为目标待还原列表;随后,可以将M个脱敏数据中分组数据Sj对应的脱敏数据确定为目标脱敏数据,并将归并脱敏数据集合中与目标脱敏数据相同的归并脱敏数据,确定为目标归并脱敏数据;随后即可将目标待还原列表中目标归并脱敏数据对应的第一聚合值,确定为分组数据Sj对应的聚合结果。
在本申请实施例中,通过为分组数据进行脱敏处理以及添加混淆掩码的方式,可以使得原始的分组数据明细不出本地,减少原始数据泄露的可能;同时,由于脱敏数据与混淆掩码的概率分布均与原始的分组数据一致,第二对象很难基于脱敏数据与混淆掩码反推出原始的分组数据,由此可以提升原始的分组数据的隐私性与安全性;而第一对象所接收到的也是第二对象返回的直接的一个结果值,无法推知第二对象的数据明细。那么基于此,本申请可以在第一对象与第二对象进行数据交互时,严格保证数据的隐私性与安全性,并利用同态性质(即基于同态加密形式的脱敏处理)来确保分组聚合结果的正确性。
进一步地,请参见图4,图4是本申请实施例提供的一种进行掩码配置确定配置掩码集合的流程示意图。该流程可以对应于上述图2所对应实施例中,对于在执行基于配置掩码集合为分组数据分配混淆掩码之前,获取配置掩码集合的流程。该流程具体是以第一原始数据列表中包括的分组数据的数量为M(M为正整数)个为例进行说明的流程,如图4所示,该流程可以至少包括以下步骤S401-步骤S404:
步骤S401,对M个分组数据进行归并处理,得到M个分组数据对应的归并分组数据集合;归并分组数据集合中的每个归并分组数据均具备唯一性,归并分组数据集合中的每个归并分组数据均包含于M个分组数据中。
具体的,这里的归并处理可以是指统计该M个分组数据中所包含的分组数据中的唯一字符,即将每个分组数据中重复出现的数据进行删除,仅保留第一次出现的那个相同数据。例如,假设M 为6为例,M个分组数据分别为2、1、0、0、-1、1,对其进行归并处理后,所得到的归并分组数据集合可为{2,1,-1,0},可以看出,该归并分组数据集合中数值1与数值0均存在重复的情况,通过归并处理,可以仅保留第一次出现的数值1(即第二个序列位置上的数值1)与数值0(即第三个序列位置上的数值0)。可见,归并分组数据集合中的每个归并分组数据均具备唯一性,且归并分组数据集合中的每个归并分组数据均包含于M个分组数据中。
步骤S402,统计归并分组数据集合中所包含的归并分组数据的数量,将归并分组数据集合中所包含的归并分组数据的数量确定为第一数量。
具体的,可以统计归并分组数据集合中所包含的归并分组数据的数量,以归并分组数据集合为{2,1,-1,0}为例,该归并分组数据集合包含4个归并分组数据,那么这里的第一数量即可为4。
步骤S403,统计归并分组数据集合中,每个归并分组数据在第一原始数据列表中的出现频率。
具体的,在第一原始数据列表中,可能会有数值相同的分组数据,那么在进行归并处理后,可以统计第一原始数据列表中,每个归并分组数据(每个取值)的出现频率(即出现次数)。
步骤S404,按照第一数量,以及每个归并分组数据在第一原始数据列表中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合。
具体的,以归并分组数据集合中包含归并分组数据Si(i为正整数)为例,对于按照第一数量,以及每个归并分组数据在第一原始数据列表中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体方式可为:可以将M个分组数据中所包含的分组数据的数量确定为第二数量;随后,可以将归并分组数据Si在第一原始数据列表中的出现频率确定为目标出现频率,可以将目标出现频率与第二数量之间的比值,确定为归并分组数据Si对应的数据呈现概率;当确定出每个归并分组数据Si分别对应的数据呈现概率时,可以将每个归并分组数据分别对应的数据呈现概率所组成的概率分布,确定为第一原始数据列表中的分组数据所指示的数据概率分布;随后,按照第一数量与数据概率分布,即可对M个分组数据进行掩码配置处理,由此可以得到配置掩码集合。
其中,对于按照第一数量与数据概率分布,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体方式可为:按照第一数量可以在候选掩码集合中,选择Q个候选掩码;Q与第一数量相等;这里假设Q个候选掩码包括候选掩码Hc,c为正整数;随后,可以在归并分组数据集合中选择任一归并分组数据作为候选掩码Hc对应的第一映射归并分组数据,并将数据概率分布中第一映射归并分组数据所对应的数据呈现概率,确定为候选掩码Hc对应的掩码呈现概率;在归并分组数据集合中确定剩余候选掩码对应的第二映射归并分组数据,将数据概率分布中第二映射归并分组数据所对应的数据呈现概率,确定为剩余候选掩码对应的掩码呈现概率;其中,剩余候选掩码是指Q个候选掩码中,除候选掩码Hc以外的候选掩码;剩余候选掩码对应的第二映射归并分组数据与候选掩码Hc对应的第一映射归并分组数据互不相同;进一步地,可以将剩余候选掩码对应的掩码呈现概率,与候选掩码Hc对应的掩码呈现概率所组成的概率分布,确定为Q个候选掩码所指示的掩码概率分布;最后,可以将Q个候选掩码均确定为配置掩码,并将包含Q个配置掩码以及掩码概率分布的集合确定为配置掩码集合。
这里以归并分组数据集合为{r1,r2,r3,r4}为例,假设归并分组数据r1在第一原始数据列表中的出现频率为4、归并分组数据r2在第一原始数据列表中的出现频率为6、归并分组数据r3在第一原始数据列表中的出现频率为1、归并分组数据r4在第一原始数据列表中的出现频率为2,归并分组数据r1的数据呈现概率为4/13、归并分组数据r2的数据呈现概率为6/13、归并分组数据r3的数据呈现概率为1/13、归并分组数据r4的数据呈现概率为2/13。那么在进行掩码配置时,可以在候选掩码集合中,先随机选择4个候选掩码作为配置掩码,随后,可以将4个配置掩码与4个归并分组数据进行一一对应(例如,在一个配置掩码与一个归并分组数据之间建立映射关系使其对应),然后可以直接将某个归并分组数据对应的数据呈现概率,作为该配置掩码对应的数据呈现概率。例如,假设选择的配置掩码为c1、c2、c3以及c4,将归并分组数据r1与配置掩码c1之间建立映射关系(即归并分组数据r1为配置掩码c1的映射归并分组数据)、将归并分组数据r2与配置掩码c2之间建立映射关系(即归并分组数据r2为配置掩码c2的映射归并分组数据)、将归并分组数据r3与配置掩码c3之间建立映射关系(即归并分组数据r3为配置掩码c3的映射归并分组数据)、将归并分组数据r4与配置掩码c4之间建立映射关系(即归并分组数据r4为配置掩码c4的映射归并分组数据),那么配置掩码c1的掩码呈现概率即可为4/13、配置掩码c2的掩码呈现概率即可为6/13、配置掩码c3的掩码呈现概率即可为1/13、配置掩码c4的掩码呈现概率即可为2/13。通过配置,配置掩码c1会出现4次、配置掩码c2会出现6次、配置掩码c3会出现1次、配置掩码c4会出现2次。而配置掩码c1、配置掩码c2、配置掩码c3以及配置掩码c4及其分别对应的掩码呈现概率,即可组成配置掩码集合(在该配置掩码集合中,配置掩码c1可以出现4次、配置掩码c2可以出现6次、配置掩码c3可以出现1次、配置掩码c4可以出现2次)。也就是说,本申请在设置配置掩码集合时,针对于每个配置掩码(候选掩码),可以在归并分组数据集合中,选择某个归并分组数据与其建立映射关系,而对于某个配置掩码而言,与其具有映射关系的那一个归并分组数据可称为该配置掩码的映射归并分组数据,换言之,某个配置掩码对应的映射归并分组数据是指归并分组数据集合中,与该配置掩码之间存在映射关系的归并分组数据。例如,上述候选掩码Hc对应的第一映射归并分组数据,也就是指归并分组数据集合中与候选掩码Hc之间存在映射关系的归并分组数据,剩余候选掩码对应的第二映射归并分组数据也就是指归并分组数据集合中与剩余候选掩码之间存在映射关系的归并分组数据。
在本申请实施例中,通过为分组数据添加混淆掩码的方式,可以使得第一对象在与第二对象进行数据交互时,无需向第二对象发送原始的分组数据明细,仅向第二对象发送混淆掩码即可,由此可以使得原始的分组数据明细保留在第一对象的本地(如保留在第一对象的本地数据库中),也就是说,第一对象在与第二对象的数据交互过程中,第一对象所存储的原始的分组数据明细不用出本地(不用分享至第二对象),由此可以减少原始分组数据被泄露的可能;同时,通过将混淆掩码的概率分布与原始的分组数据保持一致,可以使得第二对象难以基于脱敏数据与混淆掩码反推出原始的分组数据,由此可以提升原始的分组数据的隐私性与安全性;而第一对象所接收到的也是第二对象返回的直接的一个结果值,无法推知第二对象的数据明细。那么基于此,本申请可以在第一对象与第二对象进行数据交互时,严格保证数据的隐私性与安全性。
可以理解的是,本申请实施例提供的方法可以应用于不同的场景领域中,例如,可以应用于游戏场景中,而对于游戏负责方的用户而言,本申请实施例提供的方法对其是具备黑盒属性的,游戏负责方期望统计某个游戏的相关业务数据时,可以使用针对游戏的SQL数据分析系统,来直接获取得到游戏的相关统计结果。为便于理解,请一并参见图5,图5是本申请实施例提供的一种基于游戏场景的场景示意图。如图5所示,假设在游戏运营方的本地存储中,存储有游戏发行方中各个游戏的运营数据(如每天的推送频率),假设游戏发行方对于运营数据的分组聚合需求时,统计每个游戏的各自推送数量总和(即推送总频率),那么游戏发行方可以通过在第一设备5001中所部署的SQL数据分析系统中,运行SQL脚本,该SQL脚本具体可为select gamename, sum(push_count) from game join flow on game.id = flow.id group by gamename;该脚本具体是指:game表中存储有游戏名称等信息,flow表中存储有运营方的相关游戏流水数据(例如游戏的推送频率),那么通过该SQL脚本可以表征:此时表game和表flow有相等id的记录中,以字段gamename进行分组,然后组内求字段push_count的总和。如图5所示,当游戏发行方的某个对象a点击运行控件后,第一设备5001即可执行该脚本指示的逻辑,逻辑具体可以包括:1)、统计分组数据的概率分布,例如,假设有n个分组数据,分组数据集合为,其概率分布可为;2)定义脱敏函数(即确定目标脱敏规则),通过目标脱敏规则对每个分组数据进行脱敏处理可以得到脱敏数据集合为;3)基于分组数据集合的概率分布,构造配置掩码集合为/>,且每个配置掩码与每个脱敏数据之间字面量不可区分,对于配置掩码集合的概率分布同样为/>;4)预处理数据集:为每个分组数据添加脱敏数据与混淆掩码。其中,一个分组数据与脱敏数据可以一一对应,即/>,分组数据的混淆掩码时基于概率分布/>来进行选择,预处理后,某个分组数据(例如,第m行的分组数据)的记录即可为/>,其中,id可以是指该分组数据的对齐标识,/>可以是指该分组数据,/>可以是指该分组数据的脱敏数据,/>可以是指该分组数据的混淆掩码;5)重复上述步骤,直至将每行的分组数据均添加上脱敏数据与混淆掩码;6)对于某行的分组数据,随机发送/>或/>,也就是说,在向第二对象(游戏运营方)发送某个分组数据的脱敏数据与混淆掩码时,可以将对齐标识、脱敏数据以及混淆掩码进行组合发送,且脱敏数据与混淆掩码之间的顺序,是一个随机顺序(混淆掩码可以位于脱敏数据前,也可以位于脱敏数据后)。
进一步地,第二对象(游戏运营方)对应的第二设备5002在接收到这些数据后,即可根据id对齐数据,并对脱敏数据和混淆掩码分别进行本地分组聚合,得到结果,agg i表示分组x i的聚合结果,count i表示分组x i的记录个数,/>(即/>可以是指某个脱敏数据或某个混淆掩码;当/>为脱敏数据时,所得到的结果可以是指第一聚合列表;当/>为混淆掩码时,所得到的结果可以是指第二聚合列表)。需要说明的是,游戏运营方在确定出聚合结果时(即确定出第一聚合列表时),可以根据约束条件来对第一聚合列表进行过滤,例如,对于某个脱敏数据/>的聚合结果agg i而言,倘若其count i小于或等于了一个预设的超参数T,那么即可将这条记录(即/>)进行过滤。应当理解,例如,由于某个分组中假设只有1条数据,那通过sum求和的结果就是数据本身,存在数据泄漏的风险,基于此,第二对象通过约束条件将聚合结果进行过滤的方式,可以减少第一对象推断出数据明细的可能,从而提升数据隐私性与安全性。进一步地,第一设备5001可以基于第一聚合列表与第二聚合列表确定出各个分组数据对应的聚合结果,例如,第一设备可以先过滤掉噪声(即混淆掩码对应的第二聚合列表),随后可以根据/>对应关系还原结果,得到,/> 。第一设备可以直接在设备显示界面上显示该聚合结果,对象a可以查看到该聚合结果。
应当理解的是,在联合数据分析场景中,本申请实施例提供的方法可以实现跨参与方进行联合数据分析,通过添加脱敏数据与混淆掩码的方式,可以在保护每个参与方的原始数据的前提下,完成纵向联邦分组聚合,并且存在分组聚合需求的参与方可以获取到准确的最终分组聚合结果。通过引入随机顺序的混淆掩码(限定了掩码的概率分布),可以保护存在分组聚合需求的参与方的原始明细数据不被泄露,提升数据安全性,同时通过限制并过滤分组聚合结果的方式,可以保护进行分组聚合的参与方保护原始明细数据。综上,本申请可以很好地将各个参与方的明细数据均在本地存储,无需集中存储至其他地方,即可完成数据交互。
进一步地,请参见图6,图6是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该数据处理装置可以用于执行图3所示的方法。如图6所示,该数据处理装置1可以包括:列表获取模块11、脱敏模块12、掩码分配模块13、发送模块14以及过滤还原模块15。
列表获取模块11,用于获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系;
脱敏模块12,用于对分组数据进行脱敏处理,得到分组数据对应的脱敏数据;
掩码分配模块13,用于基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致;
发送模块14,用于将对齐标识与分组数据对应的脱敏数据之间的映射关系,对齐标识与分组数据对应的混淆掩码之间的映射关系发送至第二对象;
过滤还原模块15,用于对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果;第一聚合列表是第二对象基于对齐标识与分组数据对应的脱敏数据之间的映射关系,将分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;第二聚合列表是第二对象基于对齐标识与分组数据对应的混淆掩码之间的映射关系,将分组数据对应的混淆掩码与待聚合业务数据进行对齐聚合处理后所得到的。
其中,列表获取模块11、脱敏模块12、掩码分配模块13、发送模块14以及过滤还原模块15的具体实现方式,可以参见上述图2所对应实施例中步骤S101-步骤S104的描述,这里将不再进行赘述。
在一个实施例中,脱敏模块12对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
获取脱敏规则集合,在脱敏规则集合中确定分组数据对应的目标脱敏规则;
按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据。
在一个实施例中,目标脱敏规则为哈希变换规则;
脱敏模块12按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
按照哈希变换规则获取哈希函数;
通过哈希函数对分组数据进行哈希计算处理,得到分组数据对应的哈希值;
将分组数据对应的哈希值确定为分组数据对应的脱敏数据。
在一个实施例中,目标脱敏规则为字符截取规则;
脱敏模块12按照目标脱敏规则对分组数据进行脱敏处理,得到分组数据对应的脱敏数据的具体实现方式,包括:
按照字符截取规则获取用于唯一表征分组数据的字符序列;字符序列由N个字符所组成;N为正整数;
按照字符序列中N个字符的排列顺序,依次提取字符序列的前K个字符,得到提取字符序列;K为小于N的正整数;
将提取字符序列确定为分组数据对应的脱敏数据。
在一个实施例中,第一原始数据列表中包括的分组数据的数量为M个,M为正整数;
在掩码分配模块13基于配置掩码集合为分组数据分配混淆掩码之前,数据处理装置还包括:
集合配置模块16,用于对M个分组数据进行归并处理,得到M个分组数据对应的归并分组数据集合;归并分组数据集合中的每个归并分组数据均具备唯一性,归并分组数据集合中的每个归并分组数据均包含于M个分组数据中;
集合配置模块16,还用于统计归并分组数据集合中所包含的归并分组数据的数量,将归并分组数据集合中所包含的归并分组数据的数量确定为第一数量;
集合配置模块16,还用于统计归并分组数据集合中,每个归并分组数据在第一原始数据列表中的出现频率;
集合配置模块16,还用于按照第一数量,以及每个归并分组数据在第一原始数据列表中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合。
其中,对于集合配置模块16的具体实现方式,可以参见上述图4所对应实施例中步骤S401-步骤S404的描述,这里将不再进行赘述。
在一个实施例中,归并分组数据集合中包含归并分组数据Si,i为正整数;
集合配置模块16按照第一数量,以及每个归并分组数据在分组数据集合中的出现频率,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体实现方式,包括:
将M个分组数据中所包含的分组数据的数量确定为第二数量;
将归并分组数据Si在第一原始数据列表中的出现频率确定为目标出现频率,将目标出现频率与第二数量之间的比值,确定为归并分组数据Si对应的数据呈现概率;
当确定出每个归并分组数据Si分别对应的数据呈现概率时,将每个归并分组数据分别对应的数据呈现概率所组成的概率分布,确定为第一原始数据列表中的分组数据所指示的数据概率分布;
按照第一数量与数据概率分布,对M个分组数据进行掩码配置处理,得到配置掩码集合。
在一个实施例中,集合配置模块16按照第一数量与数据概率分布,对M个分组数据进行掩码配置处理,得到配置掩码集合的具体实现方式,包括:
按照第一数量在候选掩码集合中,选择Q个候选掩码;Q与第一数量相等;Q个候选掩码包括候选掩码Hc,c为正整数;
在归并分组数据集合中选择任一归并分组数据作为候选掩码Hc对应的第一映射归并分组数据,将数据概率分布中第一映射归并分组数据所对应的数据呈现概率,确定为候选掩码Hc对应的掩码呈现概率;
在归并分组数据集合中确定剩余候选掩码对应的第二映射归并分组数据,将数据概率分布中第二映射归并分组数据所对应的数据呈现概率,确定为剩余候选掩码对应的掩码呈现概率;剩余候选掩码是指Q个候选掩码中,除候选掩码Hc以外的候选掩码;剩余候选掩码对应的第二映射归并分组数据与候选掩码Hc对应的第一映射归并分组数据互不相同;
将剩余候选掩码对应的掩码呈现概率,与候选掩码Hc对应的掩码呈现概率所组成的概率分布,确定为Q个候选掩码所指示的掩码概率分布;
将Q个候选掩码均确定为配置掩码,将包含Q个配置掩码以及掩码概率分布的集合确定为配置掩码集合。
在一个实施例中,掩码分配模块13基于配置掩码集合为分组数据分配混淆掩码的具体实现方式,包括:
获取配置掩码集合所指示的掩码概率分布;掩码概率分布中包括配置掩码集合中,每个配置掩码分别对应的掩码呈现概率;
基于每个配置掩码分别对应的掩码呈现概率,在配置掩码集合中确定分组数据对应的混淆掩码;配置掩码集合包括配置掩码Pd,d为正整数,配置掩码Pd对应的掩码呈现概率用于指示所述配置掩码Pd被分配为分组数据的混淆掩码的概率。
在一个实施例中,第一原始数据列表中包括的分组数据的数量为M个,分组数据对应的脱敏数据包含M个分组数据分别对应的脱敏数据;分组数据对应的混淆掩码包含M个分组数据分别对应的混淆掩码;M为正整数;第二原始数据列表中包括的待聚合业务数据的数量为W个,W为正整数;第一聚合列表包括归并脱敏数据集合中每个归并脱敏数据分别对应的第一聚合值;第二聚合列表包括归并混淆掩码集合中每个归并混淆掩码分别对应的第二聚合值;归并脱敏数据集合是由第二对象将M个脱敏数据进行归并处理后所得到的,归并脱敏数据集合中的每个归并脱敏数据均具备唯一性,归并脱敏数据集合中的归并脱敏数据均包含于M个脱敏数据中;归并混淆掩码集合是由第二对象将M个混淆掩码进行归并处理后所得到的,归并混淆掩码集合中的每个归并混淆掩码均具备唯一性,归并混淆掩码集合中的归并混淆掩码均包含于M个混淆掩码中;第一聚合值与第二聚合值,均是将W个待聚合业务数据中的一个或多个待聚合业务数据进行聚合处理后所得到的。
在一个实施例中,归并脱敏数据集合包括归并脱敏数据Ra,a为正整数,第一聚合列表中的归并脱敏数据Ra对应的第一聚合值,是第二对象将W个待聚合业务数据中的归并脱敏数据Ra对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,是基于第一对齐列表所确定的,第一对齐列表是指第二对象基于对齐标识与M个脱敏数据之间的映射关系,以及对齐标识与W个待聚合业务数据之间的映射关系,所构建得到的包含M个脱敏数据与W个待聚合业务数据之间的对齐关系的列表,第一对齐列表中一个脱敏数据与一个待聚合业务数据之间存在对齐关系,具有对齐关系的脱敏数据与待聚合业务数据所对应的对齐标识相同;归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,在第一对齐列表中所对齐的脱敏数据是相同的。
在一个实施例中,归并混淆掩码集合包括归并混淆掩码Tb,b为正整数,第二聚合列表中的归并混淆掩码Tb对应的第二聚合值,是第二对象将W个待聚合业务数据中的归并混淆掩码Tb对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,是基于第二对齐列表所确定的,第二对齐列表是指第二对象基于对齐标识与M个混淆掩码之间的映射关系,以及对齐标识与W个待聚合业务数据之间的映射关系,所构建得到的包含M个混淆掩码与W个待聚合业务数据之间的对齐关系的列表,第二对齐列表中一个混淆掩码与一个待聚合业务数据之间存在对齐关系,具有对齐关系的混淆掩码与待聚合业务数据所对应的对齐标识相同;归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,在第二对齐列表中所对齐的混淆掩码是相同的。
在一个实施例中,M个分组数据包括分组数据Sj,j为正整数;分组数据所对应的聚合结果包括分组数据Sj对应的聚合结果;
过滤还原模块15对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果的具体实现方式,包括:
将第二聚合列表进行过滤处理,将第一聚合列表确定为目标待还原列表;
将M个脱敏数据中分组数据Sj对应的脱敏数据确定为目标脱敏数据,将归并脱敏数据集合中与目标脱敏数据相同的归并脱敏数据,确定为目标归并脱敏数据;
将目标待还原列表中目标归并脱敏数据对应的第一聚合值,确定为分组数据Sj对应的聚合结果。
在本申请实施例中,通过为分组数据进行脱敏处理以及添加混淆掩码的方式,可以使得原始的分组数据明细不出本地,减少原始数据泄露的可能;同时,由于脱敏数据与混淆掩码的概率分布均与原始的分组数据一致,第二对象很难基于脱敏数据与混淆掩码反推出原始的分组数据,由此可以提升原始的分组数据的隐私性与安全性;而第一对象所接收到的也是第二对象返回的直接的一个结果值,无法推知第二对象的数据明细。那么基于此,本申请可以在第一对象与第二对象进行数据交互时,严格保证数据的隐私性与安全性,并利用同态性质(即基于同态加密形式的脱敏处理)来确保分组聚合结果的正确性。
进一步地,请参见图7,图7是本申请实施例提供的一种计算机设备的结构示意图。如图7所示,上述计算机设备8000可以包括:处理器8001,网络接口8004和存储器8005,此外,上述计算机设备8000还包括:用户接口8003,和至少一个通信总线8002。其中,通信总线8002用于实现这些组件之间的连接通信。其中,用户接口8003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口8003还可以包括标准的有线接口、无线接口。网络接口8004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器8005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器8005可选的还可以是至少一个位于远离前述处理器8001的存储装置。如图7所示,作为一种计算机可读存储介质的存储器8005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图7所示的计算机设备8000中,网络接口8004可提供网络通讯功能;而用户接口8003主要用于为用户提供输入的接口;而处理器8001可以用于调用存储器8005中存储的设备控制应用程序,以实现:
获取属于第一对象的第一原始数据列表;第一原始数据列表包括对齐标识与分组数据之间的映射关系;
对分组数据进行脱敏处理,得到分组数据对应的脱敏数据,基于配置掩码集合为分组数据分配混淆掩码;配置掩码集合所指示的掩码概率分布,与第一原始数据列表中的分组数据所指示的数据概率分布一致;
将对齐标识与分组数据对应的脱敏数据之间的映射关系,对齐标识与分组数据对应的混淆掩码之间的映射关系发送至第二对象;
对第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到分组数据所对应的聚合结果;第一聚合列表是第二对象基于对齐标识与分组数据对应的脱敏数据之间的映射关系,将分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;第二聚合列表是第二对象基于对齐标识与分组数据对应的混淆掩码之间的映射关系,将分组数据对应的混淆掩码与待聚合业务数据进行对齐聚合处理后所得到的。
应当理解,本申请实施例中所描述的计算机设备8000可执行前文图2所对应实施例中对该数据处理方法的描述,也可执行前文图6所对应实施例中对该数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理的计算机设备8000所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图2所对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行本申请实施例中一方面提供的方法。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (15)
1.一种数据处理方法,其特征在于,包括:
获取属于第一对象的第一原始数据列表;所述第一原始数据列表包括对齐标识与分组数据之间的映射关系;
对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据,基于配置掩码集合为所述分组数据分配混淆掩码;所述配置掩码集合所指示的掩码概率分布,与所述第一原始数据列表中的分组数据所指示的数据概率分布一致;
将所述对齐标识与所述分组数据对应的脱敏数据之间的映射关系,所述对齐标识与所述分组数据对应的混淆掩码之间的映射关系发送至第二对象;
对所述第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到所述分组数据所对应的聚合结果;所述第一聚合列表是所述第二对象基于所述对齐标识与所述分组数据对应的脱敏数据之间的映射关系,将所述分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;所述第二聚合列表是所述第二对象基于所述对齐标识与所述分组数据对应的混淆掩码之间的映射关系,将所述分组数据对应的混淆掩码与所述待聚合业务数据进行对齐聚合处理后所得到的。
2.根据权利要求1所述的方法,其特征在于,所述对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据,包括:
获取脱敏规则集合,在所述脱敏规则集合中确定所述分组数据对应的目标脱敏规则;
按照所述目标脱敏规则对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据。
3.根据权利要求2所述的方法,其特征在于,所述目标脱敏规则为哈希变换规则;
所述按照所述目标脱敏规则对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据,包括:
按照所述哈希变换规则获取哈希函数;
通过所述哈希函数对所述分组数据进行哈希计算处理,得到所述分组数据对应的哈希值;
将所述分组数据对应的哈希值确定为所述分组数据对应的脱敏数据。
4.根据权利要求2所述的方法,其特征在于,所述目标脱敏规则为字符截取规则;
所述按照所述目标脱敏规则对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据,包括:
按照所述字符截取规则获取用于唯一表征所述分组数据的字符序列;所述字符序列由N个字符所组成;N为正整数;
按照所述字符序列中所述N个字符的排列顺序,依次提取所述字符序列的前K个字符,得到提取字符序列;K为小于N的正整数;
将所述提取字符序列确定为所述分组数据对应的脱敏数据。
5.根据权利要求1所述的方法,其特征在于,所述第一原始数据列表中包括的分组数据的数量为M个,M为正整数;
在基于配置掩码集合为所述分组数据分配混淆掩码之前,所述方法还包括:
对M个分组数据进行归并处理,得到所述M个分组数据对应的归并分组数据集合;所述归并分组数据集合中的每个归并分组数据均具备唯一性,所述归并分组数据集合中的每个归并分组数据均包含于所述M个分组数据中;
统计所述归并分组数据集合中所包含的归并分组数据的数量,将所述归并分组数据集合中所包含的归并分组数据的数量确定为第一数量;
统计所述归并分组数据集合中,每个归并分组数据在所述第一原始数据列表中的出现频率;
按照所述第一数量,以及所述每个归并分组数据在所述第一原始数据列表中的出现频率,对所述M个分组数据进行掩码配置处理,得到所述配置掩码集合。
6.根据权利要求5所述的方法,其特征在于,所述归并分组数据集合中包含归并分组数据Si,i为正整数;
所述按照所述第一数量,以及所述每个归并分组数据在所述分组数据集合中的出现频率,对所述M个分组数据进行掩码配置处理,得到所述配置掩码集合,包括:
将所述M个分组数据中所包含的分组数据的数量确定为第二数量;
将所述归并分组数据Si在所述第一原始数据列表中的出现频率确定为目标出现频率,将所述目标出现频率与所述第二数量之间的比值,确定为所述归并分组数据Si对应的数据呈现概率;
当确定出每个归并分组数据Si分别对应的数据呈现概率时,将所述每个归并分组数据分别对应的数据呈现概率所组成的概率分布,确定为所述第一原始数据列表中的分组数据所指示的数据概率分布;
按照所述第一数量与所述数据概率分布,对所述M个分组数据进行掩码配置处理,得到所述配置掩码集合。
7.根据权利要求6所述的方法,其特征在于,所述按照所述第一数量与所述数据概率分布,对所述M个分组数据进行掩码配置处理,得到所述配置掩码集合,包括:
按照所述第一数量在候选掩码集合中,选择Q个候选掩码;Q与所述第一数量相等;Q个候选掩码包括候选掩码Hc,c为正整数;
在所述归并分组数据集合中选择任一归并分组数据作为所述候选掩码Hc对应的第一映射归并分组数据,将所述数据概率分布中所述第一映射归并分组数据所对应的数据呈现概率,确定为所述候选掩码Hc对应的掩码呈现概率;
在所述归并分组数据集合中确定剩余候选掩码对应的第二映射归并分组数据,将所述数据概率分布中所述第二映射归并分组数据所对应的数据呈现概率,确定为所述剩余候选掩码对应的掩码呈现概率;所述剩余候选掩码是指所述Q个候选掩码中,除所述候选掩码Hc以外的候选掩码;所述剩余候选掩码对应的第二映射归并分组数据与所述候选掩码Hc对应的第一映射归并分组数据互不相同;
将所述剩余候选掩码对应的掩码呈现概率,与所述候选掩码Hc对应的掩码呈现概率所组成的概率分布,确定为所述Q个候选掩码所指示的掩码概率分布;
将所述Q个候选掩码均确定为配置掩码,将包含Q个配置掩码以及所述掩码概率分布的集合确定为所述配置掩码集合。
8.根据权利要求1所述的方法,其特征在于,所述基于配置掩码集合为所述分组数据分配混淆掩码,包括:
获取所述配置掩码集合所指示的掩码概率分布;所述掩码概率分布中包括所述配置掩码集合中,每个配置掩码分别对应的掩码呈现概率;
基于所述每个配置掩码分别对应的掩码呈现概率,在所述配置掩码集合中确定所述分组数据对应的混淆掩码;所述配置掩码集合包括配置掩码Pd,d为正整数,所述配置掩码Pd对应的掩码呈现概率用于指示所述配置掩码Pd被分配为所述分组数据的混淆掩码的概率。
9.根据权利要求1所述的方法,其特征在于,所述第一原始数据列表中包括的分组数据的数量为M个,所述分组数据对应的脱敏数据包含M个分组数据分别对应的脱敏数据;所述分组数据对应的混淆掩码包含所述M个分组数据分别对应的混淆掩码;M为正整数;
所述第二原始数据列表中包括的待聚合业务数据的数量为W个,W为正整数;
所述第一聚合列表包括归并脱敏数据集合中每个归并脱敏数据分别对应的第一聚合值;
所述第二聚合列表包括归并混淆掩码集合中每个归并混淆掩码分别对应的第二聚合值;
所述归并脱敏数据集合是由所述第二对象将M个脱敏数据进行归并处理后所得到的,所述归并脱敏数据集合中的每个归并脱敏数据均具备唯一性,所述归并脱敏数据集合中的归并脱敏数据均包含于所述M个脱敏数据中;
所述归并混淆掩码集合是由所述第二对象将M个混淆掩码进行归并处理后所得到的,所述归并混淆掩码集合中的每个归并混淆掩码均具备唯一性,所述归并混淆掩码集合中的归并混淆掩码均包含于所述M个混淆掩码中;
所述第一聚合值与所述第二聚合值,均是将W个待聚合业务数据中的一个或多个待聚合业务数据进行聚合处理后所得到的。
10.根据权利要求9所述的方法,其特征在于,所述归并脱敏数据集合包括归并脱敏数据Ra,a为正整数,所述第一聚合列表中的所述归并脱敏数据Ra对应的第一聚合值,是所述第二对象将所述W个待聚合业务数据中的所述归并脱敏数据Ra对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;所述归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,是基于第一对齐列表所确定的,所述第一对齐列表是指所述第二对象基于所述对齐标识与所述M个脱敏数据之间的映射关系,以及所述对齐标识与所述W个待聚合业务数据之间的映射关系,所构建得到的包含所述M个脱敏数据与所述W个待聚合业务数据之间的对齐关系的列表,所述第一对齐列表中一个脱敏数据与一个待聚合业务数据之间存在对齐关系,具有对齐关系的脱敏数据与待聚合业务数据所对应的对齐标识相同;所述归并脱敏数据Ra对应的一个或多个映射待聚合业务数据,在所述第一对齐列表中所对齐的脱敏数据是相同的。
11.根据权利要求9所述的方法,其特征在于,所述归并混淆掩码集合包括归并混淆掩码Tb,b为正整数,所述第二聚合列表中的所述归并混淆掩码Tb对应的第二聚合值,是所述第二对象将所述W个待聚合业务数据中的所述归并混淆掩码Tb对应的一个或多个映射待聚合业务数据进行聚合处理后所得到的;所述归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,是基于第二对齐列表所确定的,所述第二对齐列表是指所述第二对象基于所述对齐标识与所述M个混淆掩码之间的映射关系,以及所述对齐标识与所述W个待聚合业务数据之间的映射关系,所构建得到的包含所述M个混淆掩码与所述W个待聚合业务数据之间的对齐关系的列表,所述第二对齐列表中一个混淆掩码与一个待聚合业务数据之间存在对齐关系,具有对齐关系的混淆掩码与待聚合业务数据所对应的对齐标识相同;所述归并混淆掩码Tb对应的一个或多个映射待聚合业务数据,在所述第二对齐列表中所对齐的混淆掩码是相同的。
12.根据权利要求9所述的方法,其特征在于,所述M个分组数据包括分组数据Sj,j为正整数;所述分组数据所对应的聚合结果包括所述分组数据Sj对应的聚合结果;
所述对所述第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到所述分组数据所对应的聚合结果,包括:
将所述第二聚合列表进行过滤处理,将所述第一聚合列表确定为目标待还原列表;
将所述M个脱敏数据中所述分组数据Sj对应的脱敏数据确定为目标脱敏数据,将所述归并脱敏数据集合中与所述目标脱敏数据相同的归并脱敏数据,确定为目标归并脱敏数据;
将所述目标待还原列表中所述目标归并脱敏数据对应的第一聚合值,确定为所述分组数据Sj对应的聚合结果。
13.一种数据处理装置,其特征在于,包括:
列表获取模块,用于获取属于第一对象的第一原始数据列表;所述第一原始数据列表包括对齐标识与分组数据之间的映射关系;
脱敏模块,用于对所述分组数据进行脱敏处理,得到所述分组数据对应的脱敏数据;
掩码分配模块,用于基于配置掩码集合为所述分组数据分配混淆掩码;所述配置掩码集合所指示的掩码概率分布,与所述第一原始数据列表中的分组数据所指示的数据概率分布一致;
发送模块,用于将所述对齐标识与所述分组数据对应的脱敏数据之间的映射关系,所述对齐标识与所述分组数据对应的混淆掩码之间的映射关系发送至第二对象;
过滤还原模块,用于对所述第二对象返回的第一聚合列表与第二聚合列表进行过滤还原处理,得到所述分组数据所对应的聚合结果;所述第一聚合列表是所述第二对象基于所述对齐标识与所述分组数据对应的脱敏数据之间的映射关系,将所述分组数据对应的脱敏数据与第二原始数据列表中的待聚合业务数据进行对齐聚合处理后所得到的;所述第二聚合列表是所述第二对象基于所述对齐标识与所述分组数据对应的混淆掩码之间的映射关系,将所述分组数据对应的混淆掩码与所述待聚合业务数据进行对齐聚合处理后所得到的。
14.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供网络通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使所述计算机设备执行权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行权利要求1-12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310730914.2A CN116451279B (zh) | 2023-06-20 | 2023-06-20 | 一种数据处理方法、装置、设备以及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310730914.2A CN116451279B (zh) | 2023-06-20 | 2023-06-20 | 一种数据处理方法、装置、设备以及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116451279A CN116451279A (zh) | 2023-07-18 |
CN116451279B true CN116451279B (zh) | 2023-08-15 |
Family
ID=87132496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310730914.2A Active CN116451279B (zh) | 2023-06-20 | 2023-06-20 | 一种数据处理方法、装置、设备以及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116451279B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117236420B (zh) * | 2023-11-14 | 2024-03-26 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于数据子集的纵向联邦学习异常数据调试方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113362048A (zh) * | 2021-08-11 | 2021-09-07 | 腾讯科技(深圳)有限公司 | 数据标签分布确定方法、装置、计算机设备和存储介质 |
CN113449048A (zh) * | 2021-08-31 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 数据标签分布确定方法、装置、计算机设备和存储介质 |
CN114936372A (zh) * | 2022-04-06 | 2022-08-23 | 湘潭大学 | 一种基于三方同态加密纵向联邦学习的模型保护方法 |
US11599655B1 (en) * | 2018-09-21 | 2023-03-07 | Amazon Technologies, Inc. | Data sharing method |
CN115994161A (zh) * | 2023-03-21 | 2023-04-21 | 杭州金智塔科技有限公司 | 基于多方安全计算的数据聚合系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032840B (zh) * | 2021-05-26 | 2021-07-30 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及计算机可读存储介质 |
-
2023
- 2023-06-20 CN CN202310730914.2A patent/CN116451279B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11599655B1 (en) * | 2018-09-21 | 2023-03-07 | Amazon Technologies, Inc. | Data sharing method |
CN113362048A (zh) * | 2021-08-11 | 2021-09-07 | 腾讯科技(深圳)有限公司 | 数据标签分布确定方法、装置、计算机设备和存储介质 |
CN113449048A (zh) * | 2021-08-31 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 数据标签分布确定方法、装置、计算机设备和存储介质 |
CN114936372A (zh) * | 2022-04-06 | 2022-08-23 | 湘潭大学 | 一种基于三方同态加密纵向联邦学习的模型保护方法 |
CN115994161A (zh) * | 2023-03-21 | 2023-04-21 | 杭州金智塔科技有限公司 | 基于多方安全计算的数据聚合系统及方法 |
Non-Patent Citations (1)
Title |
---|
基于Bayes网络的高维感知数据本地隐私保护发布;任雪斌 等;中国科学:信息科学;第49卷(第12期);第1586-1605页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116451279A (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113434269B (zh) | 基于区块链的分布式隐私计算方法及装置 | |
CN113127916B (zh) | 数据集合处理方法、数据处理方法、装置及存储介质 | |
CN106203140B (zh) | 基于数据结构的数据流通方法、装置及终端 | |
CN110688495A (zh) | 一种事件信息的知识图谱模型构建方法、装置、存储介质 | |
CN114595835B (zh) | 基于联邦学习的模型训练方法及装置、设备、存储介质 | |
CN116451279B (zh) | 一种数据处理方法、装置、设备以及可读存储介质 | |
CN111611618A (zh) | 一种数据统计方法和装置 | |
WO2022156594A1 (zh) | 联邦模型训练方法、装置、电子设备、计算机程序产品及计算机可读存储介质 | |
CN111753324B (zh) | 私有数据的处理方法、计算方法及所适用的设备 | |
CN113362048B (zh) | 数据标签分布确定方法、装置、计算机设备和存储介质 | |
CN105022789A (zh) | 一种基于地理位置和特征图像的植物物种鉴定方法及系统 | |
CN112910953B (zh) | 业务数据的推送方法、装置和服务器 | |
CN106470109A (zh) | 一种身份识别方法和设备 | |
CN112600830B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN110610098A (zh) | 数据集生成方法及装置 | |
CN109242683A (zh) | 基于区块链技术的无人机监管方法、装置及系统 | |
CN117313158A (zh) | 数据处理方法和装置 | |
CN117951341A (zh) | 基于区块链的业务处理方法、装置、设备、介质及产品 | |
CN113051608A (zh) | 一种联邦学习的虚拟化共享模型传输方法 | |
CN117151736A (zh) | 反电诈管理预警方法及系统 | |
Veglis | Interactive Data Visualization | |
CN113254989B (zh) | 目标数据的融合方法、装置和服务器 | |
CN112508571A (zh) | 基于区块链的数据处理方法、装置、计算机设备及存储介质 | |
Jho | The transformation of cyberactivism and democratic governance in Korea: The role of technology, civil society, and institutions | |
Xu et al. | PBKM: A secure knowledge management framework |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40088866 Country of ref document: HK |