CN114239031A - 一种用户隐私数据的处理方法及处理装置 - Google Patents

一种用户隐私数据的处理方法及处理装置 Download PDF

Info

Publication number
CN114239031A
CN114239031A CN202111568694.5A CN202111568694A CN114239031A CN 114239031 A CN114239031 A CN 114239031A CN 202111568694 A CN202111568694 A CN 202111568694A CN 114239031 A CN114239031 A CN 114239031A
Authority
CN
China
Prior art keywords
ciphertext
privacy data
user privacy
public key
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111568694.5A
Other languages
English (en)
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.)
Shenzhen Zhongyue Technology Co ltd
Original Assignee
Shenzhen Zhongyue Technology 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 Shenzhen Zhongyue Technology Co ltd filed Critical Shenzhen Zhongyue Technology Co ltd
Priority to CN202111568694.5A priority Critical patent/CN114239031A/zh
Publication of CN114239031A publication Critical patent/CN114239031A/zh
Pending legal-status Critical Current

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/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C1/00Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
    • G07C1/10Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people together with the recording, indicating or registering of other data, e.g. of signs of identity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种用户隐私数据的处理方法及处理装置,其中,处理方法包括:第一设备生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息生成第一密文后发送给第二设备;第二设备用于结合第二设备中的集合B将第一密文处理成第二密文后发送给第一设备;集合A包括:考勤名单中多个用户的用户隐私数据;集合B包括:目标用户进行考勤打卡的用户隐私数据;第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;交集结果用于指示出目标用户是否考勤打卡成功。采用本申请,通过隐私计算技术求解两方数据集的交集,可解决:开放网络环境中存储有集合A、集合B,或集合A与集合B的交集结果的泄露问题、考勤打卡作弊问题。

Description

一种用户隐私数据的处理方法及处理装置
技术领域
本申请涉及网络通信中数据安全和隐私保护技术领域,尤其涉及一种用户隐私数据的处理方法及处理装置。
背景技术
随着物联网、移动计算、云计算等技术的快速兴起及迅猛发展,人们的生活方式正在发生巨大改变。这些新的数据处理技术为整个杜会提供了极大的便利。与此同时,隐私信息和保密数据的泄露事件也在频繁发生,制约着新型数据处理技术的应用和普及。因此,大数据时代的隐私数据的保护问题已成为人们关注的焦点。
发明内容
基于以上存在的问题以及现有技术的缺陷,本申请提供一种用户隐私数据的处理方法及处理装置,采用本申请,通过两方集合交集的隐私数据安全计算,可解决:开放网络环境中存储有集合A、集合B,或集合A与集合B的交集结果的泄露问题、考勤打卡作弊问题。
第一方面,本申请提供了一种用户隐私数据的处理方法,该处理方法包括:
第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将所述第一密文发送给第二设备;
其中,所述第二设备用于结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文,并将所述第二密文发送给所述第一设备;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述第一设备中集合A与所述集合B的交集结果;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
结合第一方面,在一些可选的实施例中,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备生成多个伪随机相关对
Figure BDA0003422777920000021
Figure BDA0003422777920000022
通过所述第二设备生成的所述预设公钥
Figure BDA0003422777920000023
Figure BDA0003422777920000024
进行加密以获得预设密文
Figure BDA0003422777920000025
执行m次所述不经意传输协议之后,将所述预设密文
Figure BDA0003422777920000026
发送给所述第二设备;所述伪随机相关对为一对所述二进制串。
结合第一方面,在一些可选的实施例中,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备生成多个伪随机相关对
Figure BDA0003422777920000027
Figure BDA0003422777920000028
所述第一设备在执行m次所述IKNP协议之后,接收到所述第二设备发送的c×m的矩阵Q;其中,
Figure BDA0003422777920000029
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;所述ta表示所述随机比特矩阵T的第a列;1≤a≤m;其中,所述d为所述第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA00034227779200000210
所述s∈{0,1}m为所述第一设备初始化的随机向量;所述db表示所述d中第b个值;所述sa表示所述s中第a个值;
所述第一设备发送
Figure BDA00034227779200000211
给所述第二设备,1≤b≤m,H(·)表示第二哈希函数;c≥m。
结合第一方面,在一些可选的实施例中,
第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备将所述集合A通过哈希函数组映射生成布隆过滤器BFA,根据所述布隆过滤器BFA的长度m计算出
Figure BDA0003422777920000031
其中,所述布隆过滤器BFA为所述二进制串,其中,ri为从集合{0,1}λ中随机均匀选取的一个元素,λ为正整数。
结合第一方面,在一些可选的实施例中,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备将所述集合A通过第一哈希函数映射生成哈希表HashTableA,根据所述哈希表HashTableA的长度m计算出
Figure BDA0003422777920000032
其中,所述哈希表HashTableA为所述二进制串,其中,ri为从集合{0,1}λ中随机均匀选取的一个元素,λ为正整数。
结合第一方面,在一些可选的实施例中,
所述同态加密***包括:加法同态加密算法;
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将所述第一密文发送给第二设备包括:
结合通过加法同态加密算法生成的公钥pk(n,g)和由所述第一设备中集合A映射所得的二进制串的长度信息m,生成第一密文
Figure BDA0003422777920000033
并将所述第一密文
Figure BDA0003422777920000034
和所述公钥pk(n,g)发送给所述第二设备;
其中,所述第一密文
Figure BDA0003422777920000035
为通过所述公钥pk(n,g)对所述
Figure BDA0003422777920000036
进行加密所得到的密文,所述
Figure BDA0003422777920000037
n为正整数,g为从集合
Figure BDA0003422777920000038
中随机均匀选取的一个元素,
Figure BDA0003422777920000039
所述加法同态加密算法包括:paillier算法或Benaloh算法。
结合第一方面,在一些可选的实施例中,
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果,包括:
所述第一设备通过私钥sk(w,μ)将所述第二密文
Figure BDA00034227779200000310
进行计算处理,获得所述集合A与所述集合B的交集结果|A∩B|*;其中,
Figure BDA0003422777920000041
所述
Figure BDA0003422777920000042
为通过所述私钥sk(w,μ)对第二密文
Figure BDA0003422777920000043
进行解密后所得到的明文;
Figure BDA0003422777920000044
表示
Figure BDA0003422777920000045
向下取整的值;|A∩B|*还表示集合A和集合B的交集的集合势的近似整数的估计值。
结合第一方面,在一些可选的实施例中,
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果之后,还包括:
所述第一设备将所述交集结果发送给所述第二设备;
如果所述交集结果为0,则所述交集结果指示出所述目标用户考勤打卡不成功,如果所述交集结果不为0,则所述交集结果指示出所述目标用户考勤打卡成功。
第二方面,本申请提供了另一种用户隐私数据的处理方法,该处理方法包括:
第二设备接收由第一设备基于公钥所生成的第一密文,结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文;
所述第二设备将所述第二密文发送给存储有集合A的第一设备;
其中,所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;所述公钥和所述私钥都由所述第一设备生成;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
结合第二方面,在一些可选的实施例中,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备生成随机比特di
Figure BDA0003422777920000046
第二设备基于不经意传输协议(oblivious Transfer,OT)并结合所述随机比特di
Figure BDA0003422777920000051
从所述第一设备接收到伪随机消息
Figure BDA0003422777920000052
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB
所述第二设备结合所述随机比特di和所述布隆过滤器BFB获得
Figure BDA0003422777920000053
所述不经意传输协议包括:Silent OT协议。
结合第二方面,在一些可选的实施例中,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备生成随机比特di
Figure BDA0003422777920000054
所述第二设备在接收到
Figure BDA0003422777920000055
之后,根据计算出的H(b,tb)以及生成的所述di,获得伪随机消息
Figure BDA0003422777920000056
其中,
Figure BDA0003422777920000057
Figure BDA0003422777920000058
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;所述ta表示所述随机比特矩阵T的第a列;1≤a≤m;所述矩阵Q为所述第二设备发送给所述第一设备的大小为c×m的矩阵;所述随机比特矩阵T为所述第二设备初始化的大小为c×m的矩阵;H(·)表示第二哈希函数;c≥m;其中,所述d为所述第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA0003422777920000059
c≥m;所述s∈{0,1}m为所述第一设备初始化的随机向量;所述db表示所述d中第b个值;所述sa表示所述s中第a个值;
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB
所述第二设备结合所述随机比特di和所述布隆过滤器BFB获得
Figure BDA00034227779200000510
所述不经意传输拓展协议包括:IKNP协议。
结合第二方面,在一些可选的实施例中,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB,结合由所述第一设备生成的布隆过滤器BFA以及所述布隆过滤器BFB,计算出
Figure BDA00034227779200000511
其中,
Figure BDA00034227779200000512
Figure BDA00034227779200000513
所述ri为从集合{0,1}λ中随机均匀选取一个元素;所述布隆过滤器BFA的长度和所述布隆过滤器BFB的长度都为m;所述布隆过滤器BFA和所述布隆过滤器BFB分别为所述二进制串。
结合第二方面,在一些可选的实施例中,
所述结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文,包括:
所述第二设备结合由所述集合B映射所得的布隆过滤器BFB、所述公钥pk(n,g)以及所述第一密文
Figure BDA0003422777920000061
获得第二密文
Figure BDA0003422777920000062
其中,
所述
Figure BDA0003422777920000063
τ为实数区间
Figure BDA0003422777920000064
上的一个随机小数;所述Encpk(S2)为通过所述公钥pk(n,g)对所述S2进行加密所得到的密文;
Figure BDA0003422777920000065
所述S1为所述第一设备计算得出;所述n为正整数。
结合第二方面,在一些可选的实施例中,
所述第二设备将所述第二密文发送给存储有集合A的第一设备之后,还包括:
在所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果之后,
所述第二设备接收所述第一设备发送的所述交集结果;
如果所述交集结果为0,所述第二设备播放语音提示:“考勤打卡不成功”,并显示“考勤打卡不成功”;或者,
如果所述交集结果不为0,所述第二设备播放语音提示:“考勤打卡成功”,并显示“考勤打卡成功”。
第三方面,本申请提供了一种用户隐私数据的处理装置,包括:
生成单元,用于通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文;
发送单元,用于将所述第一密文发送给第二设备;
其中,所述第二设备用于结合所述第二设备中的集合B将所述第一密文进行处理,获得第二密文,并将所述第二密文发送给所述处理装置;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;
计算单元,用于通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
第四方面,本申请提供了另一种用户隐私数据的处理装置,包括:
接收单元,用于接收由第一设备基于公钥所生成的第一密文;
计算单元,用于结合所述处理装置中的集合B映射所得二进制串将所述第一密文进行处理,获得第二密文;
发送单元,用于将所述第二密文发送给存储有集合A的第一设备;
其中,所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述处理装置接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;所述公钥和所述私钥都由所述第一设备生成;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
本申请公开了一种用户隐私数据的处理方法及处理装置,其中,处理方法包括:第一设备生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息生成第一密文后发送给第二设备;第二设备用于结合第二设备中的集合B将第一密文处理成第二密文后发送给第一设备;集合A包括:考勤名单中多个用户的用户隐私数据;集合B包括:目标用户进行考勤打卡的用户隐私数据;第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;交集结果用于指示出目标用户是否考勤打卡成功。
采用本申请,通过隐私计算技术求解两方数据集的交集,可解决:开放网络环境中存储有集合A、集合B,或集合A与集合B的交集结果的泄露问题、考勤打卡作弊问题。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种用户隐私数据的处理方法的流程示意图;
图2是本申请提供的一种布隆过滤器的示意图;
图3是本申请提供的另一种用户隐私数据的处理方法的流程示意图;
图4是本申请提供的一种用户隐私数据的处理装置的结构示意图;
图5是本申请提供的另一种用户隐私数据的处理装置的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为解决网络通信中的用户隐私数据安全保护问题、考勤打卡作弊问题,本申请提供了一种用户隐私数据的处理方法及处理装置。
具体的,第一设备通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将第一密文发送给第二设备;第二设备用于结合第二设备中的集合B映射所得的二进制串将第一密文进行处理,获得第二密文,并将第二密文发送给第一设备;第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;其中,上述交集结果用于指示出上述目标用户是否考勤打卡成功。也即,如果交集结果为0,则指示出目标用户考勤打卡不成功,如果交集结果不为0,则指示出目标用户考勤打卡成功。
参见图1,是本申请提供的一种用户隐私数据的处理方法的流程示意图,该处理方法,可包括但不限于下述步骤:
S101、第一设备可通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将第一密文发送给第二设备。
应当说明的,当申请实施例中的第一设备为服务器时,则本申请实施例中的第二设备可为考勤打卡机器;当本申请实施例中的第一设备为考勤打卡机器时,则本申请实施例中的第二设备可为服务器;本申请不做限制。
本申请实施例中,集合A包括:考勤名单中多个用户的用户隐私数据;用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征、人体骨骼特征、人脸轮廓特征、人体轮廓特征。
应当说明的,第二设备用于结合第二设备中的集合B映射所得的二进制串将第一密文进行处理,获得第二密文,并将第二密文发送给第一设备。
其中,集合B包括:第二设备102接收的由目标用户输入的目标用户进行考勤打卡的用户隐私数据;
应当说明的,目标用户可包括但不限于:学生、老师或后勤工作人员;
后勤工作人员包括以下一种或多种:保洁人员、厨师。
应当说明的,第一设备通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还可包括下述两种方式:
方式1:第一设备将集合A通过哈希函数组映射生成布隆过滤器BFA,根据布隆过滤器BFA的长度m计算出
Figure BDA0003422777920000091
其中,布隆过滤器BFA为二进制串;其中,λ为正整数。
方式2:第一设备将集合A通过第一哈希函数映射生成哈希表HashTableA,根据哈希表HashTableA的长度m计算出
Figure BDA0003422777920000092
其中,哈希表HashTableA为二进制串。
图2示例性示出了一种布隆过滤器,如图2所示,集合{x,y,z}中每一个元素通过由3个哈希函数构成的函数组映射到一个二进制串,得到一个轻量级的二进制串,即得到布隆过滤器,可用于检测一个元素是否属于集合{x,y,z}。
具体的,图2中的布隆过滤器的长度m=18,其中,元素w经过检测可知不在集合{x,y,z}中,因为该元素的某个哈希值对应的位置为0;其中,布隆过滤器的长度m与哈希函数组的大小
Figure BDA0003422777920000093
和其容量大小f直接相关;显而易见的,如果m取值非常大的情况下,哈希的碰撞会减少,布隆过滤器的检测错误率e会降低,但这样会降低,但在计算上会降低效率。进一步的,可对
Figure BDA0003422777920000094
和m进一步进行约束,上述布隆过滤器的计算效率和错误率之间可取得较好的平衡,也即:
Figure BDA0003422777920000095
举例来说,检测一个元素a是否属于集合{x,y,z},首先可使用上述哈希函数组计算a的所有的映射值,接着,检测布隆过滤器上对应位置是否全为1,如果是,则说明元素a位于集合{x,y,z}中,否则,元素a不是集合{x,y,z}中的元素。
应当说明的,第一设备通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还可包括下述过程:
第一设备生成多个伪随机相关对
Figure BDA0003422777920000101
Figure BDA0003422777920000102
并通过第二设备生成的预设公钥
Figure BDA0003422777920000103
Figure BDA0003422777920000104
进行加密以获得预设密文
Figure BDA0003422777920000105
执行m次不经意传输协议(Oblivious Transfer,OT)之后,将预设密文
Figure BDA0003422777920000106
发送给第二设备;上述伪随机相关对为一对二进制串。
应当说明的,第一设备通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还可包括下述过程:
第一设备生成多个伪随机相关对
Figure BDA0003422777920000107
Figure BDA0003422777920000108
λ为正整数;
第一设备在执行m次IKNP协议之后,接收到第二设备发送的c×m的矩阵Q;其中,
Figure BDA0003422777920000109
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;ta表示随机比特矩阵T的第a列;1≤a≤m;其中,d为第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA00034227779200001010
s∈{0,1}m为第一设备初始化的随机向量;db表示d中第b个值;sa表示s中第a个值;
应当说明的,如果sa为0,则(sa&d)=0n,从而qa=ta,如果sa为1,则(sa&d)=d,从而
Figure BDA00034227779200001011
应当说明的,如果db=0,则qb=tb,如果db=1,则
Figure BDA00034227779200001012
第一设备发送
Figure BDA00034227779200001013
给第二设备,1≤b≤m,H(·)表示第二哈希函数;c≥m。
当同态加密***包括:加法同态加密算法时,
第一设备通过同态加密***生成一对公钥和私钥,结合公钥和由第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将第一密文发送给第二设备,可包括但不限于下述过程:
第一设备通过同态加密算法生成一对公钥pk(n,g)和pk(n,g)私钥sk(w,μ),结合公钥pk(n,g)和由集合A映射所得的二进制串的长度信息m,生成第一密文
Figure BDA0003422777920000111
并将第一密文
Figure BDA0003422777920000112
和公钥pk(n,g)发送给第二设备;
其中,第一密文
Figure BDA0003422777920000113
为第一设备通过公钥pk(n,g)对
Figure BDA0003422777920000114
进行加密所得到的密文,
Figure BDA0003422777920000115
n为正整数,g为从集合
Figure BDA0003422777920000116
中随机均匀选取的一个元素,
Figure BDA0003422777920000117
加法同态加密算法包括:paillier算法或Benaloh算法。
应当说明的,paillier算法可包括但不限于下述过程:
1、秘钥生成过程可包括但不限于下述步骤:
(1)随机独立地选取两个不相等的大素数p和q,并计算n=pq和λ=lcm(p-1,q-1);g为从集合
Figure BDA0003422777920000118
中随机均匀选取的一个元素;
(2)定义
Figure BDA0003422777920000119
如果μ=L(gλmod n2)-1mod n存在,则输出公钥pk=(n,g),私钥sk=(λ,μ);
2、加密过程:
(1)检查输入m是否属于{0,1…,n},否则输出ψ;
(2)r为从集合
Figure BDA00034227779200001110
中随机均匀选取的一个元素;
(3)输出明文c=gm·rn mod n2
3、解密过程:
(1)输入待解密的密文c,若
Figure BDA00034227779200001111
则输出ψ;
(2)否则输出明文m=L(cλmod n2)·μmod n。
S102、第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果。
本申请实施例中,第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果,可包括但不限于下述过程:
第一设备通过私钥sk(w,μ)将第二密文
Figure BDA00034227779200001114
进行计算处理,获得集合A与集合B的交集结果|A∩B|*;其中,
Figure BDA00034227779200001112
为通过私钥sk(w,μ)对第二密文
Figure BDA00034227779200001113
进行解密后所得到的明文;
Figure BDA0003422777920000121
表示
Figure BDA0003422777920000122
向下取整的值;|A∩B|*还表示集合A和集合B的交集的集合势的近似整数的估计值。
第一设备通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果之后,还可包括但不限于下述过程:
第一设备将交集结果发送给第二设备;
如果交集结果为0,则上述交集结果指示出目标用户考勤打卡不成功,如果交集结果不为0,则上述交集结果指示出目标用户考勤打卡成功。
如果交集结果为0,第二设备可播放语音提示:“考勤打卡不成功”,并显示“考勤打卡不成功”;或者,
如果交集结果不为0,第二设备可播放语音提示:“考勤打卡成功”,并显示“考勤打卡成功”;或者,
如果交集结果为0,第二设备可播放语音提示:“考勤打卡不成功”,或显示“考勤打卡不成功”;或者,
如果交集结果不为0,第二设备可播放语音提示:“考勤打卡成功”,或显示“考勤打卡成功”。
应当说明的,本申请实施例中的不经意传输协议或不经意传输拓展协议都可为基于半诚实模型(Semi-Honest Model)进行构建的。
图2仅仅用于解释本申请实施例,不应对本申请作出限制。
参见图3,是本申请提供的另一种用户隐私数据的处理方法的流程示意图,该处理方法,可包括但不限于下述步骤:
S301、第二设备接收由第一设备基于公钥所生成的第一密文,结合第二设备中的集合B映射所得的二进制串将第一密文进行处理,获得第二密文。
本申请实施例中,集合B包括:第二设备接收的由目标用户输入的目标用户进行考勤打卡的用户隐私数据;
第二设备接收由第一设备基于公钥所生成的第一密文之前,还可包括但不限于下述2种方式:
方式1:
第二设备生成随机比特di
Figure BDA0003422777920000123
第二设备基于不经意传输协议(Oblivious Transfer,OT)并结合随机比特di
Figure BDA0003422777920000131
从第一设备接收到伪随机消息
Figure BDA0003422777920000132
第二设备将集合B通过哈希函数组映射生成布隆过滤器BFB
第二设备结合随机比特di和布隆过滤器BFB获得
Figure BDA0003422777920000133
上述不经意传输协议包括:Silent OT协议。
方式2:
第二设备生成随机比特di
Figure BDA0003422777920000134
第二设备在接收到
Figure BDA0003422777920000135
之后,根据计算出的H(b,tb)以及生成的di,获得伪随机消息
Figure BDA0003422777920000136
其中,
Figure BDA0003422777920000137
Figure BDA0003422777920000138
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;ta表示随机比特矩阵T的第a列;1≤a≤m;矩阵Q为第二设备发送给第一设备的大小为c×m的矩阵;随机比特矩阵T为第二设备初始化的大小为c×m的矩阵;H(·)表示第二哈希函数;c≥m;其中,d为第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA0003422777920000139
s∈{0,1}m为第一设备初始化的随机向量;db表示d中第b个值;sa表示s中第a个值。
应当说明的,如果sa为0,则(sa&d)=0n,从而qa=ta,如果sa为1,则(sa&d)=d,从而
Figure BDA00034227779200001310
应当说明的,如果db=0,则qb=tb,如果db=1,则
Figure BDA00034227779200001311
第二设备将集合B通过哈希函数组映射生成布隆过滤器BFB
第二设备结合随机比特di和布隆过滤器BFB获得
Figure BDA00034227779200001312
上述不经意传输拓展协议包括:IKNP协议。
第二设备接收由第一设备基于公钥所生成的第一密文之前,还可包括但不限于下述过程:
第二设备将集合B通过哈希函数组映射生成布隆过滤器BFB,结合由第一设备生成的布隆过滤器BFA以及布隆过滤器BFB,计算出
Figure BDA00034227779200001313
其中,
Figure BDA00034227779200001314
Figure BDA00034227779200001315
ri为从集合{0,1}λ中随机均匀选取一个元素;布隆过滤器BFA的长度和布隆过滤器BFB的长度都为m;布隆过滤器BFA和布隆过滤器BFB分别为二进制串。
第二设备结合第二设备中的集合B映射所得的二进制串将第一密文进行处理,获得第二密文,可包括但不限于下述步骤:
第二设备结合由集合B映射所得的布隆过滤器BFB、公钥pk(n,g)以及第一密文
Figure BDA0003422777920000141
获得第二密文
Figure BDA0003422777920000142
其中,
Figure BDA0003422777920000143
τ为实数区间
Figure BDA0003422777920000144
上的一个随机小数;Encpk(S2)为通过公钥pk(n,g)对S2进行加密所得到的密文;
Figure BDA0003422777920000145
S1为第一设备计算得出,n为正整数。
S302、第二设备将第二密文发送给存储有集合A的第一设备。
本申请实施例中,第一设备可用于结合私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;集合A包括:考勤名单中多个用户的用户隐私数据;用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;集合B包括:第二设备接收的由目标用户输入的目标用户进行考勤打卡的用户隐私数据;上述公钥和上述私钥都由第一设备生成。也即是说,
第二设备将第二密文发送给存储有集合A的第一设备之后,还包括:
在第一设备用于结合私钥将第二密文进行计算处理,获得集合A与集合B的交集结果之后,
第二设备接收第一设备发送的交集结果;
如果交集结果为0,第二设备播放语音提示:“考勤打卡不成功”,并显示“考勤打卡不成功”;或者,
如果交集结果不为0,第二设备播放语音提示:“考勤打卡成功”,并显示“考勤打卡成功”;
如果交集结果为0,第二设备播放语音提示:“考勤打卡不成功”,或显示“考勤打卡不成功”;或者,
如果交集结果不为0,第二设备播放语音提示:“考勤打卡成功”,或显示“考勤打卡成功”。
应当说明的,本申请实施例未详细阐述或说明的部分,请参考图1方法实施例。
本申请提供了一种隐私数据的处理装置,可用于实现图1实施例所述的一种隐私数据的处理方法。其中,图4所示的隐私数据的处理装置可用于执行图1实施例中的描述内容,也即,图4所示的隐私数据的处理装置可为图1实施例中的第一设备。
如图4所示,处理装置40可包括但不限于:生成单元401、发送单元402及计算单元403;其中,
生成单元401,可用于通过同态加密***生成一对公钥和私钥,结合公钥和由处理装置40中集合A映射所得的二进制串的长度信息,生成第一密文;
发送单元402,可用于将第一密文发送给第二设备;
其中,第二设备用于结合第二设备中的集合B将第一密文进行处理,获得第二密文,并将第二密文发送给处理装置40;集合A包括:考勤名单中多个用户的用户隐私数据;用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;集合B包括:第二设备接收的由目标用户输入的目标用户进行考勤打卡的用户隐私数据;
应当说明的,本申请实施例中的第二设备可为图5实施例中的处理装置50。
计算单元403,可用于通过私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;
其中,上述交集结果可用于指示出目标用户是否考勤打卡成功。
应当说明的,生成单元401,还可用于:
生成多个伪随机相关对
Figure BDA0003422777920000151
Figure BDA0003422777920000152
通过第二设备生成的预设公钥
Figure BDA0003422777920000153
Figure BDA0003422777920000154
进行加密以获得预设密文
Figure BDA0003422777920000155
发送单元402,还可用于:
将预设密文
Figure BDA0003422777920000156
发送给第二设备;伪随机相关对为一对二进制串。
处理装置40包括:生成单元401、发送单元402及计算单元403之外,还可包括:接收单元,其中,
接收单元,可用于:
在执行m次IKNP协议之后,接收到第二设备发送的c×m的矩阵Q;其中,
Figure BDA0003422777920000157
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;ta表示随机比特矩阵T的第a列;1≤a≤m;
发送单元402还可用于:发送
Figure BDA0003422777920000161
给第二设备,1≤b≤m,H(·)表示第二哈希函数;c≥m;其中,d为第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA0003422777920000162
s∈{0,1}m为处理装置40初始化的随机向量;db表示d中第b个值;sa表示s中第a个值。
生成单元401,还可用于:将集合A通过哈希函数组映射生成布隆过滤器BFA
计算单元403,还可用于:
根据布隆过滤器BFA的长度m计算出
Figure BDA0003422777920000163
其中,布隆过滤器BFA为二进制串,其中,ri为从集合{0,1}λ中随机均匀选取的一个元素,λ为正整数。
生成单元401,还可用于:
将集合A通过第一哈希函数映射生成哈希表HashTableA
计算单元403,还可用于:
根据哈希表HashTableA的长度m计算出
Figure BDA0003422777920000164
其中,哈希表HashTableA为二进制串,其中,ri为从集合{0,1}λ中随机均匀选取的一个元素,λ为正整数。
生成单元401,具体可用于:
通过同态加密算法生成一对公钥pk(n,g)和pk(n,g)私钥sk(w,μ),结合公钥pk(n,g)和由集合A映射所得的二进制串的长度信息m,生成第一密文
Figure BDA0003422777920000165
发送单元402,具体可用于:
将第一密文
Figure BDA0003422777920000166
和公钥pk(n,g)发送给第二设备;
其中,第一密文
Figure BDA0003422777920000167
为计算单元403通过公钥pk(n,g)对
Figure BDA0003422777920000168
进行加密所得到的密文,
Figure BDA0003422777920000169
n为正整数,g为从集合
Figure BDA00034227779200001610
中随机均匀选取的一个元素,
Figure BDA00034227779200001611
加法同态加密算法包括:paillier算法或Benaloh算法。
计算单元403,具体可用于:
通过私钥sk(w,μ)将第二密文
Figure BDA00034227779200001612
进行计算处理,获得集合A与集合B的交集结果|A∩B|*;其中,
Figure BDA0003422777920000171
为通过私钥sk(w,μ)对第二密文
Figure BDA0003422777920000174
进行解密后所得到的明文;
Figure BDA0003422777920000172
表示
Figure BDA0003422777920000173
向下取整的值;|A∩B|*还表示集合A和集合B的交集的集合势的近似整数的估计值。
发送单元402,还可用于:
将交集结果发送给第二设备;
如果交集结果为0,则指示出目标用户考勤打卡不成功,如果交集结果不为0,则指示出目标用户考勤打卡成功。
应当说明的,本申请实施例中的不经意传输协议或不经意传输拓展协议都基于半诚实模型(Semi-Honest Model)进行构建的。
应当说明的,图4实施例未详细阐明的定义或解释可参考图1所述的实施例。
应当理解,处理装置40仅为本申请实施例提供的一个例子,处理装置40可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
可理解的,关于图4的处理装置40包括的功能部件的具体实现方式,可参考图1实施例,此处不再赘述。
本申请提供了一种隐私数据的处理装置,可用于实现图3实施例所述的一种隐私数据的处理方法。其中,图5所示的隐私数据的处理装置可用于执行图1实施例中的描述内容,也即,图5所示的隐私数据的处理装置50可为图3实施例中的第二设备。
如图5所示,处理装置50可包括但不限于:接收单元501、计算单元502及发送单元503;其中,
接收单元501,可用于接收由第一设备基于公钥所生成的第一密文;
计算单元502,可用于结合处理装置50中的集合B映射所得二进制串将第一密文进行处理,获得第二密文;
发送单元503,可用于将第二密文发送给存储有集合A的第一设备;
应当说明的,本申请实施例中的第一设备可为图4实施例中的处理装置40。
其中,第一设备可用于结合私钥将第二密文进行计算处理,获得集合A与集合B的交集结果;集合A包括:考勤名单中多个用户的用户隐私数据;用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;集合B包括:处理装置50接收的由目标用户输入的目标用户进行考勤打卡的用户隐私数据;上述公钥和上述私钥都由上述第一设备生成;
其中,上述交集结果用于指示出上述目标用户是否考勤打卡成功。
接收单元501,还可用于:
基于不经意传输协议(oblivious Transfer,OT)并结合所述随机比特di
Figure BDA0003422777920000181
从所述第一设备接收到伪随机消息
Figure BDA0003422777920000182
处理装置50可包括但不限于:接收单元501、计算单元502及发送单元503之外,还可包括:生成单元;
生成单元,可用于:
将集合B通过哈希函数组映射生成布隆过滤器BFB
计算单元502,还用于:
结合随机比特di和布隆过滤器BFB获得
Figure BDA0003422777920000183
不经意传输协议包括:Silent OT协议或IKNP协议。
生成单元,还可用于:
生成随机比特di
Figure BDA0003422777920000184
计算单元502,还用于:
在通过接收单元501接收到
Figure BDA0003422777920000185
之后,根据计算出的H(b,tb)以及生成的所述di,获得伪随机消息
Figure BDA0003422777920000186
其中,
Figure BDA0003422777920000187
Figure BDA0003422777920000188
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;ta表示随机比特矩阵T的第a列;1≤a≤m;矩阵Q为发送单元503发送给第一设备的大小为c×m的矩阵;随机比特矩阵T为处理装置50初始化的大小为c×m的矩阵;H(·)表示第二哈希函数;c≥m;其中,d为处理装置50生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure BDA0003422777920000189
c≥m;s∈{0,1}m为第一设备初始化的随机向量;db表示d中第b个值;sa表示s中第a个值。
计算单元502,还用于:
结合由第一设备生成的布隆过滤器BFA以及上述布隆过滤器BFB,计算出
Figure BDA0003422777920000191
其中,
Figure BDA0003422777920000192
Figure BDA0003422777920000193
ri为从集合{0,1}λ中随机均匀选取一个元素;布隆过滤器BFA的长度和布隆过滤器BFB的长度都为m;布隆过滤器BFA和布隆过滤器BFB分别为二进制串。
计算单元502,具体可用于:
结合由集合B映射所得的布隆过滤器BFB、公钥pk(n,g)以及第一密文
Figure BDA0003422777920000194
获得第二密文
Figure BDA0003422777920000195
其中,
Figure BDA0003422777920000196
τ为实数区间
Figure BDA0003422777920000197
上的一个随机小数;Encpk(S2)为通过公钥pk(n,g)对S2进行加密所得到的密文;
Figure BDA0003422777920000198
S1为第一设备计算得出;n为正整数。
接收单元501,还用于:
在第一设备用于结合私钥将第二密文进行计算处理,获得集合A与集合B的交集结果之后,接收第一设备发送的交集结果;
如果交集结果为0,处理装置50播放语音提示:“考勤打卡不成功”,并显示“考勤打卡不成功”;或者,
如果所述交集结果不为0,处理装置50播放语音提示:“考勤打卡成功”,并显示“考勤打卡成功”。
如果交集结果为0,处理装置50可通过内部集成的语音播放单元播放:“考勤打卡不成功”,和通过内部集成的显示单元显示“考勤打卡不成功”;或者
如果交集结果不为0,处理装置50可通过内部集成的语音播放单元播放:“考勤打卡成功”,和通过内部集成的显示单元显示“考勤打卡成功”;
如果交集结果为0,处理装置50可通过内部集成的语音播放单元播放:“考勤打卡不成功”,或通过内部集成的显示单元显示“考勤打卡不成功”;或者
如果交集结果不为0,处理装置50可通过内部集成的语音播放单元播放:“考勤打卡成功”,或通过内部集成的显示单元显示“考勤打卡成功”。
应当说明的,图5实施例未详细阐明的定义或解释可参考图3所述的实施例。
应当理解,处理装置50仅为本申请实施例提供的一个例子,处理装置50可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
可理解的,关于图5的处理装置50包括的功能部件的具体实现方式,可参考图3实施例,此处不再赘述。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、***和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备、***,可以通过其它的方式实现。例如,以描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
上述描述的***、设备的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、设备、模块的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可以是个人计算机,设备,考勤机器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (16)

1.一种用户隐私数据的处理方法,其特征在于,包括:
第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将所述第一密文发送给第二设备;
其中,所述第二设备用于结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文,并将所述第二密文发送给所述第一设备;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
2.如权利要求1所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备生成多个伪随机相关对
Figure FDA0003422777910000011
Figure FDA0003422777910000012
通过所述第二设备生成的所述预设公钥
Figure FDA0003422777910000013
Figure FDA0003422777910000014
进行加密以获得预设密文
Figure FDA0003422777910000015
执行m次所述不经意传输协议之后,将所述预设密文
Figure FDA0003422777910000016
发送给所述第二设备;所述伪随机相关对为一对所述二进制串。
3.如权利要求1所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备生成多个伪随机相关对
Figure FDA0003422777910000021
Figure FDA0003422777910000022
所述第一设备在执行m次所述IKNP协议之后,接收到所述第二设备发送的c×m的矩阵Q;其中,
Figure FDA0003422777910000023
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;所述ta表示所述随机比特矩阵T的第a列;1≤a≤m;其中,所述d为所述第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure FDA0003422777910000024
所述s∈{0,1}m为所述第一设备初始化的随机向量;所述db表示所述d中第b个值;所述sa表示所述s中第a个值;
所述第一设备发送
Figure FDA0003422777910000025
给所述第二设备,1≤b≤m,H(·)表示第二哈希函数;c≥m。
4.如权利要求1所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备将所述集合A通过哈希函数组映射生成布隆过滤器BFA,根据所述布隆过滤器BFA的长度m计算出
Figure FDA0003422777910000026
其中,所述布隆过滤器BFA为所述二进制串,其中,所述ri为从集合{0,1}λ中随机均匀选取的一个元素,所述λ为正整数。
5.如权利要求1所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文之前,还包括:
所述第一设备将所述集合A通过第一哈希函数映射生成哈希表HashTableA,根据所述哈希表HashTableA的长度m计算出
Figure FDA0003422777910000027
其中,所述哈希表HashTableA为所述二进制串,其中,ri为从集合{0,1}λ中随机均匀选取的一个元素,所述λ为正整数。
6.如权利要求4或5所述用户隐私数据的处理方法,其特征在于,
所述同态加密***包括:加法同态加密算法;
所述第一设备通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文,并将所述第一密文发送给第二设备,包括:
所述第一设备通过同态加密算法生成一对公钥pk(n,g)和pk(n,g)私钥sk(w,μ),结合所述公钥pk(n,g)和由所述第一设备中集合A映射所得的二进制串的长度信息m,生成第一密文
Figure FDA0003422777910000031
并将所述第一密文
Figure FDA0003422777910000032
和所述公钥pk(n,g)发送给所述第二设备;
其中,所述第一密文
Figure FDA0003422777910000033
为通过所述公钥pk(n,g)对所述
Figure FDA0003422777910000034
进行加密所得到的密文,所述
Figure FDA0003422777910000035
n为正整数,所述g为从集合
Figure FDA0003422777910000036
中随机均匀选取的一个元素,所述
Figure FDA0003422777910000037
所述加法同态加密算法包括:paillier算法或Benaloh算法。
7.如权利要求6所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果,包括:
所述第一设备通过所述私钥sk(w,μ)将所述第二密文
Figure FDA0003422777910000038
进行计算处理,获得所述集合A与所述集合B的交集结果|A∩B|*;其中,
Figure FDA0003422777910000039
所述
Figure FDA00034227779100000310
为通过所述私钥sk(w,μ)对第二密文
Figure FDA00034227779100000311
进行解密后所得到的明文;
Figure FDA00034227779100000312
表示
Figure FDA00034227779100000313
向下取整的值;|A∩B|*还表示集合A和集合B的交集的集合势的近似整数的估计值。
8.如权利要求1所述用户隐私数据的处理方法,其特征在于,
所述第一设备通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果之后,还包括:
所述第一设备将所述交集结果发送给所述第二设备;
如果所述交集结果为0,则所述交集结果指示出所述目标用户考勤打卡不成功,如果所述交集结果不为0,则所述交集结果指示出所述目标用户考勤打卡成功。
9.一种用户隐私数据的处理方法,其特征在于,包括:
第二设备接收由第一设备基于公钥所生成的第一密文,结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文;
所述第二设备将所述第二密文发送给存储有集合A的第一设备;
其中,所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;所述公钥和所述私钥都由所述第一设备生成;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
10.如权利要求9所述用户隐私数据的处理方法,其特征在于,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备生成随机比特
Figure FDA0003422777910000041
所述第二设备基于不经意传输协议并结合所述随机比特
Figure FDA0003422777910000042
从所述第一设备接收到伪随机消息
Figure FDA0003422777910000043
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB
所述第二设备结合所述随机比特di和所述布隆过滤器BFB获得
Figure FDA0003422777910000044
所述不经意传输协议包括:Silent OT协议。
11.如权利要求9所述用户隐私数据的处理方法,其特征在于,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备生成随机比特
Figure FDA0003422777910000045
所述第二设备在接收到
Figure FDA0003422777910000051
之后,根据计算出的H(b,tb)以及生成的所述di,获得伪随机消息
Figure FDA0003422777910000052
其中,
Figure FDA0003422777910000053
Figure FDA0003422777910000054
qa表示矩阵Q的第a列,qb表示矩阵Q的第b行;所述ta表示所述随机比特矩阵T的第a列;1≤a≤m;所述矩阵Q为所述第二设备发送给所述第一设备的大小为c×m的矩阵;所述随机比特矩阵T为所述第二设备初始化的大小为c×m的矩阵;H(·)表示第二哈希函数;其中,所述d为所述第二设备生成的随机比特di构成的向量,且d=(d1,d2,…,db,…,di,…,dm),di∈{0,1},
Figure FDA0003422777910000055
c≥m;所述s∈{0,1}m为所述第一设备初始化的随机向量;所述db表示所述d中第b个值;所述sa表示所述s中第a个值;
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB
所述第二设备结合所述随机比特di和所述布隆过滤器BFB获得
Figure FDA0003422777910000056
所述不经意传输拓展协议包括:IKNP协议。
12.如权利要求9所述用户隐私数据的处理方法,其特征在于,
所述第二设备接收由第一设备基于公钥所生成的第一密文之前,还包括:
所述第二设备将所述集合B通过所述哈希函数组映射生成布隆过滤器BFB,结合由所述第一设备生成的布隆过滤器BFA以及所述布隆过滤器BFB,计算出
Figure FDA0003422777910000057
其中,
Figure FDA0003422777910000058
Figure FDA0003422777910000059
所述ri为从集合{0,1}λ中随机均匀选取一个元素;所述布隆过滤器BFA的长度和所述布隆过滤器BFB的长度都为m;所述布隆过滤器BFA和所述布隆过滤器BFB分别为所述二进制串。
13.如权利要求12所述用户隐私数据的处理方法,其特征在于,
所述结合所述第二设备中的集合B映射所得的二进制串将所述第一密文进行处理,获得第二密文,包括:
所述第二设备结合由所述集合B映射所得的布隆过滤器BFB、所述公钥pk(n,g)以及所述第一密文
Figure FDA00034227779100000510
获得第二密文
Figure FDA00034227779100000511
其中,
所述
Figure FDA0003422777910000061
τ为实数区间
Figure FDA0003422777910000062
上的一个随机小数;所述Encpk(S2)为通过所述公钥pk(n,g)对所述S2进行加密所得到的密文;
Figure FDA0003422777910000063
所述S1为所述第一设备计算得出;所述n为正整数。
14.如权利要求9所述用户隐私数据的处理方法,其特征在于,
所述第二设备将所述第二密文发送给存储有集合A的第一设备之后,还包括:
在所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果之后,
所述第二设备接收所述第一设备发送的所述交集结果;
如果所述交集结果为0,所述第二设备播放语音提示:“考勤打卡不成功”,并显示“考勤打卡不成功”;或者,
如果所述交集结果不为0,所述第二设备播放语音提示:“考勤打卡成功”,并显示“考勤打卡成功”。
15.一种用户隐私数据的处理装置,其特征在于,包括:
生成单元,用于通过同态加密***生成一对公钥和私钥,结合所述公钥和由所述第一设备中集合A映射所得的二进制串的长度信息,生成第一密文;
发送单元,用于将所述第一密文发送给第二设备;
其中,所述第二设备用于结合所述第二设备中的集合B将所述第一密文进行处理,获得第二密文,并将所述第二密文发送给所述处理装置;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述第二设备接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;
计算单元,用于通过所述私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
16.一种用户隐私数据的处理装置,其特征在于,包括:
接收单元,用于接收由第一设备基于公钥所生成的第一密文;
计算单元,用于结合所述处理装置中的集合B映射所得二进制串将所述第一密文进行处理,获得第二密文;
发送单元,用于将所述第二密文发送给存储有集合A的第一设备;
其中,所述第一设备用于结合私钥将所述第二密文进行计算处理,获得所述集合A与所述集合B的交集结果;所述集合A包括:考勤名单中多个用户的用户隐私数据;所述用户隐私数据包括下述一项或多项:用户的人脸特征、指纹特征、瞳孔特征;所述集合B包括:所述处理装置接收的由目标用户输入的所述目标用户进行考勤打卡的用户隐私数据;所述公钥和所述私钥都由所述第一设备生成;
其中,所述交集结果用于指示出所述目标用户是否考勤打卡成功。
CN202111568694.5A 2021-12-21 2021-12-21 一种用户隐私数据的处理方法及处理装置 Pending CN114239031A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111568694.5A CN114239031A (zh) 2021-12-21 2021-12-21 一种用户隐私数据的处理方法及处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111568694.5A CN114239031A (zh) 2021-12-21 2021-12-21 一种用户隐私数据的处理方法及处理装置

Publications (1)

Publication Number Publication Date
CN114239031A true CN114239031A (zh) 2022-03-25

Family

ID=80760132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111568694.5A Pending CN114239031A (zh) 2021-12-21 2021-12-21 一种用户隐私数据的处理方法及处理装置

Country Status (1)

Country Link
CN (1) CN114239031A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115114666A (zh) * 2022-08-25 2022-09-27 天聚地合(苏州)科技股份有限公司 一种基于区块链的考勤数据隐私计算方法和***
CN115242464A (zh) * 2022-07-01 2022-10-25 浙江网商银行股份有限公司 一种业务处理方法、***、装置及设备
CN115396148A (zh) * 2022-07-22 2022-11-25 西安邮电大学 隐私保护的名单查询方法、***、介质、设备及终端
CN115544552A (zh) * 2022-11-29 2022-12-30 蓝象智联(杭州)科技有限公司 一种不暴露明文数据的相似性检测方法、装置及存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242464A (zh) * 2022-07-01 2022-10-25 浙江网商银行股份有限公司 一种业务处理方法、***、装置及设备
CN115242464B (zh) * 2022-07-01 2023-10-13 浙江网商银行股份有限公司 一种业务处理方法、***、装置及设备
CN115396148A (zh) * 2022-07-22 2022-11-25 西安邮电大学 隐私保护的名单查询方法、***、介质、设备及终端
CN115396148B (zh) * 2022-07-22 2024-04-12 西安邮电大学 隐私保护的名单查询方法、***、介质、设备及终端
CN115114666A (zh) * 2022-08-25 2022-09-27 天聚地合(苏州)科技股份有限公司 一种基于区块链的考勤数据隐私计算方法和***
CN115544552A (zh) * 2022-11-29 2022-12-30 蓝象智联(杭州)科技有限公司 一种不暴露明文数据的相似性检测方法、装置及存储介质

Similar Documents

Publication Publication Date Title
CN110138802B (zh) 用户特征信息获取方法、装置,区块链节点、网络,及存储介质
CN114239031A (zh) 一种用户隐私数据的处理方法及处理装置
TW202009776A (zh) 多方安全計算方法及裝置、電子設備
RU2376651C2 (ru) Использование изогений для разработки криптосистем
CN111510281B (zh) 一种同态加密方法及装置
CN103733564B (zh) 利用隐式证书链的数字签名
CN103765809B (zh) 隐式认证的公钥
CN106549751A (zh) 密钥交换装置及方法
US20170091485A1 (en) Method of obfuscating data
Qureshi et al. SeVEP: Secure and verifiable electronic polling system
CN110400162B (zh) 一种数据处理方法、装置、服务器及***
US10079675B2 (en) Generating cryptographic function parameters from a puzzle
CN106101150A (zh) 加密算法的实现方法和***
US20240143795A1 (en) Method and device for intersecting unbalanced private sets
Simmons Secure communications and asymmetric cryptosystems
CN114095181A (zh) 一种基于国密算法的门限环签名方法及***
Ali et al. RFID authentication scheme based on hyperelliptic curve signcryption
Diffie et al. New Directions in cryptography (1976)
Kumar et al. Overview of information security using genetic algorithm and chaos
Gong et al. Secure rational numbers equivalence test based on threshold cryptosystem with rational numbers
JP2011512762A (ja) 複数加入者ネットワークでの改竄、盗聴及びハッキングを不可能とするp2p通信方法
CN105099693B (zh) 一种传输方法及传输装置
Alkhzaimi Cryptanalysis of selected block ciphers
JPH02291740A (ja) 署名機能を持つ鍵配送方式
CN110401533A (zh) 一种私钥加密方法及装置

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