CN110768936A - 隐私数据的上报方法、装置与存储介质 - Google Patents

隐私数据的上报方法、装置与存储介质 Download PDF

Info

Publication number
CN110768936A
CN110768936A CN201810845018.XA CN201810845018A CN110768936A CN 110768936 A CN110768936 A CN 110768936A CN 201810845018 A CN201810845018 A CN 201810845018A CN 110768936 A CN110768936 A CN 110768936A
Authority
CN
China
Prior art keywords
data
string
reported
reporting
determining
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
CN201810845018.XA
Other languages
English (en)
Other versions
CN110768936B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810845018.XA priority Critical patent/CN110768936B/zh
Priority to EP19841214.0A priority patent/EP3823237B1/en
Priority to PCT/CN2019/087198 priority patent/WO2020019833A1/zh
Publication of CN110768936A publication Critical patent/CN110768936A/zh
Priority to US17/155,284 priority patent/US11531778B2/en
Application granted granted Critical
Publication of CN110768936B publication Critical patent/CN110768936B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明实施例公开了一种隐私数据的上报方法、装置与存储介质,所述方法包括:终端设备获取上报数据,并根据预设步长,将上报数据进行划分成前串数据和后串数据,然后对前串数据和后串数据分别进行加扰,生成隐私数据,并将隐私数据发送给服务器。服务器接收多个终端设备发送的隐私数据,并确定N个第一前串数据,然后,根据多个隐私数据,获得M个待上报数据,最后,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。即本实施例的方法,终端设备将上报数据划分长两部分,并分别进行加扰,生成隐私数据,服务器终端设备发送的隐私数据,从首尾两个方向进行上报数据的匹配,匹配准确性高,匹配速度快。

Description

隐私数据的上报方法、装置与存储介质
技术领域
本申请涉及数据处理技术领域,尤其涉及一种隐私数据的上报方法、装置与存储介质。
背景技术
为了提高终端用户更好的体验,搜集用户数据进行智能分析是必要的,例如,服务器收集多条用户数据,用以分析改善用户体验,但隐私问题始终是争议点。比如在收集用户关注的话题或者用户终端安装的应用时,可能会触及用户的敏感信息,如患病,宗教信仰等。
为了防止用户隐私泄露,已有技术,终端将服务器未知的数据上报服务器时,终端将上报数据拆分成等长的字母组合,对每个字母组合进行加扰,上报加扰后的字母组合。服务器在获取不同的字母组合之间的关联关系时,要计算加扰后的字母组合之间的条件概率。
但是,对于无法拆分成等长字母组合的数据,已有技术的匹配准确率低,且服务器在获取不同的字母组合之间的关联关系时,需要计算每个用户上报的加扰后的字母组合的条件概率,性能开销较大。
发明内容
本发明实施例提供一种隐私数据的上报方法、装置与存储介质,实现敏感信息的准确上报,降低数据上报的性能开销。
第一方面,本申请实施例提供一种隐私数据的上报方法,包括:
终端设备获取上报数据,并根据预设步长,将上报数据进行划分成前串数据和后串数据,其中,前串数据的长度为预设步长的整数倍,后串数据为上报数据中除前串数据外的数据;接着,根据预设的加扰算法,对前串数据和后串数据分别进行加扰,生成隐私数据,最后,将生成的隐私数据发送给服务器。
本申请的有益效果包括:终端设备将上报数据划分长两部分,并分别进行加扰,生成隐私数据,服务器将终端设备发送的隐私数据,从首尾两个方向进行上报数据的匹配,匹配准确性高,匹配速度快。
可选的,上述隐私数据可以包括前串加扰数据和后串加扰数据,此时,上述终端设备根据预设的加扰算法,对前串数据和后串数据分别进行加扰,生成隐私数据,可以通过以下方式实现:首先,终端设备根据预设的哈希函数,确定前串数据对应的第一哈希值和所述后串数据对应的第二哈希值;接着,根据预设的加扰算法,生成第一哈希值对应的前串加扰数据和第二哈希值对应的后串加扰数据。这样可以将前串数据与后串数据的关联起来,服务器在进行数据匹配时,不需要从每个隐私数据中计算条件概率,进而简化了匹配过程,降低了匹配复杂性。
其中,上述终端设备根据预设的哈希函数,确定前串数据对应的第一哈希值和后串数据对应的第二哈希值,可以通过以下方式实现:首先,终端设备根据预设的哈希函数,确定前串数据的第一哈希值;根据预设的哈希函数,确定第一哈希值与后串数据组成的数据的第二哈希值。
其中,终端设备根据预设的加扰算法,生成第一哈希值对应的前串加扰数据和第二哈希值对应的后串加扰数据,可以通过以下方式实现:
首先,终端设备根据第一哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第一行向量,该第一行向量的第k1位的元素为1,其余元素为0,k1的值等于第一哈希值;接着,根据第二哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第二行向量,该第二行向量的第k2位的元素为1,其余元素为0,k2的值等于第二哈希值;
然后,根据预设的加扰比例,生成元素个数为m的第三行向量,该第三行向量中元素1的比例等于预设的加扰比例,第三行向量中元素1和元素0为随机均匀分布。这样,根据第一行向量和第三行向量,确定前串加扰数据,根据第二行向量和第三行向量,确定后串加扰数据,例如,对第一行向量和第三行向量进行异或运算,生成前串加扰数据,对第二行向量和第三行向量进行异或运算,生成后串加扰数据。
可选的,上述隐私数据还可以包括前串数据的长度、后串数据的长度和预设的哈希函数。
本申请的有益效果包括:使用布隆过滤器向量对前串数据和后串数据分别进行加扰,实现对前串加扰数据和后串加扰数据的准确确定,且整个加扰过程简单,易于实行。
第二方面,本申请实施例提供一种隐私数据的上报方法,包括:
服务器接收多个终端设备发送的隐私数据,接着,确定N个第一前串数据,其中第一前串数据的长度等于预设步长的整数倍;然后,根据多个隐私数据、N个第一前串数据与不同长度的后串数据,获得M个待上报数据;再接着,根据多个隐私数据,确定M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
本申请的有益效果包括:服务器将终端设备发送的隐私数据,从首尾两个方向进行上报数据的匹配,匹配准确性高,匹配速度快。
可选的,上述服务器根据多个隐私数据、N个第一前串数据与不同长度的后串数据,获得M个待上报数据,可以通过以下方式实现:首先,服务器根据多个所述隐私数据,确定每个第一前串数据的上报比例,并将上报比例大于第二预设值的第一前串数据作为第二前串数据,共获得P个第二前串数据;这样可以将所有第二前串数据与不同长度的后串数据组成M个待上报数据。
可选的,本实施例还可以通过逐渐增加前串数据的长度,来提高数据匹配的效率。具体为,若服务器判断上述获得的第二前串数据的长度小于预设长度值,则根据每个第二前串数据的上报比例和每个第二前串数据对应的待上报数据的上报比例,从P个第二前串数据中确定H个第三前串数据;接着,在H个第三前串数据的尾部分别增加预设步长的不同数据,获得N个第四前串数据,将N个第四前串数据更新为N个第一前串数据,继续执行上述匹配过程。
本申请的有益效果包括:服务器从首尾两个方向进行上报数据的匹配,可以快速找到上报数据,并且在匹配时,采用逐渐增加前串数据长度的方式进行匹配,处理效率提高。
可选的,上述隐私数据还可以包括前串数据的长度、后串数据的长度、前串加扰数据、后串加扰数据,以及前串加扰数据和后串加扰数据对应的哈希函数。此时,上述根据多个所述隐私数据,确定每个第一前串数据的上报比例,可以通过以下方式实现:
首先,服务器根据第一前串数据的长度,从多个隐私数据的Q1个隐私数据中获取Q1个前串加扰数据,以及Q1个前串加扰数据对应的哈希函数,其中,Q1个隐私数据中的前串数据的长度等于第一前串数据的长度;接着,根据Q1个前串加扰数据和Q1个前串加扰数据对应的哈希函数,确定第二矩阵,其中,第二矩阵的行数等于Q1个哈希函数中不同哈希函数的个数Q2,每一行与所述Q2个哈希函数一一对应;然后,针对每个第一前串数据,根据Q2个不同的哈希函数,确定该第一前串数据的Q2个哈希值,并根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例;最后,根据Q2个加噪比例,确定该第一前串数据的上报比例。
其中,上述根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例,可以通过以下方式实现:首先,针对每个哈希值,从所述第二矩阵中获取该哈希值k3有关的哈希函数对应的行元素,从所述行元数中获取第k3位的元素,该哈希值k3有关的哈希函数是指根据第一前串数据得到该哈希值k3所采用的哈希函数;接着,从Q1个前串加扰数据中获取该哈希值k3有关的哈希函数所对应的前串加扰数据的数目Q3;然后,根据所述元素和所述Q3,确定该哈希值k3对应的加噪比例,进而准确获得第一前串数据的Q2个加噪比例。
而服务器根据Q2个加噪比例,确定该第一前串数据的上报比例的具体方式可以是,服务器根据Q2个加噪比例和第一噪声幅度,确定该第一前串数据的上报比例。例如,服务器确定Q2个加噪比例中每个加噪比例与第一噪声幅度的差值,将Q2个差值与第二噪声幅度的比值中的最小值作为该第一前串数据的上报比例,其中第二噪声幅度为常数与两倍第一噪声幅度的差值。
可选的,上述服务器确定第二矩阵的可以通过以下方式实现:首先从Q1个前串加扰数据中,确定Q2组前串加扰数据,其中,每组前串加扰数据对应的哈希函数相同;接着,将Q2组前串加扰数据中每组前串加扰数据按位累加,共获得Q2个行向量,并将Q2个行向量组成该第二矩阵。
本申请的有益效果包括:通过上述方法建立的第二矩阵与终端设备的上报数据的前串数据具有相关性,基于该第二矩阵查找终端设备的上报数据,可以提高查找的准确性。
可选的,上述服务器根据多个所述隐私数据,确定M个待上报数据的上报比例,可以通过以下方式实现:首先,服务器从M个待上报数据中,确定Q4组待上报数据,其中每组待上报数据中的前串数据的长度相同、后串数据的长度相同;接着,针对每组待上报数据,根据该组待上报数据中的前串数据和后串数据的长度,从多个隐私数据的Q5个第二隐私数据中获取Q5个后串加扰数据,以及Q5个后串加扰数据对应的哈希函数,其中,Q5个第二隐私数据中的前串数据的长度等于该组待上报数据中的前串数据的长度,后串数据的长度等于该组待上报数据中的后串数据的长度;然后,根据Q5个后串加扰数据和Q5个后串加扰数据对应的哈希函数,确定第四矩阵,该第四矩阵的行数等于Q5个哈希函数中不同哈希函数的个数Q6,每一行与Q6个哈希函数一一对应;再接着,针对该组待上报数据中的每一个待上报数据,根据Q6个不同的哈希函数,确定该待上报数据的Q6个哈希值,并根据Q6个哈希值和第四矩阵,确定Q6个加噪比例;最后,根据Q6个加噪比例,确定该待上报数据的上报比例。
本申请的有益效果包括:上述方法基于终端设备上报的隐私数据确定待上报数据的上报比例,使得待上报数据的上报比例与终端设备上报的隐私数据相关,这样基于这些待上报数据查找终端设备的上报数据,可以提高上报数据的查找准确性。
其中,上述服务器述根据Q6个哈希值和所述第四矩阵,确定Q6个加噪比例,可以通过以下方式实现:首先,服务器针对每个哈希值,从第四矩阵中获取该哈希值k4有关的哈希函数对应的行元素,从行元数中获取第k4位的元素,该哈希值k4有关的哈希函数是指根据待上报数据得到该哈希值k4所采用的哈希函数;接着,从Q5个后串加扰数据中获取该哈希值k4有关的哈希函数所对应的后串加扰数据的数目Q7;然后,根据上述元素和该Q7,确定该哈希值k4对应的加噪比例。
其中,服务器根据Q6个加噪比例,确定该待上报数据的上报比例,可以是服务器根据Q6个加噪比例和第一噪声幅度,确定该待上报数据的上报比例。例如,服务器确定Q6个加噪比例中每个加噪比例与第一噪声幅度的差值,并将Q6个差值与第二噪声幅度的比值中的最小值作为该待上报数据的上报比例,其中第二噪声幅度为常数与两倍第一噪声幅度的差值。
可选的,上述服务器确定第四矩阵的可以通过以下方式实现:首先,从Q5个所述后串加扰数据中,确定Q6组后串加扰数据,其中,每组后串加扰数据对应的哈希函数相同;接着,将Q6组后串加扰数据中每组后串加扰数据按位叠加,共获得Q6个行向量;最后,将Q6个行向量组成该第四矩阵。
本申请的有益效果包括:通过上述方法建立的第四矩阵与终端设备的上报数据的后串数据具有相关性,基于该第四矩阵查找终端设备的上报数据,可以提高查找的准确性。
可选的,上述服务器根据每个第二前串数据的上报比例和每个第二前串数据对应的待上报数据的上报比例,从P个第二前串数据中确定H个第三前串数据,可以通过以下方式实现:首先,根据每个第二前串数据的上报比例和每个所述第二前串数据对应的所有待上报数据的上报比例,确定每个第二前串数据的剩余上报比例;接着,将剩余上报比例大于等于第三预设值的第二前串数据确定为第三前串数据,获得所述H个第三前串数据。这样可以实现对前串数据的筛选,保留下满足要求的前串数据进行后续的匹配,减少匹配的数据量,提高匹配效率。
其中,第二前串数据的剩余上报比例可以通过以下方式实现:首先,服务器针对每个第二前串数据,获取该第二前串数据对应的所有待上报数据的上报比例的和值;将该第二前串数据的上报比例与所述和值的差值,确定为该第二前串数据的剩余上报比例。
可选的,上述后串数据的长度小于或等于所述预设步长。
第三方面,本申请实施例提供一种隐私数据的上报装置,包括:
获取模块,用于获取上报数据;
划分模块,用于根据预设步长,将所述上报数据进行划分成前串数据和后串数据,其中,所述前串数据的长度为所述预设步长的整数倍,所述后串数据为所述上报数据除所述前串数据外的数据;
加扰模块,用于根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成隐私数据;
发送模块,用于将所述隐私数据发送给服务器。
第四方面,本申请实施例提供一种隐私数据的上报装置,包括:
接收模块,用于接收多个终端设备发送的隐私数据;
前串数据确定模块,用于确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数;
待上报数据获取模块,用于根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据;
上报比例确定模块,用于根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
第五方面,本申请实施例提供一种终端设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现第一方面中任一项所述的隐私数据的上报方法;
发送器,用于将所述处理器生成的隐私数据发送给服务器。
第六方面,本申请实施例提供一种服务器,包括:
接收器,用于接收终端设备发送的上报数据;
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现第二方面中任一项所述的隐私数据的上报方法。
第七方面,本申请实施例提供一种计算机存储介质,所述存储介质中存储计算机程序,所述计算机程序在执行时实现第一方面和第二方面任一项所述的隐私数据的上报方法。
本发明实施例提供的隐私数据的上报方法、装置与存储介质,终端设备获取上报数据,并根据预设步长,将上报数据进行划分成前串数据和后串数据,其中,前串数据的长度为预设步长的整数倍,后串数据为上报数据除前串数据外的数据,然后对前串数据和后串数据分别进行加扰,生成隐私数据,并将隐私数据发送给服务器。服务器接收多个终端设备发送的隐私数据,并确定N个第一前串数据,其中,第一前串数据的长度等于预设步长的整数倍,然后,根据多个隐私数据、N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据,最后,根据多个所述隐私数据,确定M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。即本实施例的方法,终端设备将上报数据划分长两部分,并分别进行加扰,生成隐私数据,服务器将终端设备发送的隐私数据,从首尾两个方向进行上报数据的匹配,匹配准确性高,匹配速度快。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为本实施例涉及的隐私数据的上报方法的应用场景图;
图1B为本申请实施例一提供的隐私数据的上报方法的流程图;
图2为本申请实施例二提供的隐私数据的上报方法的流程图;
图3为本申请实施例三提供的隐私数据的上报方法的流程图;
图4为本申请实施例四提供的隐私数据的上报方法的流程图;
图5为本申请实施例五提供的隐私数据的上报方法的流程图;
图6为本申请实施例六提供的隐私数据的上报方法的流程图;
图7为本申请实施例七提供的隐私数据的上报方法的流程图;
图8为本申请实施例八提供的隐私数据的上报方法的流程图;
图9为本申请实施例一提供的隐私数据的上报装置的框架图;
图10为本申请实施例二提供的隐私数据的上报装置的框架图;
图11为本申请实施例三提供的隐私数据的上报装置的框架图;
图12为本申请实施例一提供的隐私数据的上报装置的框架图;
图13为本申请实施例二提供的隐私数据的上报装置的框架图;
图14为本申请实施例三提供的隐私数据的上报装置的框架图;
图15为本申请实施例四提供的隐私数据的上报装置的框架图;
图16为本申请实施例五提供的隐私数据的上报装置的框架图;
图17为本发明实施例提供的终端设备的结构示意图;
图18为本发明实施例提供的服务器的结构示意图。
具体实施方式
为了提高用户的体验,搜集用户数据进行智能分析是必要的,例如,华为手机收集超过XX条用户数据,用以分析改善用户体验。但隐私问题始终是争议点,比如在收集用户关注那些感兴趣的话题或者安装了哪些应用时,可能会触及用户的敏感信息,如患病,宗教信仰等。为了防止用户隐私泄露,可以利用差分隐私技术对需要统计的用户行为数据进行保护。
在对某个敏感事件进行统计时,客户端和服务器都需要预先知道要统计的敏感事件的名称。例如,要统计“vmall.com”软件的安装率,那么客户端和服务器都预先知道要统计的是“vmall.com”这个关键词。但是,对于少数客户端安装的软件,服务器预先并不知道这款软件的名字,而为了保护用户隐私又不能让客户端直接用明文上传这款软件的名称。
而已有的隐私数据上报方法,在将客户端将数据上报给服务器之前,将上报数据划分长等长的字符串,当上报数据不是划分步长的整数倍时,例如,上报数据为“sun”,划分步长为2个字符,这样,上述数据“sun”划分为字符串“su”和“n”。对于“n”,服务器任然按照26*26(26为英文字母的个数)中的字母组合去尝试匹配“n”,其匹配准确率低,会出现匹配失败的问题。
另外,已有技术,服务器在数据匹配时,通过计算不同的字母组合之间的条件概率,以获取不同的字母组合之间的关联关系。而计算每个用户上报的加扰后的字母组合的条件概率,其性能开销较大,搜索速度慢。
为了解决上述技术问题,本申请实施例提供的技术方案,终端设备将上报数据拆分成不重叠的互补的两部分(即前串数据和后串数据),分别加扰后发送给服务器。其中,加扰后的前串数据和后串数据具有相关性,这样服务器在匹配时,不需要计算调节概率,其匹配过程简单,准确率高。同时,服务器从首尾两个方向进行数据匹配,可以快速找到终端设备发送的上报数据,进而提高了数据查找效率。
图1A为本实施例涉及的隐私数据的上报方法的应用场景图,如图1A所示,本实施例的终端设备与服务器之间通信连接。终端设备获得上报数据(如图中的功能打点数据),可选的,将上报数据保存在本地数据库中。接着,终端设备的客户端DP(DifferentialPrivacy,差分隐私,是指客户端上报的信息添加随机噪声,是服务器侧无法将客户端上报的信息与客户端关联起来)client(客户端)对上报数据进行子串划分,获得前串数据和后串数据。然后对前串数据和后串数据分别进行加扰,将加扰后生成的隐私数据报给服务器。
服务器对隐私数据进行聚合和降噪处理,获得终端设备上报的数据,并对上报数据进行聚合汇总,生成各种报表,例如,某软件的使用率、人均使用次数、留存率、时间段分布和使用次数分布等信息。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1B为本申请实施例一提供的隐私数据的上报方法的流程图。如图1B所示,本实施例的方法可以包括:
S101、终端设备获取上报数据。
本实施例的终端设备又称之为用户设备(user equipment,UE)、移动台(mobilestation,MS)、移动终端(mobile terminal,MT)等,是一种向用户提供语音/数据连通性的设备,例如,具有无线连接功能的手持式设备、车载设备等。目前,一些终端设备的举例为:手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobileinternet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端设备等。
本实施例终端设备侧的步骤具体由终端设备中的客户端实现,该客户端为终端设备中的一个软件模块,例如微信、应用商场等客户端。本实施例由执行主体为终端设备为例进行说明。
本实施例的终端设备根据用户体验计划或其他的AI(Artificial Intelligence,人工智能)服务,将终端设备中保存的数据作为上报数据,或者从其他设备上获取上报数据。
本实施例终端设备可以根据预设的上报规则获取上报数据,其中预设的上报规则可以是终端设备预先匹配的。例如,华为手机出厂时,可以设定每隔一周上报一次终端设备上安装的软件名称,这样每隔一周终端设备将终端设备上安装的所有软件的软件名称作为上报数据上报给服务器。
可选的,终端设备还可以在接收到上报请求时,上报数据,例如,终端设备接收到服务器发送的上报请求,该上报请求中携带需要上报的数据信息,终端设备获取上报请求所指示的数据信息对应的数据作为上报数据。
本实施例的上报数据可以是任意字符,比如,数字、字母、标点或其他不可打印字符。其中汉字可以按照其二进制编码进行上报。
为了提高上报数据的有效性,则终端设备获得上报数据后,对上报数据进行预处理,例如,过滤点字符串太长的数据、删除不合格的数据等。处理流程为:终端设备调用差分隐私算法API(Application Programming Interface,应用程序编程接口),指定数据的预处理方法和参数等。
图1A所示,本实施例的终端设备中初始化的隐私参数可以是终端设备预先配置的,也可以是服务器下发的。
隐私参数包括差分隐私算法及参数。具体处理流程为:终端设备在处理差分隐私事件时,传入使用的差分隐私算法及参数,接着,终端设备的差分隐私算法初始化一个DP实例,保存该差分隐私算法及参数。
S102、终端设备根据预设步长,将所述上报数据进行划分成前串数据和后串数据,其中,所述前串数据的长度为所述预设步长的整数倍,所述后串数据为所述上报数据除所述前串数据外的数据。
本步骤中,终端设备根据预设步长,将上报数据划分长两个部分,分别为前串数据和后串数据,例如,预设步长为2,根据预设步长2将上报数据“sun”划分成前串数据“su”和后串数据“n”。
比如上述数据长度是7,step是2,那么划分前串数据和后串数据有3中方式:
前串长度为2,后串长度为5;
前串长度为4,后串长度为3;
前串长度为6,后串长度为1。
其中前串数据的长度为预设步长的整数倍,这样服务器可以在后续前串数据的匹配过程中,可以以步长为单位增加前串数据的搜索长度,提高搜索效率。后串数据的长度为上报数据中除前串数据外剩余的数据,且后串数据不为空,这样前串数据和后串数据形成不重叠的互补的两部分,服务器在后串数据的匹配过程中,无需以步长为匹配单位进行匹配,可以实现对不同长度后串数据的匹配,进而提高了后串数据的匹配的准确性。
同时,本实施例将上报数据划分两部分,划分过程简单,加扰工作量少,且后续服务器进行匹配时,匹配的次数少,进而提高了数据匹配效率。
本实施例中,上报的两个部分之间是有关联的,不需要计算不同字符串之间的条件概率,进而简化了匹配过程,提高了匹配效果。
本实施例对预设步长的设定根据实际需要确定。例如,如果准确率要求较高,那么步长应取较大的值,这样子串划分的选择较少,每一种子串占比较高,精确度得到保证。如果系统对运行负载比较敏感,那么步长可以设置为较小的值,这样每一种子串的搜索空间较小,运行开销较小。
可选的,Step=min(ln(期望CPU占有率x100),ln(1.0/期望精度))。
S103、终端设备根据预设的加扰算法对所述前串数据和所述后串数据分别进行加扰,生成隐私数据。
本步骤中,终端设备对上述生成的前串数据和后串数据分别进行加扰,生成前串数据对应的前串加扰数据和后串数据对应的后串加扰数据,将此时的前串加扰数据和后串加扰数据包括在一条隐私数据中。
例如,前串数据为“su”,预设的加扰算法为本地差分隐私算法,终端设备首先计算该前串数据的hash值,并设置bloomfiler(比如512bit长的向量)。然后以预设的加扰比例f将bloomfilter中的每一个“1”比特翻转为“0”比特,以加扰比例f将bloomfilter中的每一个“0”比特翻转为“1”,生成前串数据“su”的前串加扰数据。同理可以生成,后串数据“n”的后串加扰数据。
可选的,上述预设的加扰算法可以是终端设备配置的,例如,终端设备出厂时设置的。可选的,上述预设的加扰算法还可以是终端设备从网络端获取的,例如服务器下发的。可选的,上述预设的加扰算法还可以是终端设备通过其他方式获取的,本实施例对预设的加扰算法的获取方式不做限制。
本实施例中,一条上报数据对应一条隐私数据。
可选的,隐私数据还可以包括预设步长等。
S104、终端设备将所述隐私数据发送给服务器。
终端设备,根据上述步骤生成上报数据的隐私数据之后,将隐私数据发送给服务器,例如,通过Hiview通道,将上传给隐私数据发送给服务器。
S105、服务器接收多个终端设备发送的隐私数据。
本实施例的服务器可以是本地服务器,也可以是云端服务器。
服务器与多个终端设备通信连接,可以接收多个终端设备发送的隐私数据。
可选的,服务器接收到多个终端设备发送的隐私数据后,对各隐私数据进行分拣,并调用掩码等算法,对隐私数据中的个人数据(如IP地址)进行掩码处理,保证数据是匿名化的。
可选的,还可以根据终端设备的型号、版本、隐私数据的ID、统计周期等维度,对隐私数据进行分拣和汇总,便于后续进行数据查找。
S106、服务器确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数。
本步骤中,服务器根据预设步长,确定N个不同的第一前串数据,每个第一前串数据的长度等于预设步长的整数倍。例如预设步长为2,则服务器可以确定N个第一前串数据分别为:aa、ab…….zz,或者,服务器可以确定N个第一前串数据分别为:aaaa、aaab…….zzzz。
可选的,假设步长为2,当第一前串数据为两个字母组成时,则N可以为26*26,当第一前串数据为一个字母和一个数据组成时,则N可以为26*10,当第一前串数据为两个数字组成时,则N可以为10*10。可选的,当第一前串数据为三个字母组成时,则N可以为26*26*26,当第一前串数据为两个字母和一个数据组成时,则N可以为26*26*10,当第一前串数据为一个字母和两个数字组成时,则N可以为26*10*10,当第一前串数据为三个数字组成时,则N可以为10*10*10。参照上述方法,可以根据第一前串数据的组成形式,确定N的最大取值,可以提高第一前串数据的匹配准确性。
S107、服务器根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据。
其中,M为大于N的整数。
本实施例中,N个不同的第一前串数据与不同长度的后串数据组成不同的数据。
例如,第一前串数据aa与长度为1的后串数据组合,生成的数据可以是aaa、aab、aac…….aaz,第一前串数据aa与长度为2的后串数据组合,生成的数据可以是aaaa、aaab、aaac…….aazz。
可选的,为了提高后串数据的匹配效率,则后串数据的长度小于或等于上述预设步长。
待服务器获得N个第一前串数据与不同长度的后串数据组成的数据后,根据多个隐私数据,从上述组成的数据中获取M个数据作为待上报数据。例如,根据多个隐私数据,确定第一前串数据的上报比例,将上报比例大于预设值的各第一前串数据对应的数据作为待上报数据,进而较少了待处理的待上报数据的数量,提高上报数据的匹配速率。
可选的,上述多个隐私数据为多个终端设备上报的各隐私数据中,与第一前串数据相关的隐私数据,例如上述多个隐私数据包括的前串数据的长度与第一前串数据的长度相同。这样,根据隐私数据确定M个待上报数据,保证了待上报数据与上报数据的相关性,进而提高了数据匹配的准确性。
S108、服务器根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
本步骤,对上述步骤确定的M个待上报数据进行再次筛选,选出满足要求的各待上报数据作为目标上报数据。
以一个待上报数据为例,获取该待上报数据的第一前串数据a和后串数据b的长度,从多个终端上报的各隐私数据中,获取前串数据的长度为b,后串数据的长度为a的隐私数据c。根据这些隐私数据c,确定该待上报数据的上报比例,若该上报数据的上报比例大于第一预设值,则将该上报数据确定为目标上报数据,即可以确定某一个终端设备上报了该上报数据。参照上述方法,从M个待上报数据进中筛选目标上报数据。
本实施例的方法,服务器首先确定第一前串数据,然后第一前串数据与不同长度的后串数据组成待上报数据,对各待上报数据进行筛选,获得目标上报数据,即本实施例从首尾两个方向进行上报数据的匹配,进而提高了上报数据的匹配速度。
本申请实施例提供的隐私数据的上报方法,终端设备获取上报数据,并根据预设步长,将上报数据进行划分成前串数据和后串数据,其中,前串数据的长度为预设步长的整数倍,后串数据为上报数据除前串数据外的数据,然后对前串数据和后串数据分别进行加扰,生成隐私数据,并将隐私数据发送给服务器。服务器接收多个终端设备发送的隐私数据,并确定N个第一前串数据,其中,第一前串数据的长度等于预设步长的整数倍,然后,根据多个隐私数据、N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据,最后,根据多个所述隐私数据,确定M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。即本实施例的方法,终端设备将上报数据划分长两部分,并分别进行加扰,生成隐私数据,服务器终端设备发送的隐私数据,从首尾两个方向进行上报数据的匹配,匹配准确性高,匹配速度快。
图2为本申请实施例二提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的隐私数据包括前串加扰数据和后串加扰数据,终端设备根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成所述隐私数据的具体过程。如图2所示,上述S103可以包括:
S201、终端设备根据预设的哈希函数,确定所述前串数据对应的第一哈希值和所述后串数据对应的第二哈希值。
本实施例中预设的哈希函数可以是预先配置在终端设备中,也可以终端设备从服务器侧获取的。
在实际应用中,终端设备根据预设的哈希函数,确定前串数据对应的哈希值,将该哈希值记为第一哈希值,根据预设的哈希函数,确定后串数据对应的哈希值。
可选的,本实施例中前串数据所使用的哈希函数与后串数据使用的哈希函数可以相同也可以不同,具体根据实际需要确定。
可选的,上述预设的哈希函数有多个,终端设备从多个预设的哈希函数中随机选择一个哈希函数用于计算前串数据的哈希值。同理,终端设备从多个预设的哈希函数中随机选择一个哈希函数用于计算后串数据的哈希值。
在本实施例一种可能的实现方式中,上述S201可以是:
S201a、终端设备根据所述预设的哈希函数,确定所述前串数据的第一哈希值。
S201b、终端设备根据所述预设的哈希函数,确定所述第一哈希值与所述后串数据组成的数据的第二哈希值。
具体是,终端设备从hash函数中任意选择一个hk,计算第一哈希值hk1和第二哈希值hk2。
例如:根据以下公式,计算第一哈希值hk1和第二哈希值hk2:
hk1=hk(p1),
hk2=hk(p2||hk1)
或者,根据以下公式,计算第一哈希值hk1和第二哈希值hk2:
hk1=hk(H(p1)),
hk2=hk(p2||H(p1))
H可以是SHA或者MD5等摘要算法。
hk是与hash函数的索引k相关的hash函数,可以是如下运算H(“k”||string)%m。
本实施例将第一哈希值与后串数据组成的数据的哈希值作为后串数据对应的第二哈希值,进而将前串数据与后串数据进行关联,这样在服务器进行数据匹配时,不需要从每个隐私数据中计算条件概率,进而简化了匹配过程,降低了匹配复杂性。
S202、终端设备根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据。
具体的,根据上述步骤,获得前串数据对应的第一哈希值和后串数据对应的第二哈希值后,终端设备根据预设的加扰算法,分别对前串数据对应的第一哈希值进行加扰,生成前串加扰数据,以及对后串数据对应的第二哈希值进行加扰,生成后串加扰数据。
例如,预设的加扰算法为本地差分隐私算法,前串数据对应的第一哈希值为45,设置初始的bloomfiler向量,例如为0元素和1元素组成长为512bit的向量。首先将bloomfiler向量中第45bit位设置为1,或者翻转。然后以预设的概率q1将bloomfilter向量中的每一个“1”比特翻转为“0”比特,再以预设的q2概率将bloomfilter向量中的每一个“0”比特翻转为“1”,生成第一哈希值45对应的前串加扰数据。同理可以生成,第二哈希值对应的的后串加扰数据。
可选的,本实施例还可以使用其他的加扰算法,生成第一哈希值对应的前串加扰数据和第二哈希值对应的后串加扰数据,本实施例对此不做限制。
终端设备将上述获得前串加扰数据和后串加扰数据作为上报数据的隐私数据,发送给服务器,实现隐私数据的上报。
可选的,本实施例的隐私数据还包括上述预设的哈希函数,即生成前串数据对应的第一哈希值所使用的哈希函数,以及生成后串数据对应的第二哈希值所使用的哈希函数。
可选的,本实施例的隐私数据还可以包括前串数据的长度和后串数据的长度,以使服务器根据前串数据的长度和后串数据的长度确定候选数据集时,降低盲目性,提高候选数据集的选取准确性,进一步提高数据匹配的速度和准确性。
本申请实施例提供的隐私数据的上报方法,通过根据预设的哈希函数,确定所述前串数据对应的第一哈希值和所述后串数据对应的第二哈希值,根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据,实现前串数据与后串数据的关联,这样服务器在进行数据匹配时,不需要从每个隐私数据中计算条件概率,进而简化了匹配过程,降低了匹配复杂性。
图3为本申请实施例三提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的是若预设的加扰算法为Bloom filter方法,则终端设备根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据的具体过程。如图3所示,上述S201具体可以包括:
S301、终端设备根据所述第一哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第一行向量,所述第一行向量的第k1位的元素为1,其余元素为0,所述k1的值等于所述第一哈希值,所述m为正整数。
S302、终端设备根据所述第二哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第二行向量,所述第二行向量的第k2位的元素为1,其余元素为0,所述k2的值等于所述第二哈希值。
S303、终端设备根据预设的加扰比例,生成元素个数为m的第三行向量,所述第三行向量中元素1的比例等于预设的加扰比例,所述第三行向量中元素1和元素0为随机均匀分布。
S304、终端设备根据所述第一行向量和所述第三行向量,确定所述前串加扰数据,根据所述第二行向量和所述第三行向量,确定所述后串加扰数据。
本实施例的终端设备使用的预设的加扰算法为Bloom filter方法,在加扰之前,终端设备首先参数初始化,具体是,确定预设的布隆过滤器向量(即Bloom filter向量)的元素个数m和预设的加扰比例f。其中,上述m和f可以是终端设备配置的,也可以是服务器下发的,其中m大于或等于第一哈希值和第二哈希值中最大的一个。
可选的,上述加扰比例f可以是直接获得的,也可以是通过以下公式间接确定的:
f=1/(1+exp(ε/4)),
其中,ε是预设的差分隐私预算,即终端设备直接获得的是ε,再根据ε计算加扰比例f,而ε可以是终端设备配置的,也可以是服务器下发的。
待参数初始化完成后,根据上述生成的前串数据生成的第一哈希函数以及预设的Bloom filter向量的元素个数m,生成前串数据对应的第一行向量,以及根据上述生成的后串数据生成的第二哈希函数以及预设的Bloom filter向量的元素个数m,生成后串数据对应的第二行向量。
具体是,生成一个元素个数为m的0向量X0,即向量X0中所有元素均为0,接着,将向量X0中第k1位的元素从0翻转为1,生成第一行向量X1,该k1的值等于第一哈希值,例如第一哈希值为4,则将向量X0中第4位翻转为1,生成第一行向量X1=[0,0,0,1,…0]。
同理,将向量X0中第k2位的元素从0翻转为1,生成第二行向量X2,该k2的值等于第二哈希值,例如第二哈希值为3,则将向量X0中第3位翻转为1,生成第二行向量X2=[0,0,1,0,…0]。
接着,根据预设的加扰比例f,生成元素个数为m且只由元素1和元素0组成的第三行向量G1,其中,该第三行向量G1中元素1的比例等于预设的加扰比例f,且第三行向量G1中元素1和元素0为随机均匀分布。
然后,根据第一行向量X1和第三行向量G1,确定前串加扰数据V1,根据第二行向量X2和第三行向量G1,确定后串加扰数据V2。例如,将第一行向量X1和第三行向量G1相加或相减后生成的向量作为前串加扰数据V1,将第二行向量X2和第三行向量G1相加或相减后生成的向量作为后串加扰数据V2。
在一种示例中,上述S304还可以是:对第一行向量X1和第三行向量G1进行异或运算,生成前串加扰数据V1,即V1=X1xorG1。
同理,对第二行向量X2和第三行向量G1进行异或运算,生成后串加扰数据V2,即V2=X2xorG1。
本实施例,由Bloom filter方法对前串数据和后串数据进行加扰,生成的前串加扰数据V1和后串加扰数据V2均为向量,这两个向量之间具有相关性,便于服务器根据这两个向量进行数据匹配,且Bloom filter方法简单,易于实现。
本申请实施例提供的隐私数据的上报方法,终端设备根据第一哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第一行向量,其中第一行向量的第k1位的元素为1,其余元素为0,k1的值等于第一哈希值,并根据第二哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第二行向量,其中第二行向量的第k2位的元素为1,其余元素为0,k2的值等于第二哈希值,然后,根据预设的加扰比例,生成元素个数为m的第三行向量,其中第三行向量中元素1的比例等于预设的加扰比例,第三行向量中元素1和元素0为随机均匀分布,根据第一行向量和第三行向量,确定前串加扰数据,根据第二行向量和第三行向量,确定后串加扰数据,进而实现对前串加扰数据和后串加扰数据的准确确定,且整个加扰过程简单,易于实行。
图4为本申请实施例四提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的是服务器接收多个终端设备发送的隐私数据后进行确定各隐私数据对应的上报数据的具体过程。如图5所示,本实施例的方法可以包括:
S401、服务器接收多个终端设备发送的隐私数据。
S402、服务器确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数。
可选的,本实施例的预设步长可以是服务器中预先配置的,此时,上述步骤中终端设备的预设步长可以为服务器下发的。
可选的,上述预设步长还可以是隐私数据中携带的。
在前串数据的匹配过程中,根据预设步长step的长度,得到所有的长度为(s1+step)的可能第一前串数据Pstr,其中s1为前一轮循环中第一前串数据的长度。在第一轮循环中s1为0。
若上报数据为字母组合,则生成Pstr的方式是:前串集合C(Pstr)中的字符串||step长度的任意字母组合。
例如,预设步长为2,第一轮循环生成的N个第一前串数据为Pstr=aa,ab,ac,…su,…sw,…zz。
S403、服务器根据多个所述隐私数据,确定每个第一前串数据的上报比例。
S404、服务器将上报比例大于第二预设值的第一前串数据作为第二前串数据,共获得P个第二前串数据。
S405、服务器将所有第二前串数据与不同长度的后串数据组成所述M个待上报数据。
上述S403至S405为上述S107的一种具体实现方式。
具体的,根据上述步骤生成N个第一前串数据后,根据隐私数据,确定每一个第一前串数据的上报比例。然后,将上报比例大于第二预设值的第一前串数据作为第二前串数据,进而获得P个第二前串数据。即本实施例,通过计算每个第一前串数据的上报比例,实现对第一前串数据的筛选,从N个第一前串数据中筛选出P个上报比例大于第二预设值的第二前串数据,过滤掉不满足要求的第一前串数据,进而减少了用于匹配的数据数量,提高了数据匹配的准确性和速度。
待获得P个第二前串数据后,在每个第二前串数据的尾部增加不同长度的后串数据组成不同的待上报数据,进而获得M个待上报数据。
例如,对于第二字符串su,在其尾部增加长度为1的后串数据,生成sua、sub…..suz长度为3的M1个待上报数据,在其尾部增加长度为2的后串数据,生成suaa、suab…..suzz长度为4的M2个待上报数据,在其尾部增加长度为3的后串数据,生成suaaa、suaab…..suzzz长度为5的M3个待上报数据,依次类推,在第二字符串su的其尾部增加不同长度的后串数据,生成M个待上报数据。
其中,本实施例对根据多个所述隐私数据,确定每个第一前串数据的上报比例的具体方式不做限制。在一种示例中,服务器可以获取隐私数据中前串数据的长度与第一前串数据的长度相同的所有隐私数据C1,将所有隐私数据C1的数目与服务器接收到的所有隐私数据的比值作为该第一前串数据的上报比例。在另一种示例中,获取所有隐私数据C1中携带的前串加扰数据,根据这些前串加扰数据,确定该第一前串数据的上报比例。例如,将这些前串加扰数据相交或相减生成一个行向量,获取该行向量中第一前串数据的哈希值所对应的元素值,将该元素值与这些前串加扰数据的数量的比值作为该第一前串数据的上报比例。可选的,本实施例还可以根据其他的方法,基于多个所述隐私数据,确定该第一前串数据的上报比例。
S406、服务器根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
具体的,上述步骤获得M个待上报数据之后,服务器根据终端设备发送的多个隐私数据,确定M个待上报数据中每个待上报数据的上报比例,并将M个待上报数据中上报比例大于第一预设值的待上报数据作为终端设备实际上报的目标上报数据。
其中,本实施例对服务器根据多个所述隐私数据,确定所述M个待上报数据的上报比例的具体方式不做限制。在一种示例中,服务器可以获取隐私数据中前串数据的长度与第一前串数据的长度相同,后串数据的长度与待上报数据中后串数据的长度相同的所有隐私数据C2,将这些所有隐私数据C2的数目与服务器接收到的所有隐私数据的比值作为该待上报数据的上报比例。在另一种示例中,获取上述所有隐私数据C2中携带的前串加扰数据,根据这些前串加扰数据(或后串加扰数据),确定该待上报数据的上报比例。例如,将这些前串加扰数据(或后串加扰数据)相交或相减生成一个行向量,获取该行向量中待上报数据的哈希值所对应的元素值,将该元素值与这些前串加扰数据(或后串加扰数据)的数量的比值作为该待上报数据的上报比例。可选的,本实施例还可以根据其他的方法,基于多个所述隐私数据,确定该待上报数据的上报比例。
S407、若所述第二前串数据的长度小于预设长度值,则服务器根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的待上报数据的上报比例,从P个所述第二前串数据中确定H个第三前串数据。
S408、服务器在所述H个第三前串数据的尾部分别增加所述预设步长的不同数据,获得N个第四前串数据,将所述N个第四前串数据更新为所述N个第一前串数据,返回执行上述S402。
在本轮匹配过程中,服务器确定M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据之后,若循环未结束则需要对上述P个第二前串数据进行筛选,选出符合要求的H个第三前串数据。接着,增加H个第三前串数据的长度生成多个第四前串数据,使用这些第四前串数据更新上述S402中的第一前串数据,执行下一轮的匹配,重复上述步骤,直到第二前串数据的长度大于或等于预设长度值为止。
根据上述步骤,服务器通过不断增加第一前串数据的长度的方式进行匹配,提高了数据处理效率。例如,12字符的英文字母,搜索空间为(26^12),采用本申请的方法,搜索空间(假设step=2)为6x(26^2)。
在实际执行时,服务器判断本轮的第二前串数据的长度是否小于预设长度值。若是,则服务器根据每个第二前串数据的上报比例和每个第二前串数据对应的待上报数据的上报比例,从P个所述第二前串数据中确定H个第三前串数据。针对每个第三前串数据,在该第三前串数据的尾部增加预设步长(例如2)的不同数据,形成多个第四前串数据。根据该方法,H个第三前串数据可以生成N个第四前串数据,接着,将该此时的N个第四前串数据作为下一轮的N个第一前串数据。
需要说明的是,每一轮的第一前串数据的数量可以相同也可以不同,即在每一轮循环中N可以不变也可以变化。
为了进一步阐释本申请的技术方案,特此举例说明:
假设预设步长为2,预设长度值为6,首先,服务器确定N个第一前串数据,第一轮Pstr=aa,ab,ac,…su,…sw,zz。接着,计算每一个第一前串数据的上报比例,将上报比例大于第二预设值的第一前串数据作为第二前串数据,获得P个第二前串数据,例如,第一轮获得两个第二前串数据为su、sw。将第二前串数据su和sw与不同长度的后串数据组成M个待上报数据,为Nstr=suaa,suab,…summ,…suzz,swaa,swab,…swmm,…swzz。计算M个待上报数据中每个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。然后,服务器判断第二前串数据su、sw的长度小于预设长度值6,则根据第二前串数据su、sw的上报比例和第二前串数据su、sw对应的待上报数据的上报比例,从su、sw第二前串数据中确定第三前串数据,例如,确定的第三前串数据为su。接着,在第三前串数据su的尾部分别增加预设步长的不同数据,获得N个第四前串数据Pstr=suaa,suab,suac,…summ,sumn,…suzz,将第一前串数据更新为Pstr=suaa,suab,suac,…summ,sumn,…suzz,进而第一轮匹配,返回执行上述步骤,直到第二前串数据的长度大于或等于预设长度值6为止。
本实施例的服务器从首尾两个方向进行上报数据的匹配,可以快速找到上报数据,并且在匹配时,采用逐渐增加前串数据长度的方式进行匹配,处理效率提高。
本实施例对上述服务器根据每个第二前串数据的上报比例和每个第二前串数据对应的待上报数据的上报比例,从P个第二前串数据中确定H个第三前串数据的具体方式不做限制。例如,针对一个第二前串数据,获取该第二前串数据对应的M个待上报数据的上报比值中最大值,若该第二前串数据的上报比例大于或等于该最大值,则可以将第二前串数据作为第三前串数据。或者,获取该第二前串数据对应的M个待上报数据的上报比值之和,若该第二前串数据的上报比例与上述之和的比值大于或等于1,则可以将第二前串数据作为第三前串数据。
在本实施例的一种可能的实现方式中,上述S407可以包括:
S407a、服务器根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的所有待上报数据的上报比例,确定每个所述第二前串数据的剩余上报比例。
本实施例对服务器根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的所有待上报数据的上报比例,确定每个所述第二前串数据的剩余上报比例的具体方法不做限制。例如,对于一个第二前串数据,获取该第二前串数据对应的所有待上报数据的上报比例中的最大值,将该第二前串数据的上报比例与该最大值的差值作为该第二前串数据的剩余上报比例。可选的,获取该第二前串数据对应的所有待上报数据的上报比例的加权值,将该第二前串数据的上报比例与上述加权值的差值作为该第二前串数据的剩余上报比例。
在本实施例的一种可能的实现方式中,S407a可以包括:针对每个第二前串数据,获取该所述第二前串数据对应的所有待上报数据的上报比例的和值;将该第二前串数据的上报比例与所述和值的差值,确定为该第二前串数据的剩余上报比例。
具体的,针对一个第二前串数据,该第二前串数据的上报比例PstrR1,该第二前串数据对应的所有待上报数据的上报比例和值为∑NstrRw1,该第二前串数据的剩余上报比例为PstrR1-∑NstrRw1。
S407b、服务器将剩余上报比例大于等于第三预设值的第二前串数据确定为第三前串数据,获得所述H个第三前串数据。
具体是,针对每一个第二前串数据,服务器根据该第二前串数据的上报比例和该第二前串数据对应的所有待上报数据的上报比例,确定该第二前串数据的剩余上报比例。若该第二前串数据的剩余上报比例大于或等于第三预设值,则说明该第二前串数据与多个后串数据匹配上,则保留该第二前串数据,将该第二前串数据确定为第三前串数据。若该第二前串数据的剩余上报比例小于第三预设值,则说明该第二前串数据与多个后串数据匹配不上,则删除该第二前串数据,这样可以实现对第二前串数据的准确筛选,进一步提高了数据匹配的准确性和匹配速率。
本申请实施例提供的隐私数据的上报方法,服务器接收多个终端设备发送的隐私数据,确定N个第一前串数据,并根据多个所述隐私数据,确定每个第一前串数据的上报比例,将上报比例大于第二预设值的第一前串数据作为第二前串数据,并将所有第二前串数据与不同长度的后串数据组成所述M个待上报数据。若第二前串数据的长度小于预设长度值,则根据每个第二前串数据的上报比例和每个第二前串数据对应的待上报数据的上报比例,从P个第二前串数据中确定H个第三前串数据,并在H个第三前串数据的尾部分别增加预设步长的不同数据,获得N个第四前串数据,将N个第四前串数据更新为N个第一前串数据,返回执行上述步骤,直到第二前串数据的长度大于或等于预设长度值为止。即本实施例,服务器从首尾两个方向进行上报数据的匹配,可以快速找到上报数据,并且在匹配时,采用逐渐增加前串数据长度的方式进行匹配,处理效率提高。
可选的,本实施例的隐私数据中包括前串数据的长度、后串数据的长度、前串加扰数据、后串加扰数据,以及前串加扰数据和后串加扰数据对应的哈希函数。
图5为本申请实施例五提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的是服务器根据多个所述隐私数据,确定每个第一前串数据的上报比例的具体过程。如图5所示,上述S403可以包括:
S501、服务器根据所述第一前串数据的长度,从多个所述隐私数据的Q1个隐私数据中获取Q1个前串加扰数据,以及Q1个前串加扰数据对应的哈希函数,其中,所述Q1个隐私数据中的前串数据的长度等于所述第一前串数据的长度。
本步骤,目的在于获取与第一前串数据相关的隐私数据,其中隐私数据包括上报数据对应的前串数据的长度、后串数据的长度,以及将前串数据加扰成前串加扰数据和将后串数据加扰成后串加扰数据所使用的哈希函数。因此,可以以第一前串数据的长度为参照,来确定与第一前串数据相关的隐私数据。
例如,第一前串数据的长度为4,则服务器从多个终端设备发送的多个隐私数据中,获取所有隐私数据中前串数据的长度也为4的隐私数据,这样可以获得Q1个隐私数据。
获得该Q1个隐私数据后,获取该Q1个隐私数据中包括的前串加扰数据和哈希函数。
S502、服务器根据Q1个所述前串加扰数据和Q1个所述前串加扰数据对应的哈希函数,确定第二矩阵,其中,所述第二矩阵的行数等于Q1个哈希函数中不同哈希函数的个数Q2,每一行与所述Q2个哈希函数一一对应。
由上述获得一条前串加扰数据对应一个哈希函数,不同的终端设备可能选择相同的哈希函数,因此,上述Q1个哈希函数中不同的哈希函数个数为Q2,其中Q2小于或等于Q1。
这样可以将同一个哈希函数对应的前串加扰数据进行相应的运算(例如加法运算或减法运算等),生成第二矩阵的一行的方式,生成一个具有Q2行的第二矩阵。
S503、服务器针对每个第一前串数据,根据Q2个不同的哈希函数,确定该第一前串数据的Q2个哈希值,并根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例。
由上述可知,对应本轮第一前串数据的长度,可以获得Q2个不同的哈希函数,这样,对于每一个第一前串数据,可以获得每个第一前串数据在Q2个不同的哈希函数下的Q2个哈希值。
例如,对于第一前串数据1,将第一前串数据1带入Q2个不同的哈希函数中,获得Q2个哈希值。接着,根据该Q2个哈希值和上述第二矩阵,确定Q2个加噪比例。
本实施例对根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例的具体方式不做限制。例如,以一个哈希值为例,在该第二矩阵中查找该哈希值所对应的元素。根据该元素,确定该哈希值对应的加噪比例,例如,将该元素与Q2的比值作为该哈希值对应的加噪比例。
在本实施例的一种实现方式中,上述S503可以包括:
S503a、服务器针对每个哈希值,从所述第二矩阵中获取该哈希值k3有关的哈希函数对应的行元素,从所述行元数中获取第k3位的元素,该哈希值k3有关的哈希函数是指根据第一前串数据得到该哈希值k3所采用的哈希函数。
S503b、服务器从Q1个前串加扰数据中获取该哈希值k3有关的哈希函数所对应的前串加扰数据的数目Q3,。
S503c、服务器根据所述元素和所述Q3,确定该哈希值k3对应的加噪比例。
本实施例中,获取每个第一前串数据的每个哈希值所对应的加噪比例的方法相同,本实施例以一个第一前串数据对应的一个哈希值k3为例进行举例说明如下:
首先,获取根据第一前串数据得到该哈希值k3所采用的哈希函数a,从第二矩阵中获取哈希函数a对应的行元素。接着,从该行元素中,获取第k3位的元素(例如为元素x1k)。
然后,从Q1个前串加扰数据中获取哈希函数a所对应的前串加扰数据的数目Q3,其中Q3小于等于所述Q1。最后,上述元素x1k和前串加扰数据的数目Q3,确定该哈希值k3对应的加噪比例,例如将x1k/Q3作为该哈希值k3对应的加噪比例PKstr。
参照上述步骤,可以获得每个第一前串数据的Q2个加噪比例。
S504、服务器根据Q2个加噪比例,确定该第一前串数据的上报比例。
本步骤,对根据Q2个加噪比例,确定该第一前串数据的上报比例的方式不做限制。例如,可以直接将Q2个加噪比例中的最小值作为该第一前串数据的上报比例,或者,将Q2个加噪比例的中值作为该第一前串数据的上报比例。
在本实施例的一种实现方式中,上述S504可以是:
S504a、根据Q2个加噪比例和第一噪声幅度,确定该第一前串数据的上报比例。
例如,确定Q2个加噪比例中每个加噪比例和第一噪声幅度的差值,将最小差值作为该第一前串数据的上报比例。
可选的,确定Q2个加噪比例中每个加噪比例与第一噪声幅度的差值;将Q2个差值与第二噪声幅度的比值中的最小值作为该第一前串数据的上报比例,其中所述第二噪声幅度为常数与两倍第一噪声幅度的差值。例如根据公式PKstrR=min[(PKstri-f)/(1-2f)],其中,PKstri为该第一前串数据关于哈希函数i的加噪比例,f为第一噪声幅度,1-2f为第二噪声幅度。
本申请实施例提供的隐私数据的上报方法,服务器通过根据第一前串数据的长度,从多个隐私数据的Q1个隐私数据中获取Q1个前串加扰数据,以及Q1个前串加扰数据对应的哈希函数,其中,所述Q1个隐私数据中的前串数据的长度等于第一前串数据的长度,并根据Q1个前串加扰数据和Q1个前串加扰数据对应的哈希函数,确定第二矩阵,接着,针对每个第一前串数据,根据Q2个不同的哈希函数,确定该第一前串数据的Q2个哈希值,并根据Q2个哈希值和第二矩阵,确定Q2个加噪比例,最后,根据Q2个加噪比例,确定该第一前串数据的上报比例,实现对第一前串数据的上报比例的准确获得。
图6为本申请实施例六提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的若前串加扰数据为行向量,则根据Q1个前串加扰数据和Q1个前串加扰数据对应的哈希函数确定第二矩阵的具体过程。如图6所示,上述S502可以包括:
S601、服务器从Q1个所述前串加扰数据中,确定Q2组前串加扰数据,其中,每组前串加扰数据对应的哈希函数相同。
S602、服务器将Q2组前串加扰数据中每组前串加扰数据按位累加,共获得Q2个行向量。
S603、服务器将Q2个行向量组成所述第二矩阵。
由上述终端设备对前串数据和后串数据进行加扰的实施例可以,当终端设备采用的加扰方式不同,生成的加扰数据分为行向量和数值两种。
在本实施例中,若终端设备上报的前串加扰数据为行向量,则确定第二矩阵的具体过程为,首先对Q1个所述前串加扰数据进行分组,将由同一个哈希函数转换而成的前串加扰数据归为一组,这样可以获得Q2组前串加扰数据,其中Q2小于或等于Q1。
接着,将同一组内的前串加扰数据按位累加,例如,某组包括两个前串加扰数据,分别为向量v1和向量v2,其中向量v1和向量v2都是1024bit位的向量,向量v1和向量v2累积为,将向量v1的第1位与向量v2的第1位相加,将向量v1的第2位与向量v2的第2位相加。如此重复1024遍,得到一个1024bit的向量。这样对于Q2组前串加扰数据,可以获得Q2个行向量。
将Q2个行向量组成上述第二矩阵,例如,按照时间顺序,将Q2个行向量进行排列,组成上述第二矩阵。
本实施例的第二矩阵是由终端设备上报的Q1个前串加扰数据生成的,这样使得第二矩阵与终端设备的上报数据的前串数据具有相关性,基于该第二矩阵查找终端设备的上报数据,可以提高查找的准确性。
本申请实施例提供的隐私数据的上报方法,若前串加扰数据为行向量,则服务器通过从Q1个所述前串加扰数据中,确定Q2组前串加扰数据,其中,每组前串加扰数据对应的哈希函数相同,将Q2组前串加扰数据中每组前串加扰数据按位累加,共获得Q2个行向量,将Q2个行向量组成所述第二矩阵,实现对第二矩阵的准确建立,且建立的第二矩阵与终端设备的上报数据的前串数据具有相关性,基于该第二矩阵查找终端设备的上报数据,可以提高查找的准确性。
图7为本申请实施例七提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的是服务器根据多个所述隐私数据,确定所述M个待上报数据的上报比例的具体过程。如图7所示,上述S406可以包括:
S701、服务器从所述M个待上报数据中,确定Q4组待上报数据,其中每组待上报数据中的前串数据的长度相同、后串数据的长度相同。
本实施例涉及的是后串数据的匹配过程,具体是,M个待上报数据中查找终端设备发送的上报数据,其具体过程与上述前串数据的匹配过程类似,可以上述实施例的描述。
首先,对M个待上报数据进行分组,将前串数据的长度相同,并后串数据的长度相同的待上报数据归到一个组中,这样可以获得Q4组待上报数据。
S702、服务器针对每组待上报数据,根据该组待上报数据中的前串数据和后串数据的长度,从多个所述隐私数据的Q5个第二隐私数据中获取Q5个后串加扰数据,以及Q5个后串加扰数据对应的哈希函数,其中,所述Q5个第二隐私数据中的前串数据的长度等于该组待上报数据中的前串数据的长度,后串数据的长度等于该组待上报数据中的后串数据的长度。
本实施例中每组待上报数据的操作相同,以一组待上报数据为例进行说明。
例如,该组待上报数据的前串数据的长度为2,后串数据为3,则从多个隐私数据中获取前串数据的长度为2,后串数据的长度为3的隐私数据,将这些隐私数据记为第二隐私数据,这样,可以获得该组待上报数据对应Q5个第二隐私数据。
接着,获取Q5个第二隐私数据中每个第二隐私数据包括的后串加扰数据,和该后串加扰数据对应的哈希函数。
S703、服务器根据Q5个所述后串加扰数据和Q5个所述后串加扰数据对应的哈希函数,确定第四矩阵,所述第四矩阵的行数等于Q5个哈希函数中不同哈希函数的个数Q6,每一行与所述Q6个哈希函数一一对应。
该第四矩阵的确定过程与上述第二矩阵的确定过程相同,参照上述实施例的描述,在此不再赘述。
S704、服务器针对该组待上报数据中的每一个待上报数据,根据Q6个不同的哈希函数,确定该待上报数据的Q6个哈希值,并根据Q6个哈希值和所述第四矩阵,确定Q6个加噪比例。
本步骤与上述S603确定Q2个加噪比例的过程一致,参照上述实施例的描述,在此不再赘述。
在本实施例的一种可能的实现方式中,上述S904中服务器根据Q6个哈希值和所述第四矩阵,确定Q6个加噪比例,可以包括:
S704a、服务器针对每个哈希值,从所述第四矩阵中获取该哈希值k4有关的哈希函数对应的行元素,从所述行元数中获取第k4位的元素,该哈希值k4有关的哈希函数是指根据待上报数据得到该哈希值k4所采用的哈希函数。
S704b、服务器从Q5个后串加扰数据中获取该哈希值k4有关的哈希函数所对应的后串加扰数据的数目Q7。
S704c、服务器根据所述元素和所述Q7,确定该哈希值k4对应的加噪比例。
本实施例的S704a至S704c与上述S503a至S503c的过程相同,参照上述实施例的描述,在此不再赘述。
S705、服务器根据Q6个加噪比例,确定该待上报数据的上报比例。
本步骤,对根据Q6个加噪比例,确定该待上报数据的上报比例的方式不做限制。例如,可以直接将Q6个加噪比例中的最小值作为该待上报数据的上报比例,或者,将Q6个加噪比例的中值作为该待上报数据的上报比例。
在本实施例的一种可能的实现方式中,上述S905可以包括:
S705a、服务器根据Q6个加噪比例和第一噪声幅度,确定该待上报数据的上报比例。
例如,确定Q6个加噪比例中每个加噪比例和第一噪声幅度的差值,将最小差值作为该待上报数据的上报比例。
可选的,确定Q6个加噪比例中每个加噪比例与第一噪声幅度的差值;将Q6个差值与第二噪声幅度的比值中的最小值作为该待上报数据的上报比例,其中所述第二噪声幅度为常数与两倍第一噪声幅度的差值。
例如,根据公式NKstrR=min[(NKstri-f)/(1-2f)],其中,NKstri为该待上报数据关于哈希函数i的加噪比例,f为第一噪声幅度,1-2f为第二噪声幅度。
本实施例中该待上报数据的加噪比例为该待上报数据中后串数据的加噪比例。
本申请实施例提供的隐私数据的上报方法,服务器通过从M个待上报数据中确定Q4组待上报数据,并针对每组待上报数据,根据该组待上报数据中的前串数据和后串数据的长度,从多个所述隐私数据的Q5个第二隐私数据中获取Q5个后串加扰数据,以及Q5个后串加扰数据对应的哈希函数。接着,根据Q5个后串加扰数据和Q5个后串加扰数据对应的哈希函数,确定第四矩阵。最后,针对该组待上报数据中的每一个待上报数据,根据Q6个不同的哈希函数,确定该待上报数据的Q6个哈希值,并根据Q6个哈希值和第四矩阵,确定Q6个加噪比例,并根据Q6个加噪比例,确定该待上报数据的上报比例,进而实现对待上报数据的上报比例的准确获得。同时,本实施例基于终端设备上报的隐私数据确定待上报数据的上报比例,使得待上报数据的上报比例与终端设备上报的隐私数据相关,这样基于这些待上报数据查找终端设备的上报数据,可以提高上报数据的查找准确性。
图8为本申请实施例八提供的隐私数据的上报方法的流程图,在上述实施例的基础上,本实施例涉及的是,若所述后串加扰数据为行向量,则服务器根据Q5个所述后串加扰数据和Q5个所述后串加扰数据对应的哈希函数,确定第四矩阵的具体过程。如图10所示,上述S703可以包括:
S801、服务器从Q5个所述后串加扰数据中,确定Q6组后串加扰数据,其中,每组后串加扰数据对应的哈希函数相同。
S802、服务器将Q6组后串加扰数据中每组后串加扰数据按位叠加,共获得Q6个行向量。
S803、服务器将Q6个行向量组成所述第四矩阵。
由上述终端设备对前串数据和后串数据进行加扰的实施例可以,当终端设备采用的加扰方式不同,生成的加扰数据分为行向量和数值两种。
在本实施例中,若终端设备上报的后串加扰数据为行向量,则确定第四矩阵的具体过程为,首先对Q5个后串加扰数据进行分组,将由同一个哈希函数转换而成的后串加扰数据归为一组,这样可以获得Q6组后串加扰数据,其中Q6小于或等于Q5。
接着,将同一组内的后串加扰数据按位累加,获得Q6个行向量。
将Q6个行向量组成上述第二矩阵。
本实施例确定第四矩阵的过程与上述确定第二矩阵的过程一致,参照上述实施例的描述即可。
本实施例的第四矩阵是由终端设备上报的后串加扰数据生成的,这样使得第四矩阵与终端设备的上报数据的后串数据具有相关性,基于该第四矩阵查找终端设备的上报数据,可以提高查找的准确性。
本申请实施例提供的隐私数据的上报方法,若后串加扰数据为行向量,则服务器通过从Q5个后串加扰数据中,确定Q6组前串加扰数据,其中,每组后串加扰数据对应的哈希函数相同,将Q6组后串加扰数据中每组后串加扰数据按位累加,共获得Q6个行向量,将Q6个行向量组成所述第四矩阵,实现对第四矩阵的准确建立,且建立的第四矩阵与终端设备的上报数据的后串数据具有相关性,基于该第四矩阵查找终端设备的上报数据,可以提高查找的准确性。
图9为本申请实施例一提供的隐私数据的上报装置的框架图,如图9所示,本实施例的隐私数据的上报装置100为终端设备的一部分或全部,如图9所示,包括:
获取模块110,用于获取上报数据;
划分模块120,用于根据预设步长,将所述上报数据进行划分成前串数据和后串数据,其中,所述前串数据的长度为所述预设步长的整数倍,所述后串数据为所述上报数据除所述前串数据外的数据;
加扰模块130,用于根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成隐私数据;
发送模块140,用于将所述隐私数据发送给服务器。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本申请实施例二提供的隐私数据的上报装置的框架图,在上述实施例的基础上,所述隐私数据包括前串加扰数据和后串加扰数据,所述加扰模块130包括前串加扰单元131和后串加扰单元132;
所述前串加扰单元131,用于根据预设的哈希函数,确定所述前串数据对应的第一哈希值和所述后串数据对应的第二哈希值;
所述后串加扰单元132,用于根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据。
在本实施例的一种可能的实现方式中,
所述前串加扰单元131,具体用于根据所述预设的哈希函数,确定所述前串数据的第一哈希值;
所述后串加扰单元132,具体用于根据所述预设的哈希函数,确定所述第一哈希值与所述后串数据组成的数据的第二哈希值。
在本实施例的一种可能的实现方式中,所述隐私数据还包括所述前串数据的长度、所述后串数据的长度和所述预设的哈希函数。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本申请实施例三提供的隐私数据的上报装置的框架图,在上述实施例的基础上,所述加扰模块130还包括第三向量生成单元133;
所述前串加扰单元131,具体用于根据所述第一哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第一行向量,所述第一行向量的第k1位的元素为1,其余元素为0,所述k1的值等于所述第一哈希值,所述m为正整数;
所述后串加扰单元132,具体用于根据所述第二哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第二行向量,所述第二行向量的第k2位的元素为1,其余元素为0,所述k2的值等于所述第二哈希值;
所述第三向量生成单元133,用于根据预设的加扰比例,生成元素个数为m的第三行向量,所述第三行向量中元素1的比例等于预设的加扰比例,所述第三行向量中元素1和元素0为随机均匀分布;
所述前串加扰单元131,还用于根据所述第一行向量和所述第三行向量,确定所述前串加扰数据;
所述后串加扰单元132,还用于根据所述第二行向量和所述第三行向量,确定所述后串加扰数据。
在本实施例的一种可能的实现方式中,所述前串加扰单元131,具体用于对所述第一行向量和所述第三行向量进行异或运算,生成前串加扰数据;
所述后串加扰单元132,具体用于对所述第二行向量和所述第三行向量进行异或运算,生成后串加扰数据。
在本实施例的另一种可能的实现方式中,所述后串加扰单元132,具体用于对所述第四行向量和所述第六行向量进行异或运算,生成前串加扰向量;对所述第五行向量和所述第六行向量进行异或运算,生成后串加扰向量。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图12为本申请实施例一提供的隐私数据的上报装置的框架图,本实施例的隐私数据的上报装置200为服务器的一部分或全部。如图12所示,隐私数据的上报装置200包括:
接收模块210,用于接收多个终端设备发送的隐私数据;
前串数据确定模块220,用于确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数;
待上报数据获取模块230,用于根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据;
上报比例确定模块240,用于根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本申请实施例二提供的隐私数据的上报装置的框架图,在上述实施例的基础上,如图13所示所述待上报数据获取模块230包括:前串上报比例确定单元231、待上报数据获取单元232;
所述前串上报比例确定单元231,用于根据多个所述隐私数据,确定每个第一前串数据的上报比例;
所述待上报数据获取单元232,用于将上报比例大于第二预设值的第一前串数据作为第二前串数据,共获得P个第二前串数据,;将所有第二前串数据与不同长度的后串数据组成所述M个待上报数据。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图14为本申请实施例三提供的隐私数据的上报装置的框架图,在上述实施例的基础上,如图14所示,本实施例的隐私数据的上报装置200还包括:第三前串数据确定模块250和更新模块260;
所述第三前串数据确定模块250,用于若所述第二前串数据的长度小于预设长度值,则根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的待上报数据的上报比例,从P个所述第二前串数据中确定H个第三前串数据;
所述更新模块260,用于在所述H个第三前串数据的尾部分别增加所述预设步长的不同数据,获得N个第四前串数据,将所述N个第四前串数据更新为所述N个第一前串数据。
在本实施例的一种可能的实现方式中,所述隐私数据包括前串数据的长度、后串数据的长度、前串加扰数据、后串加扰数据,以及所述前串加扰数据和所述后串加扰数据对应的哈希函数。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图15为本申请实施例四提供的隐私数据的上报装置的框架图,在上述实施例的基础上,如图15所示,本实施例的所述前串上报比例确定单元231包括:前串加扰数据获取子单元2311、第二矩阵确定子单元2312、前串加噪比例确定子单元2313、前串上报比例确定子单元2314;
所述前串加扰数据获取单元2311,用于根据所述第一前串数据的长度,从多个所述隐私数据的Q1个隐私数据中获取Q1个前串加扰数据,以及Q1个前串加扰数据对应的哈希函数,其中,所述Q1个隐私数据中的前串数据的长度等于所述第一前串数据的长度;
所述第二矩阵确定子单元2312,用于根据Q1个所述前串加扰数据和Q1个所述前串加扰数据对应的哈希函数,确定第二矩阵,其中,所述第二矩阵的行数等于Q1个哈希函数中不同哈希函数的个数Q2,每一行与所述Q2个哈希函数一一对应;
所述前串加噪比例确定子单元2313,用于针对每个第一前串数据,根据Q2个不同的哈希函数,确定该第一前串数据的Q2个哈希值,并根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例;
所述前串上报比例确定子单元2314,用于根据Q2个加噪比例,确定该第一前串数据的上报比例。
在本实施例的一种可能的实现方式中,所述前串加噪比例确定子单元2313,具体用于针对每个哈希值,从所述第二矩阵中获取该哈希值k3有关的哈希函数对应的行元素,从所述行元数中获取第k3位的元素,该哈希值k3有关的哈希函数是指根据第一前串数据得到该哈希值k3所采用的哈希函数;从Q1个前串加扰数据中获取该哈希值k3有关的哈希函数所对应的前串加扰数据的数目Q3,;根据所述元素和所述Q3,确定该哈希值k3对应的加噪比例。
在本实施例的另一种可能的实现方式中,所述前串上报比例确定子单元2313,具体用于根据Q2个加噪比例和第一噪声幅度,确定该第一前串数据的上报比例。
在本实施例的另一种可能的实现方式中,所述前串上报比例确定子单元2313,还具体用于确定Q2个加噪比例中每个加噪比例与第一噪声幅度的差值;将Q2个差值与第二噪声幅度的比值中的最小值作为该第一前串数据的上报比例,其中所述第二噪声幅度为常数与两倍第一噪声幅度的差值。
在本实施例的另一种可能的实现方式中,所述第二矩阵确定子单元2312,具体用于从Q1个所述前串加扰数据中,确定Q2组前串加扰数据,其中,每组前串加扰数据对应的哈希函数相同;将Q2组前串加扰数据中每组前串加扰数据按位累加,共获得Q2个行向量;将Q2个行向量组成所述第二矩阵。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图16为本申请实施例五提供的隐私数据的上报装置的框架图,在上述实施例的基础上,如图16所示,本实施例的所述上报比例确定模块240包括:后串加扰数据获取单元241、第四矩阵确定单元242、后串加噪比例确定单元243、后串上报比例确定单元244;
所述后串加扰数据获取单元241,用于从所述M个待上报数据中,确定Q4组待上报数据,其中每组待上报数据中的前串数据的长度相同、后串数据的长度相同;针对每组待上报数据,根据该组待上报数据中的前串数据和后串数据的长度,从多个所述隐私数据的Q5个第二隐私数据中获取Q5个后串加扰数据,以及Q5个后串加扰数据对应的哈希函数,其中,所述Q5个第二隐私数据中的前串数据的长度等于该组待上报数据中的前串数据的长度,后串数据的长度等于该组待上报数据中的后串数据的长度;
所述第四矩阵确定单元242,用于根据Q5个所述后串加扰数据和Q5个所述后串加扰数据对应的哈希函数,确定第四矩阵,所述第四矩阵的行数等于Q5个哈希函数中不同哈希函数的个数Q6,每一行与所述Q6个哈希函数一一对应;
所述后串加噪比例确定单元243,用于针对该组待上报数据中的每一个待上报数据,根据Q6个不同的哈希函数,确定该待上报数据的Q6个哈希值,并根据Q6个哈希值和所述第四矩阵,确定Q6个加噪比例;
所述后串上报比例确定单元244,用于根据Q6个加噪比例,确定该待上报数据的上报比例。
在本实施例的一种可能的实现方式中,所述后串加噪比例确定单元243,具体用于针对每个哈希值,从所述第四矩阵中获取该哈希值k4有关的哈希函数对应的行元素,从所述行元数中获取第k4位的元素,该哈希值k4有关的哈希函数是指根据待上报数据得到该哈希值k4所采用的哈希函数;从Q5个后串加扰数据中获取该哈希值k4有关的哈希函数所对应的后串加扰数据的数目Q7;根据所述元素和所述Q7,确定该哈希值k4对应的加噪比例。
在本实施例的另一种可能的实现方式中,所述后串上报比例确定单元243,具体用于根据Q6个加噪比例和第一噪声幅度,确定该待上报数据的上报比例。
在本实施例的另一种可能的实现方式中,所述后串上报比例确定单元243,具体用于确定Q6个加噪比例中每个加噪比例与第一噪声幅度的差值;将Q6个差值与第二噪声幅度的比值中的最小值作为该待上报数据的上报比例,其中所述第二噪声幅度为常数与两倍第一噪声幅度的差值。
在本实施例的另一种可能的实现方式中,所述第四矩阵确定单元242,具体用于从Q5个所述后串加扰数据中,确定Q6组后串加扰数据,其中,每组后串加扰数据对应的哈希函数相同;将Q6组后串加扰数据中每组后串加扰数据按位叠加,共获得Q6个行向量;将Q6个行向量组成所述第四矩阵。
在本实施例的另一种可能的实现方式中,所述第三前串数据确定模块250,用于根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的所有待上报数据的上报比例,确定每个所述第二前串数据的剩余上报比例;将剩余上报比例大于等于第三预设值的第二前串数据确定为第三前串数据,获得所述H个第三前串数据。
在本实施例的另一种可能的实现方式中,所述第三前串数据确定模块250,具体用于针对每个第二前串数据,获取该所述第二前串数据对应的所有待上报数据的上报比例的和值;将该第二前串数据的上报比例与所述和值的差值,确定为该第二前串数据的剩余上报比例。
在本实施例的另一种可能的实现方式中,所述后串数据的长度小于或等于所述预设步长。
本申请实施例的隐私数据的上报装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图17为本发明实施例提供的终端设备的结构示意图,如图17所示,本实施例的终端设备300包括:
存储器310,用于存储计算机程序;
处理器320,用于执行所述计算机程序,以实现上述隐私数据的上报方法,其实现原理和技术效果类似,此处不再赘述;
发送器330,用于将所述处理器320生成的隐私数据发送给服务器。
图18为本发明实施例提供的服务器的结构示意图,如图18所示,本实施例的终端设备400包括:
接收器410,用于接收终端设备发送的上报数据;
存储器420,用于存储计算机程序;
处理器430,用于执行所述计算机程序,以实现上述隐私数据的上报方法,其实现原理和技术效果类似,此处不再赘述。
进一步的,当本发明实施例中隐私数据的上报方法的至少一部分功能通过软件实现时,本发明实施例还提供一种计算机存储介质,计算机存储介质用于储存用于上述隐私数据的上报的计算机软件指令,当其在计算机上运行时,使得计算机可以执行上述方法实施例中各种可能的隐私数据的上报方法。在计算机上加载和执行所述计算机执行指令时,可全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机指令可以存储在计算机存储介质中,或者从一个计算机存储介质向另一个计算机存储介质传输,所述传输可以通过无线(例如蜂窝通信、红外、短距离无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如SSD)等。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (20)

1.一种隐私数据的上报方法,其特征在于,包括:
终端设备获取上报数据;
根据预设步长,将所述上报数据进行划分成前串数据和后串数据,其中,所述前串数据的长度为所述预设步长的整数倍,所述后串数据为所述上报数据除所述前串数据外的数据;
根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成隐私数据,将所述隐私数据发送给服务器。
2.根据权利要求1所述的方法,其特征在于,所述隐私数据包括前串加扰数据和后串加扰数据,所述根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成所述隐私数据,包括:
根据预设的哈希函数,确定所述前串数据对应的第一哈希值和所述后串数据对应的第二哈希值;
根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据。
3.根据权利要求2所述的方法,其特征在于,所述根据预设的哈希函数,确定所述前串数据对应的第一哈希值和所述后串数据对应的第二哈希值,包括:
根据所述预设的哈希函数,确定所述前串数据的第一哈希值;
根据所述预设的哈希函数,确定所述第一哈希值与所述后串数据组成的数据的第二哈希值。
4.根据权利要求2所述的方法,其特征在于,所述隐私数据还包括所述前串数据的长度、所述后串数据的长度和所述预设的哈希函数。
5.根据权利要求2-4任一项所述的方法,其特征在于,所述根据所述预设的加扰算法,生成所述第一哈希值对应的前串加扰数据和所述第二哈希值对应的后串加扰数据,包括:
根据所述第一哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第一行向量,所述第一行向量的第k1位的元素为1,其余元素为0,所述k1的值等于所述第一哈希值,所述m为正整数;
根据所述第二哈希值和预设的布隆过滤器向量的元素个数m,生成元素个数为m的第二行向量,所述第二行向量的第k2位的元素为1,其余元素为0,所述k2的值等于所述第二哈希值;
根据预设的加扰比例,生成元素个数为m的第三行向量,所述第三行向量中元素1的比例等于预设的加扰比例,所述第三行向量中元素1和元素0为随机均匀分布;
根据所述第一行向量和所述第三行向量,确定所述前串加扰数据,根据所述第二行向量和所述第三行向量,确定所述后串加扰数据。
6.一种隐私数据的上报方法,其特征在于,包括:
服务器接收多个终端设备发送的隐私数据;
确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数;
根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据;
根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
7.根据权利要求6所述的方法,其特征在于,所述根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据,包括:
根据多个所述隐私数据,确定每个第一前串数据的上报比例;
将上报比例大于第二预设值的第一前串数据作为第二前串数据,共获得P个第二前串数据,;
将所有第二前串数据与不同长度的后串数据组成所述M个待上报数据。
8.根据权利要求7所述的方法,其特征在于,还包括:
若所述第二前串数据的长度小于预设长度值,则根据每个所述第二前串数据的上报比例和每个所述第二前串数据对应的待上报数据的上报比例,从P个所述第二前串数据中确定H个第三前串数据;
在所述H个第三前串数据的尾部分别增加所述预设步长的不同数据,获得N个第四前串数据,将所述N个第四前串数据更新为所述N个第一前串数据。
9.根据权利要求6-8任一项所述的方法,其特征在于,所述隐私数据包括前串数据的长度、后串数据的长度、前串加扰数据、后串加扰数据,以及所述前串加扰数据和所述后串加扰数据对应的哈希函数。
10.根据权利要求9所述的方法,其特征在于,所述根据多个所述隐私数据,确定每个第一前串数据的上报比例,包括:
根据所述第一前串数据的长度,从多个所述隐私数据的Q1个隐私数据中获取Q1个前串加扰数据,以及Q1个前串加扰数据对应的哈希函数,其中,所述Q1个隐私数据中的前串数据的长度等于所述第一前串数据的长度;
根据Q1个所述前串加扰数据和Q1个所述前串加扰数据对应的哈希函数,确定第二矩阵,其中,所述第二矩阵的行数等于Q1个哈希函数中不同哈希函数的个数Q2,每一行与所述Q2个哈希函数一一对应;
针对每个第一前串数据,根据Q2个不同的哈希函数,确定该第一前串数据的Q2个哈希值,并根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例;
根据Q2个加噪比例,确定该第一前串数据的上报比例。
11.根据权利要求10所述的方法,其特征在于,所述根据Q2个哈希值和所述第二矩阵,确定Q2个加噪比例,包括:
针对每个哈希值,从所述第二矩阵中获取该哈希值k3有关的哈希函数对应的行元素,从所述行元数中获取第k3位的元素,该哈希值k3有关的哈希函数是指根据第一前串数据得到该哈希值k3所采用的哈希函数;
从Q1个前串加扰数据中获取该哈希值k3有关的哈希函数所对应的前串加扰数据的数目Q3;
根据所述元素和所述Q3,确定该哈希值k3对应的加噪比例。
12.根据权利要求10所述的方法,其特征在于,所述根据Q2个加噪比例,确定该第一前串数据的上报比例,包括:
根据Q2个加噪比例和第一噪声幅度,确定该第一前串数据的上报比例。
13.根据权利要求12所述的方法,其特征在于,所述根据Q2个加噪比例和第一噪声幅度,确定该第一前串数据的上报比例,包括:
确定Q2个加噪比例中每个加噪比例与第一噪声幅度的差值;
将Q2个差值与第二噪声幅度的比值中的最小值作为该第一前串数据的上报比例,其中所述第二噪声幅度为常数与两倍第一噪声幅度的差值。
14.根据权利要求10所述的方法,其特征在于,所述根据Q1个所述前串加扰数据和Q1个所述前串加扰数据对应的哈希函数,确定第二矩阵,包括:
从Q1个所述前串加扰数据中,确定Q2组前串加扰数据,其中,每组前串加扰数据对应的哈希函数相同;
将Q2组前串加扰数据中每组前串加扰数据按位累加,共获得Q2个行向量;
将Q2个行向量组成所述第二矩阵。
15.根据权利要求9所述的方法,其特征在于,所述根据多个所述隐私数据,确定所述M个待上报数据的上报比例,包括:
从所述M个待上报数据中,确定Q4组待上报数据,其中每组待上报数据中的前串数据的长度相同、后串数据的长度相同;
针对每组待上报数据,根据该组待上报数据中的前串数据和后串数据的长度,从多个所述隐私数据的Q5个第二隐私数据中获取Q5个后串加扰数据,以及Q5个后串加扰数据对应的哈希函数,其中,所述Q5个第二隐私数据中的前串数据的长度等于该组待上报数据中的前串数据的长度,后串数据的长度等于该组待上报数据中的后串数据的长度;
根据Q5个所述后串加扰数据和Q5个所述后串加扰数据对应的哈希函数,确定第四矩阵,所述第四矩阵的行数等于Q5个哈希函数中不同哈希函数的个数Q6,每一行与所述Q6个哈希函数一一对应;
针对该组待上报数据中的每一个待上报数据,根据Q6个不同的哈希函数,确定该待上报数据的Q6个哈希值,并根据Q6个哈希值和所述第四矩阵,确定Q6个加噪比例;
根据Q6个加噪比例,确定该待上报数据的上报比例。
16.一种隐私数据的上报装置,其特征在于,包括:
获取模块,用于获取上报数据;
划分模块,用于根据预设步长,将所述上报数据进行划分成前串数据和后串数据,其中,所述前串数据的长度为所述预设步长的整数倍,所述后串数据为所述上报数据除所述前串数据外的数据;
加扰模块,用于根据预设的加扰算法,对所述前串数据和所述后串数据分别进行加扰,生成隐私数据;
发送模块,用于将所述隐私数据发送给服务器。
17.一种隐私数据的上报装置,其特征在于,包括:
接收模块,用于接收多个终端设备发送的隐私数据;
前串数据确定模块,用于确定N个第一前串数据,所述第一前串数据的长度等于预设步长的整数倍,所述N为正整数;
待上报数据获取模块,用于根据多个所述隐私数据、所述N个所述第一前串数据与不同长度的后串数据,获得M个待上报数据;
上报比例确定模块,用于根据多个所述隐私数据,确定所述M个待上报数据的上报比例,并将上报比例大于第一预设值的待上报数据确定为目标上报数据。
18.一种终端设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1-5中任一项所述的隐私数据的上报方法;
发送器,用于将所述处理器生成的隐私数据发送给服务器。
19.一种服务器,其特征在于,包括:
接收器,用于接收终端设备发送的上报数据;
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求6-15中任一项所述的隐私数据的上报方法。
20.一种计算机存储介质,其特征在于,所述存储介质中存储计算机程序,所述计算机程序在执行时实现如权利要求1-15中任一项所述的隐私数据的上报方法。
CN201810845018.XA 2018-07-27 2018-07-27 隐私数据的上报方法、装置与存储介质 Active CN110768936B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201810845018.XA CN110768936B (zh) 2018-07-27 2018-07-27 隐私数据的上报方法、装置与存储介质
EP19841214.0A EP3823237B1 (en) 2018-07-27 2019-05-16 Privacy data reporting method, device, and storage medium
PCT/CN2019/087198 WO2020019833A1 (zh) 2018-07-27 2019-05-16 隐私数据的上报方法、装置与存储介质
US17/155,284 US11531778B2 (en) 2018-07-27 2021-01-22 Privacy data reporting method and apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810845018.XA CN110768936B (zh) 2018-07-27 2018-07-27 隐私数据的上报方法、装置与存储介质

Publications (2)

Publication Number Publication Date
CN110768936A true CN110768936A (zh) 2020-02-07
CN110768936B CN110768936B (zh) 2021-05-18

Family

ID=69181274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810845018.XA Active CN110768936B (zh) 2018-07-27 2018-07-27 隐私数据的上报方法、装置与存储介质

Country Status (4)

Country Link
US (1) US11531778B2 (zh)
EP (1) EP3823237B1 (zh)
CN (1) CN110768936B (zh)
WO (1) WO2020019833A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112200286A (zh) * 2020-08-25 2021-01-08 中国物品编码中心 字符串编码的方法和装置
CN116707851A (zh) * 2022-11-21 2023-09-05 荣耀终端有限公司 数据上报的方法及终端设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11271724B2 (en) * 2019-02-21 2022-03-08 Quantum Lock, Inc. One-time-pad encryption system and methods
EP3866042B1 (en) * 2020-02-11 2022-07-20 Leapyear Technologies, Inc. Adaptive differentially private count
CN115941327A (zh) * 2022-12-08 2023-04-07 西安交通大学 一种基于学习型布隆过滤器的多层恶意url识别方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101594227A (zh) * 2008-05-30 2009-12-02 华为技术有限公司 数据加密和解密的方法、装置及通信系统
CN103607393A (zh) * 2013-11-21 2014-02-26 浪潮电子信息产业股份有限公司 一种基于数据分割的数据安全保护方法
CN105608388A (zh) * 2015-09-24 2016-05-25 武汉大学 一种基于相关性去除的差分隐私数据发布方法及系统
CN106407841A (zh) * 2016-09-28 2017-02-15 武汉大学 基于差分隐私的相关性时间序列发布方法及系统
US20180097620A1 (en) * 2016-09-30 2018-04-05 International Business Machines Corporation Keyword to set minimum key strength

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10231077B2 (en) * 2007-07-03 2019-03-12 Eingot Llc Records access and management
CN104052658B (zh) * 2014-07-05 2017-10-03 中国科学技术大学 一种基于社交网络的隐私保护系统及方法
CN104850793B (zh) * 2015-05-28 2017-09-29 成都中科创达软件有限公司 一种安卓系统智能控制管理方法
US20170039387A1 (en) * 2015-08-03 2017-02-09 Agt International Gmbh Method and system for differentiated privacy protection
US9705908B1 (en) 2016-06-12 2017-07-11 Apple Inc. Emoji frequency detection and deep link frequency

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101594227A (zh) * 2008-05-30 2009-12-02 华为技术有限公司 数据加密和解密的方法、装置及通信系统
CN103607393A (zh) * 2013-11-21 2014-02-26 浪潮电子信息产业股份有限公司 一种基于数据分割的数据安全保护方法
CN105608388A (zh) * 2015-09-24 2016-05-25 武汉大学 一种基于相关性去除的差分隐私数据发布方法及系统
CN106407841A (zh) * 2016-09-28 2017-02-15 武汉大学 基于差分隐私的相关性时间序列发布方法及系统
US20180097620A1 (en) * 2016-09-30 2018-04-05 International Business Machines Corporation Keyword to set minimum key strength

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
秦晓飞: "电信运营商客户隐私数据保护算法探讨", 《电子世界》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112200286A (zh) * 2020-08-25 2021-01-08 中国物品编码中心 字符串编码的方法和装置
CN112200286B (zh) * 2020-08-25 2023-10-03 中国物品编码中心 字符串编码的方法和装置
CN116707851A (zh) * 2022-11-21 2023-09-05 荣耀终端有限公司 数据上报的方法及终端设备
CN116707851B (zh) * 2022-11-21 2024-04-23 荣耀终端有限公司 数据上报的方法及终端设备

Also Published As

Publication number Publication date
EP3823237A1 (en) 2021-05-19
EP3823237B1 (en) 2023-06-14
US20210141922A1 (en) 2021-05-13
CN110768936B (zh) 2021-05-18
WO2020019833A1 (zh) 2020-01-30
US11531778B2 (en) 2022-12-20
EP3823237A4 (en) 2021-08-25

Similar Documents

Publication Publication Date Title
CN110768936B (zh) 隐私数据的上报方法、装置与存储介质
US20210359836A1 (en) Secure multi-party reach and frequency estimation
CN112449009B (zh) 一种基于svd的联邦学习推荐系统通信压缩方法及装置
US11023594B2 (en) Locally private determination of heavy hitters
CN111143862B (zh) 数据处理方法、查询方法、装置、电子设备和系统
CN106055630A (zh) 日志存储的方法及装置
US20190288848A1 (en) Cryptographic hash generation system
US20230359631A1 (en) Updatable private set intersection
Yang et al. Secure hot path crowdsourcing with local differential privacy under fog computing architecture
CN109829320A (zh) 一种信息的处理方法和装置
Salamatian et al. Centralized vs decentralized targeted brute-force attacks: Guessing with side-information
CN117119535A (zh) 一种移动端集群热点共享的数据分流方法和系统
Youn et al. Randomized quantization is all you need for differential privacy in federated learning
Liu et al. Distributed incomplete pattern matching via a novel weighted bloom filter
Damiani et al. Learning behavioral representations of human mobility
CN111159730B (zh) 数据处理方法、查询方法、装置、电子设备和系统
CN105263138A (zh) 支持传感器网络数据聚合的传感原数据隐私保护方法
Kewalramani Community detection in Twitter
US20130007006A1 (en) System and Method for Using Network Equipment to Provide Targeted Advertising
CN115277239B (zh) 数据库数据的加密方法及装置
CN110740445A (zh) 一种基于动态配置的数据处理方法及其应用
CN110909001A (zh) 一种数据种子植入及溯源追踪的方法
CN107203578B (zh) 建立用户标识的关联的方法和装置
Miyoshi et al. Practical and secure searchable symmetric encryption with a small index
Li et al. Secure and evaluable clustering based on a multifunctional and privacy-preserving outsourcing computation toolkit

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