CN112953974B - 数据碰撞方法、装置、设备及计算机可读存储介质 - Google Patents
数据碰撞方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112953974B CN112953974B CN202110414455.8A CN202110414455A CN112953974B CN 112953974 B CN112953974 B CN 112953974B CN 202110414455 A CN202110414455 A CN 202110414455A CN 112953974 B CN112953974 B CN 112953974B
- Authority
- CN
- China
- Prior art keywords
- data
- key
- ciphertext data
- encryption algorithm
- participants
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及安全防护领域,提供了一种数据碰撞方法、装置、设备及计算机可读存储介质,该方法包括:获取多个参与方的第二密文数据和第一密钥,不同参与方的第一密钥不同;根据第二加密算法和每个参与方各自对应的第一密钥,对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据;确定多个参与方的第一密文数据的交集,并向每个参与方发送所述交集。本申请解决了在***露敏感数据的前提下,实现敏感数据的碰撞的问题。本申请还涉及区块链领域,上述计算机可读存储介质可存储根据区块链节点的使用所创建的数据。
Description
技术领域
本申请涉及安全防护领域,尤其涉及一种数据碰撞方法、装置、设备及计算机可读存储介质。
背景技术
随着网络化和数字化程度不断加深,大量涉及个人隐私、财产信息和行为轨迹等数据在互联网上存储和传输,保护数据安全的重要性不言而喻。对于企业而言,主要是对商业秘密和用户资料等敏感数据进行加密保护,在与其他企业进行某项业务合作时,利用这部分数据可以产生很大的业务价值,但出于敏感数据保护的目的,这部分数据往往不能明文传输给对方,当某些业务需要双方敏感数据进行数据碰撞时,这部分业务功能无法实现。
目前,主要是基于常用的加密算法将数据进行加密后用密文传输,但双方可以通过选用相同的加密算法得到密文进行数据碰撞,但任意一方都可以通过建立密文与明文的映射关系来反推出对方所传输的信息,这就造成了数据泄露的问题。因此,如何在***露敏感数据的前提下,实现敏感数据的碰撞是目前亟待解决的问题。
发明内容
本申请实施例提供一种数据碰撞方法、装置、设备及计算机可读存储介质,旨在***露敏感数据的前提下,实现敏感数据的碰撞。
第一方面,本申请实施例提供一种数据碰撞方法,包括:
获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据;
确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
第二方面,本申请实施例还提供一种数据碰撞方法,包括:
获取敏感数据明文、第一密钥和第二密钥,所述第一密钥与所述第二密钥不同;
根据第一加密算法对所述敏感数据明文进行加密,得到第一密文数据;
根据第二加密算法和所述第一密钥对所述第一密文数据进行加密,得到第二密文数据,所述第一加密算法与所述第二加密算法不同;
根据第三加密算法和所述第二密钥对所述敏感数据明文与所述第二密文数据之间的映射关系进行加密,得到映射关系密文数据;
向数据碰撞设备发送所述第二密文数据和所述第一密钥,以供所述数据碰撞设备根据所述第二加密算法和每个参与方的第一密钥,对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据,并确定所述多个参与方的第一密文数据的交集;
获取所述数据碰撞设备发送的所述交集,并根据所述第二加密算法和所述第一密钥对所述交集进行加密;
根据所述第三加密算法和所述第二密钥对所述映射关系密文数据进行解密,得到所述敏感数据明文与所述第二密文数据之间的映射关系明文;
根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
第三方面,本申请实施例还提供一种数据碰撞装置,所述数据碰撞装置包括:
获取模块,用于获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
数据碰撞模块,用于根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据;
所述数据碰撞模块,还用于确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
第四方面,本申请实施例还提供一种计算机设备,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上所述的数据碰撞方法的步骤。
第五方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上所述的数据碰撞方法的步骤。
本申请实施例提供一种数据碰撞方法、装置、设备及计算机可读存储介质,该方法通过获取多个参与方的第二密文数据和第一密钥,每个参与方的第一密钥不同,并根据加密算法和每个参与方的第一密钥对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据,然后确定多个参与方的第一密文数据的交集,并向每个参与方发送交集,由于在进行数据碰撞时,是针对密文数据进行的,且每个参与方的第一密钥不同,使得通过不同的第一密钥可以得到不同的密文数据,保证参与方之间的密文数据的隔离性,能够解决在***露敏感数据的前提下,实现敏感数据的碰撞的问题,提高敏感数据的安全性和共享流通。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据碰撞方法的流程示意图;
图2是实施本实施例提供的数据碰撞方法的一场景示意图;
图3是本申请实施例提供的另一种数据碰撞方法的流程示意图;
图4是本申请实施例提供的一种数据碰撞装置的示意性框图;
图5是图4中的数据碰撞装置的子模块的示意性框图;
图6是本申请实施例提供的一种计算机设备的结构示意性框图。
本申请目的的实现、功能特点及优点将结合实施例,参阅附图做进一步说明。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请实施例提供一种数据碰撞方法、装置、设备及计算机可读存储介质。其中,该数据碰撞方法可应用于数据碰撞设备或数据加密设备中,数据碰撞设备或数据加密设备可以为终端设备,也可以为服务器,该终端设备可以手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等,该数据碰撞方法也可以应用于服务器中,该服务器可以为单台的服务器,也可以为多台服务器组成的服务器集群。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请实施例提供的一种数据碰撞方法的流程示意图。该数据碰撞方法应用于数据碰撞设备,该数据碰撞设备可以为终端设备,也可以为服务器。
如图1所示,该数据碰撞方法包括步骤S101至步骤S103。
步骤S101、获取多个参与方的第二密文数据和第一密钥。
其中,参与方为敏感数据的持有方,第二密文数据是通过对敏感数据明文进行两次加密得到的。
示例性的,数据加密设备获取参与方输入的敏感数据明文、第一密钥和第二密钥,并生成随机密钥;根据随机密钥和第一加密算法对敏感数据明文进行加密,得到第一密文数据,并根据第二加密算法和第一密钥对第一密文数据进行加密,得到第二密文数据;根据第三加密算法和第二密钥对敏感数据明文与第二密文数据之间的映射关系进行加密,得到映射关系密文数据,存储第二密文数据和映射关系密文数据。例如,敏感数据明文为plain_id,基于第一加密算法和随机密钥对plain_id进行加密,得到第一密文数据tmp_secure_id,基于第二加密算法和第一密钥对tmp_secure_id进行加密,得到第二密文数据app_secure_id,根据第三加密算法和第二密钥对plain_id与app_secure_id之间的映射关系进行加密,得到映射关系密文数据secure_cypher_id_map。
其中,各参与方持有各自的数据加密设备,该数据加密设备可以为安装有数据加密程序的终端设备或服务器,通过该数据加密程序可以实现对敏感数据明文的加密,进而得到第二密文数据和映射关系密文,各参与方的第一密钥和第二密钥不同,第一加密算法与第二加密算法不同,第一加密算法可以为确定性加密算法中的任一种,第一加密算法包括但不限于MD5算法、SM3算法、SHA256算法、HMAC算法,例如,使用SM3算法对敏感数据明文进行加密,第二加密算法为格式保留加密算法中的任一种,第二加密算法包括但不限于FF1算法、FF3-1算法,例如,使用FF3-1算法和第一密钥对第一密文数据进行加密,第三加密算法可以为任意的公钥或私钥加密算法,第三加密算法包括但不限于RSA算法、SM2算法、ECC算法、AES算法、SM4算法、3DES算法,例如,使用SM2算法和第二密钥对敏感数据明文与第二密文数据之间的映射关系进行加密。
示例性的,敏感数据明文为plain_id,基于SHA256算法和随机密钥对plain_id进行加密,得到第一密文数据tmp_secure_id,基于FF1算法和第一密钥对tmp_secure_id进行加密,得到第二密文数据app_secure_id,根据RSA算法和第二密钥对plain_id与app_secure_id之间的映射关系进行加密,得到映射关系密文数据secure_cypher_id_map。
在一实施例中,数据碰撞设备从外部存储设备中获取多个参与方的第二密文数据和第一密钥。或者,数据碰撞设备接收多个数据加密设备发送的第二密文数据和第一密钥,一个数据加密设备发送一组第二密文数据和第一密钥,各参与方持有各自的数据加密设备。其中,该外部存储设备包括插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、优盘等。
步骤S102、根据第二加密算法和每个参与方各自对应的第一密钥,对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据。
例如,多个参与方包括第一参与方、第二参与方和第三参与方,第一参与方持有的第二密文数据和第一密钥分别为app_secure_id-1和key_1-1,第二参与方持有的第二密文数据和第一密钥分别为app_secure_id-2和key_1-2,第三参与方持有的第二密文数据和第一密钥分别为app_secure_id-3和key_1-3,因此,根据第二加密算法和key_1-1对app_secure_id-1进行解密,可以得到第一密文数据tmp_secure_id-1,根据第二加密算法和key_1-2对app_secure_id-2进行解密,可以得到第一密文数据tmp_secure_id-2,根据第二加密算法和key_1-3对app_secure_id-3进行解密,可以得到第一密文数据tmp_secure_id-3。
在一实施例中,将多个参与方的第二密文数据和第一密钥输入安全芯片,以供安全芯片根据第二加密算法和每个参与方各自对应的第一密钥,对各自对应的第二密文数据进行解密得到多个参与方的第一密文数据;获取安全芯片输出的多个参与方的第一密文数据。通过将多个参与方的第二密文数据和第一密钥输入安全芯片,由安全芯片进行解密,可以进一步的提高敏感数据的安全性。
步骤S103、确定多个参与方的第一密文数据的交集,并向每个参与方发送交集。
其中,参与方在接收到多个参与方的第一密文数据的交集后,基于第二加密算法和自己的第一密钥对该交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,根据加密后的交集,从该映射关系明文中获取对应的敏感数据明文。
在一实施例中,运行安全芯片内的数据碰撞程序对多个参与方的第一密文数据进行碰撞对比;获取安全芯片输出的碰撞对比结果,并根据碰撞对比结果确定多个参与方的第一密文数据的交集。其中,安全芯片内的数据碰撞程序可以根据各参与方的需求进行更新。通过安全芯片来对多个参与方的第一密文数据进行碰撞对比,并输出碰撞对比结果,可以进一步的保证敏感数据的安全性。
在一实施例中,将多个参与方的第二密文数据和第一密钥输入安全芯片,安全芯片根据第二加密算法和每个参与方各自对应的第一密钥,对各自对应的第二密文数据进行解密得到多个参与方的第一密文数据;运行安全芯片内的数据碰撞程序对多个参与方的第一密文数据进行碰撞对比;获取安全芯片输出的碰撞对比结果,并根据碰撞对比结果确定多个参与方的第一密文数据的交集。通过将多个参与方的第二密文数据和第一密钥输入安全芯片,由安全芯片完成解密过程和数据碰撞过程,输出碰撞对比结果,不输出中间结果,可以进一步的保证敏感数据的安全性。
在一实施例中,数据碰撞设备获取目标参与方发送的数据碰撞申请请求,该数据碰撞申请请求包括申请参与数据碰撞的多个其余参与方;向每个其余参与方发送授权申请信息,并获取每个其余参与方基于该授权申请信息发送的第二密文数据和第一密钥;从该数据碰撞申请请求中获取目标参与方的第二密文数据和第一密钥。其中,数据碰撞设备获取目标参与方持有的数据加密设备发送的数据碰撞申请请求,并向每个其余参与方持有的数据加密设备发送授权申请信息,数据加密设备输出该授权申请信息,若数据加密设备检测到参与方的授权确认指令时,将存储的第二密文数据和第一密钥发送给数据碰撞设备。
例如,如图2所示,数据加密设备21由第一参与方持有,数据加密设备22由第二参与方持有,数据加密设备23由第三参与方持有,当第一参与方想碰撞敏感数据时,通过数据加密设备21向数据碰撞设备10发送数据碰撞申请请求,数据碰撞设备10获取数据加密设备21发送的数据碰撞申请请求,该数据碰撞申请请求携带有数据加密设备22的IP地址和数据加密设备23的IP地址,数据碰撞设备10通过数据加密设备22的IP地址和数据加密设备23的IP地址向数据加密设备22和数据加密设备23发送授权申请信息;
数据加密设备22输出授权申请信息,数据加密设备22在检测到第二参与方触发的授权确认指令时,向数据碰撞设备10发送第二参与方持有的第二密文数据和第一密钥,数据加密设备23输出授权申请信息,数据加密设备23在检测到第三参与方触发的授权确认指令时,向数据碰撞设备10发送第二参与方持有的第二密文数据和第一密钥,数据碰撞设备10从数据碰撞申请请求中获取第一参与方持有的第二密文数据和第一密钥,获取数据加密设备22发送的第二参与方持有的第二密文数据和第一密钥,获取数据加密设备23发送的第三参与方持有的第二密文数据和第一密钥。
在一实施例中,数据碰撞设备向目标参与方发送多个参与方的第一密文数据的交集,目标参与方将多个参与方的第一密文数据的交集输入安全芯片进行解密,输出该交集对应的敏感数据明文。通过安全芯片来对多个参与方的第一密文数据的交集进行解密,可以进一步的提高敏感数据的安全性。例如,如图2所示,数据碰撞设备10向数据加密设备21发送多个参与方的第一密文数据的交集,数据加密设备21将多个参与方的第一密文数据的交集输入安全芯片进行解密,由安全芯片输出该交集对应的敏感数据明文。
上述实施例提供的数据碰撞方法,通过获取多个参与方的第二密文数据和第一密钥,每个参与方的第一密钥不同,并根据加密算法和每个参与方的第一密钥对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据,然后确定多个参与方的第一密文数据的交集,并向每个参与方发送交集,由于在进行数据碰撞时,是针对密文数据进行的,且每个参与方的第一密钥不同,使得通过不同的第一密钥可以得到不同的密文数据,保证参与方之间的密文数据的隔离性,能够解决在***露敏感数据的前提下,实现敏感数据的碰撞的问题,提高敏感数据的安全性和共享流通。
请参阅图3,图3是本申请实施例提供的另一种数据碰撞方法的流程示意图。该数据碰撞方法应用于数据加密设备,该数据加密设备与数据碰撞设备通信连接。
如图3所示,该数据碰撞方法包括步骤S201至S208。
步骤S201、获取敏感数据明文、第一密钥和第二密钥。
其中,该敏感数据明文可以包括客户信息、财产信息和行为轨迹等数据,客户信息包括客户的身份证号码、手机号码、银行卡密码、家庭住址等,第一密钥和第二密钥不同。
步骤S202、根据第一加密算法对敏感数据明文进行加密,得到第一密文数据。
其中,第一加密算法可以为确定性加密算法中的任一种,第一加密算法包括但不限于MD5算法、SM3算法、SHA256算法、HMAC算法。例如,敏感数据明文为plain_id,基于SM3算法对plain_id进行加密,得到第一密文数据tmp_secure_id。
步骤S203、根据第二加密算法和第一密钥对第一密文数据进行加密,得到第二密文数据。
其中,第二加密算法可以为格式保留加密算法中的任一种,第二加密算法包括但不限于FF1算法、FF3-1算法。例如,基于FF1算法和第一密钥对tmp_secure_id进行加密,得到第二密文数据app_secure_id。
步骤S204、根据第三加密算法和第二密钥对敏感数据明文与第二密文数据之间的映射关系进行加密,得到映射关系密文数据。
其中,第三加密算法可以为任意的公钥或私钥加密算法,包括但不限于RSA算法、SM2算法、ECC算法、AES算法、SM4算法、3DES算法。例如,根据AES算法和第二密钥对plain_id与app_secure_id之间的映射关系进行加密,得到映射关系密文数据secure_cypher_id_map。存储第二密文数据、第一密钥和映射关系密文数据。
步骤S205、向数据碰撞设备发送第二密文数据和第一密钥。
示例性的,获取目标参与方触发的数据碰撞申请指令,获取目标参与方的第二密文数据、第一密钥和参与数据碰撞的其余参与方的IP地址,并生成携带有第二密文数据、第一密钥和参与数据碰撞的其余参与方的IP地址的数据碰撞申请请求,然后向数据碰撞设备发送该数据碰撞申请请求,数据碰撞设备从该数据碰撞申请请求中获取目标参与方的第二密文数据和第一密钥,并基于其余参与方的IP地址向其余参与方发送授权申请信息,并获取其余参与方基于该授权申请信息发送的第二密文数据和第一密钥。
在一实施例中,数据碰撞设备将接收到的每个参与方的第二密文数据和第一密钥输入安全芯片,安全芯片根据第二加密算法和每个参与方各自对应的第一密钥,对各自对应的第二密文数据进行解密得到多个参与方的第一密文数据;安全芯片运行数据碰撞程序对多个参与方的第一密文数据进行碰撞对比;获取安全芯片输出的碰撞对比结果,并根据碰撞对比结果确定多个参与方的第一密文数据的交集,然后向目标参与方发送多个参与方的第一密文数据的交集。
步骤S206、获取数据碰撞设备发送的交集,并根据第二加密算法和第一密钥对交集进行加密。
数据加密设备获取数据碰撞设备发送的多个参与方的第一密文数据的交集,并根据第二加密算法和自身的第一密钥对多个参与方的第一密文数据的交集进行加密。
步骤S207、根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到敏感数据明文与第二密文数据之间的映射关系明文。
其中,第三加密算法可以为任意的公钥或私钥加密算法,包括但不限于RSA算法、SM2算法、ECC算法、AES算法、SM4算法、3DES算法。通过第三加密算法和第二密钥对之前存储的映射关系密文数据进行解密,可以得到敏感数据明文与第二密文数据之间的映射关系明文。
步骤S208、根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
在得到敏感数据明文与第二密文数据之间的映射关系明文后,可以根据加密后的交集,从敏感数据明文与第二密文数据之间的映射关系明文中获取对应的敏感数据明文。
请参阅图4,图4是本申请实施例提供的一种数据碰撞装置的示意性框图。
如图4所示,该数据碰撞装置300,包括:获取模块310和数据碰撞模块320,其中:
所述获取模块310,用于获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
所述数据碰撞模块320,用于根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据。
所述数据碰撞模块320,还用于确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
在一实施例中,如图5所示,所述数据碰撞模块320包括输入子模块321、安全芯片322和获取子模块323,其中:
所述输入子模块321,用于将所述多个参与方的第二密文数据和第一密钥输入安全芯片322;
所述安全芯片322,用于根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密得到所述多个参与方的第一密文数据;
所述获取子模块323,用于获取所述安全芯片322输出的所述多个参与方的第一密文数据。
在一实施例中,所述安全芯片322,还用于运行数据碰撞程序对所述多个参与方的第一密文数据进行碰撞对比;
所述获取子模块323,还用于获取所述安全芯片输出的碰撞对比结果,并根据所述碰撞对比结果确定所述多个参与方的第一密文数据的交集。
在一实施例中,所述获取模块310,还用于:
获取目标参与方发送的数据碰撞申请请求,所述数据碰撞申请请求包括申请参与数据碰撞的多个其余参与方;
向每个所述其余参与方发送授权申请信息,并获取每个所述其余参与方基于所述授权申请信息发送的第二密文数据和第一密钥;
从所述数据碰撞申请请求中获取所述目标参与方的第二密文数据和第一密钥。
在一实施例中,所述数据碰撞装置还包括发送模块,所述发送模块,用于:
向所述目标参与方发送所述交集,以供所述目标参与方将所述交集输入安全芯片进行解密,得到所述交集对应的敏感数据明文。
在一实施例中,所述第一加密算法为确定性加密算法,所述第一加密算法包括:MD5算法、SM3算法、SHA256算法、HMAC算法;
所述第二加密算法为格式保留加密算法,所述第二加密算法包括:FF1算法、FF3-1算法。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块及单元的具体工作过程,可以参考前述数据碰撞方法实施例中的对应过程,在此不再赘述。
上述实施例提供的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图6所示的计算机设备上运行。
请参阅图6,图6是本申请实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以为数据碰撞设备或数据加密设备。
如图6所示,该计算机设备包括通过***总线连接的处理器、存储器和网络接口,其中,存储器可以包括存储介质和内存储器。
存储介质可存储操作***和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种数据碰撞方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种数据碰撞方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据。
确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
在一实施例中,所述处理器在实现根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据时,用于实现:
将所述多个参与方的第二密文数据和第一密钥输入安全芯片;
通过所述安全芯片根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密得到所述多个参与方的第一密文数据;
获取所述安全芯片输出的所述多个参与方的第一密文数据。
在一实施例中,所述处理器在实现确定所述多个参与方的第一密文数据的交集时,用于实现:
运行所述安全芯片内的数据碰撞程序对所述多个参与方的第一密文数据进行碰撞对比;
获取所述安全芯片输出的碰撞对比结果,并根据所述碰撞对比结果确定所述多个参与方的第一密文数据的交集。
在一实施例中,所述处理器在实现获取多个参与方的第二密文数据和第一密钥时,用于实现:
获取目标参与方发送的数据碰撞申请请求,所述数据碰撞申请请求包括申请参与数据碰撞的多个其余参与方;
向每个所述其余参与方发送授权申请信息,并获取每个所述其余参与方基于所述授权申请信息发送的第二密文数据和第一密钥;
从所述数据碰撞申请请求中获取所述目标参与方的第二密文数据和第一密钥。
其中,在一实施例中,所述处理器还用于实现如下步骤:
向所述目标参与方发送所述交集,以供所述目标参与方将所述交集输入安全芯片进行解密,得到所述交集对应的敏感数据明文。
在一实施例中,所述第一加密算法为确定性加密算法,所述第一加密算法包括:MD5算法、SM3算法、SHA256算法、HMAC算法;
所述第二加密算法为格式保留加密算法,所述第二加密算法包括:FF1算法、FF3-1算法。
在一实施例中,所述处理器还用于实现如下步骤:
获取敏感数据明文、第一密钥和第二密钥,所述第一密钥与所述第二密钥不同;
根据第一加密算法对所述敏感数据明文进行加密,得到第一密文数据;
根据第二加密算法和所述第一密钥对所述第一密文数据进行加密,得到第二密文数据,所述第一加密算法与所述第二加密算法不同;
根据第三加密算法和所述第二密钥对所述敏感数据明文与所述第二密文数据之间的映射关系进行加密,得到映射关系密文数据;
向数据碰撞设备发送所述第二密文数据和所述第一密钥,以供所述数据碰撞设备根据所述第二加密算法和每个参与方的第一密钥,对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据,并确定所述多个参与方的第一密文数据的交集;
获取所述数据碰撞设备发送的所述交集,并根据所述第二加密算法和所述第一密钥对所述交集进行加密;
根据所述第三加密算法和所述第二密钥对所述映射关系密文数据进行解密,得到所述敏感数据明文与所述第二密文数据之间的映射关系明文;
根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的计算机设备的具体工作过程,可以参考前述数据碰撞方法实施例中的对应过程,在此不再赘述。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序中包括程序指令,所述程序指令被执行时所实现的方法可参阅本申请数据碰撞方法的各个实施例。
其中,所述计算机可读存储介质可以是易失性的,也可以是非易失性的。所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种数据碰撞方法,其特征在于,包括:
获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据;
确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,所述参与方根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
2.根据权利要求1所述的数据碰撞方法,其特征在于,所述根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据,包括:
将所述多个参与方的第二密文数据和第一密钥输入安全芯片;
通过所述安全芯片根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密得到所述多个参与方的第一密文数据。
3.根据权利要求2所述的数据碰撞方法,其特征在于,所述确定所述多个参与方的第一密文数据的交集,包括:
运行所述安全芯片内的数据碰撞程序对所述多个参与方的第一密文数据进行碰撞对比;
获取所述安全芯片输出的碰撞对比结果,并根据所述碰撞对比结果确定所述多个参与方的第一密文数据的交集。
4.根据权利要求1所述的数据碰撞方法,其特征在于,所述获取多个参与方的第二密文数据和第一密钥,包括:
获取目标参与方发送的数据碰撞申请请求,所述数据碰撞申请请求包括申请参与数据碰撞的多个其余参与方;
向每个所述其余参与方发送授权申请信息,并获取每个所述其余参与方基于所述授权申请信息发送的第二密文数据和第一密钥;
从所述数据碰撞申请请求中获取所述目标参与方的第二密文数据和第一密钥。
5.根据权利要求4所述的数据碰撞方法,其特征在于,所述方法还包括:
向所述目标参与方发送所述交集,以供所述目标参与方将所述交集输入安全芯片进行解密,得到所述交集对应的敏感数据明文。
6.根据权利要求1-5任一项所述的数据碰撞方法,其特征在于,所述第一加密算法为确定性加密算法,所述第一加密算法包括:MD5算法、SM3算法、SHA256算法或HMAC算法;
所述第二加密算法为格式保留加密算法,所述第二加密算法包括:FF1算法或FF3-1算法。
7.一种数据碰撞方法,其特征在于,包括:
获取敏感数据明文、第一密钥和第二密钥,所述第一密钥与所述第二密钥不同;
根据第一加密算法对所述敏感数据明文进行加密,得到第一密文数据;
根据第二加密算法和所述第一密钥对所述第一密文数据进行加密,得到第二密文数据,所述第一加密算法与所述第二加密算法不同;
根据第三加密算法和所述第二密钥对所述敏感数据明文与所述第二密文数据之间的映射关系进行加密,得到映射关系密文数据;
向数据碰撞设备发送所述第二密文数据和所述第一密钥,以供所述数据碰撞设备根据所述第二加密算法和每个参与方的第一密钥,对各自对应的第二密文数据进行解密,得到多个参与方的第一密文数据,并确定所述多个参与方的第一密文数据的交集;
获取所述数据碰撞设备发送的所述交集,并根据所述第二加密算法和所述第一密钥对所述交集进行加密;
根据所述第三加密算法和所述第二密钥对所述映射关系密文数据进行解密,得到所述敏感数据明文与所述第二密文数据之间的映射关系明文;
根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
8.一种数据碰撞装置,其特征在于,所述数据碰撞装置包括:
获取模块,用于获取多个参与方的第二密文数据和第一密钥,其中,所述参与方根据第一加密算法对敏感数据明文进行加密得到第一密文数据,并根据第二加密算法和所述第一密钥对所述第一密文数据进行加密得到所述第二密文数据,所述第一加密算法与所述第二加密算法不同,不同参与方的所述第一密钥不同;
数据碰撞模块,用于根据所述第二加密算法和每个所述参与方各自对应的第一密钥,对各自对应的所述第二密文数据进行解密,得到所述多个参与方的第一密文数据;
所述数据碰撞模块,还用于确定所述多个参与方的第一密文数据的交集,并向每个所述参与方发送所述交集,其中,所述参与方基于所述第二加密算法和所述第一密钥对所述交集进行加密,并根据第三加密算法和第二密钥对映射关系密文数据进行解密,得到第二密文数据与敏感数据明文之间的映射关系明文,所述参与方根据加密后的交集,从所述映射关系明文中获取对应的敏感数据明文。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至7中任一项所述的数据碰撞方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的数据碰撞方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110414455.8A CN112953974B (zh) | 2021-04-16 | 2021-04-16 | 数据碰撞方法、装置、设备及计算机可读存储介质 |
PCT/CN2021/097417 WO2022217714A1 (zh) | 2021-04-16 | 2021-05-31 | 数据碰撞方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110414455.8A CN112953974B (zh) | 2021-04-16 | 2021-04-16 | 数据碰撞方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112953974A CN112953974A (zh) | 2021-06-11 |
CN112953974B true CN112953974B (zh) | 2022-06-10 |
Family
ID=76232968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110414455.8A Active CN112953974B (zh) | 2021-04-16 | 2021-04-16 | 数据碰撞方法、装置、设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112953974B (zh) |
WO (1) | WO2022217714A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259106B (zh) * | 2021-06-28 | 2021-09-24 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法和*** |
CN114095157B (zh) * | 2021-10-29 | 2023-10-24 | 上海浦东发展银行股份有限公司 | 密钥管理方法、装置、计算机设备及可读存储介质 |
CN115860017B (zh) * | 2023-02-14 | 2023-07-14 | 紫光同芯微电子有限公司 | 一种数据处理方法和相关装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3625720B1 (en) * | 2017-05-18 | 2023-12-13 | Visa International Service Association | Reducing compromise of sensitive data in virtual machine |
ES2878574T3 (es) * | 2017-05-30 | 2021-11-19 | Be Invest Int Sa | Método general de protección de datos para almacenamiento y uso compartido de datos confidenciales multicéntricos |
CN109933995B (zh) * | 2019-01-31 | 2023-04-07 | 广州中国科学院软件应用技术研究所 | 一种基于云服务及区块链的用户敏感数据保护及*** |
CN111555880B (zh) * | 2019-02-12 | 2023-05-30 | 北京京东尚科信息技术有限公司 | 数据碰撞方法、装置、存储介质及电子设备 |
CN110061845A (zh) * | 2019-03-14 | 2019-07-26 | 深圳壹账通智能科技有限公司 | 区块链数据加密方法、装置、计算机设备及存储介质 |
CN111177762B (zh) * | 2019-12-30 | 2022-11-08 | 北京同邦卓益科技有限公司 | 一种数据处理方法、装置、服务器及联邦学习*** |
CN111416702B (zh) * | 2020-03-09 | 2023-09-12 | 上海数据交易中心有限公司 | 数据传输方法及数据传输***、计算机可读存储介质 |
CN111552736A (zh) * | 2020-03-30 | 2020-08-18 | 深圳壹账通智能科技有限公司 | 加密数据对等关系比对方法、装置及存储介质 |
-
2021
- 2021-04-16 CN CN202110414455.8A patent/CN112953974B/zh active Active
- 2021-05-31 WO PCT/CN2021/097417 patent/WO2022217714A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN112953974A (zh) | 2021-06-11 |
WO2022217714A1 (zh) | 2022-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112953974B (zh) | 数据碰撞方法、装置、设备及计算机可读存储介质 | |
US9609024B2 (en) | Method and system for policy based authentication | |
CN110457945B (zh) | 名单查询的方法、查询方设备、服务方设备及存储介质 | |
CN110100422B (zh) | 基于区块链智能合约的数据写入方法、装置及存储介质 | |
CN107078899B (zh) | 混淆数据的方法 | |
Louk et al. | Homomorphic encryption in mobile multi cloud computing | |
US10887085B2 (en) | System and method for controlling usage of cryptographic keys | |
CN107948152A (zh) | 信息存储方法、获取方法、装置及设备 | |
CN114124343B (zh) | 保护隐私的风险评分信息查询方法、装置、***及设备 | |
WO2021218278A1 (zh) | 数据处理的方法以及计算设备 | |
CN111294203A (zh) | 信息传输方法 | |
CN111917711B (zh) | 数据访问方法、装置、计算机设备和存储介质 | |
WO2021114885A1 (zh) | 敏感信息保护方法、装置、计算设备及存储介质 | |
CN111666558B (zh) | 密钥轮换方法、装置、计算机设备及存储介质 | |
CN111008400A (zh) | 数据处理方法、装置及*** | |
CN112699390B (zh) | 数据处理方法、装置、电子设备、存储介质及程序产品 | |
Kaushik et al. | Secure cloud data using hybrid cryptographic scheme | |
Reedy et al. | A Secure Framework for Ensuring EHR's Integrity Using Fine-Grained Auditing and CP-ABE | |
CN114357472B (zh) | 数据的打标签方法、***、电子设备和可读存储介质 | |
CN115412365A (zh) | 基于多层加密的数据隐私保护方法 | |
CN113810178B (zh) | 密钥管理方法、装置、***及存储介质 | |
CN114553557A (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
Malik et al. | Cloud computing security improvement using Diffie Hellman and AES | |
CN113434890A (zh) | 数据查询方法及***、可读存储介质 | |
CN105515760A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |