WO2021196478A1 - 加密数据对等关系比对方法、装置、计算机设备及存储介质 - Google Patents

加密数据对等关系比对方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
WO2021196478A1
WO2021196478A1 PCT/CN2020/106018 CN2020106018W WO2021196478A1 WO 2021196478 A1 WO2021196478 A1 WO 2021196478A1 CN 2020106018 W CN2020106018 W CN 2020106018W WO 2021196478 A1 WO2021196478 A1 WO 2021196478A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameter
comparison request
participant
comparison
encrypted data
Prior art date
Application number
PCT/CN2020/106018
Other languages
English (en)
French (fr)
Inventor
陆陈一帆
来学嘉
贾牧
张鹏程
谢丹力
Original Assignee
深圳壹账通智能科技有限公司
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 深圳壹账通智能科技有限公司 filed Critical 深圳壹账通智能科技有限公司
Publication of WO2021196478A1 publication Critical patent/WO2021196478A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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

Definitions

  • This application relates to the field of asymmetric encryption technology, and in particular to a method, device, computer equipment, and storage medium for comparing encrypted data peer-to-peer relationships.
  • Zero-Knowledge Proof (Zero-Knowledge Proof) was proposed by S. Gold wasser, S. Micali and C. Rackoff in the early 1980s. It refers to the ability of the prover to convince the verifier that a certain assertion is correct without providing any useful information to the verifier.
  • Zero-knowledge proof is essentially an agreement involving two or more parties, that is, a series of steps that two or more parties need to take to complete a task. The prover proves to the verifier and makes it believe that he knows or possesses a certain message, but the certification process cannot disclose any information about the certified message to the verifier.
  • this application provides a method, device, computer equipment, and storage medium for comparing encrypted data peer-to-peer relationships, the main purpose of which is to solve at least one of the above technical problems.
  • this application provides a method for comparing encrypted data peer-to-peer relationships, which includes:
  • the first participant initiates an encrypted data comparison request for the first original data a and the second original data b to the second participant, where the first participant is the participant who requires the comparison and uses the second key y to pair
  • the second original data b is encrypted to obtain the second encrypted data [b]; in order to provide a comparison participant, the second participant uses the first key x to encrypt the first original data a to obtain the first Encrypted data [a];
  • the second participant After receiving the encrypted data comparison request, the second participant sends a comparison request parameter to the first participant, where the comparison request parameter is based on the first encrypted data [a], the first Two encrypted data [b] and randomly generated first secret parameter ⁇ are obtained; and
  • the first participant checks whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • this application also provides a device for comparing encrypted data peer-to-peer relationships, wherein the device includes:
  • the initiation module is used by the first participant to initiate an encrypted data comparison request for the first original data a and the second original data b to the second participant, wherein the first participant is the participant who requires the comparison and uses the first
  • the second key y encrypts the second original data b to obtain the second encrypted data [b]; in order to provide a comparison participant, the second participant uses the first key x to encrypt the first original data a Obtain the first encrypted data after encryption [a];
  • the generating module is configured to send a comparison request parameter to the first participant after the second participant receives the encrypted data comparison request, wherein the comparison request parameter is based on the first encrypted data [a ], the second encrypted data [b] and the randomly generated first secret parameter ⁇ are obtained;
  • the comparison verification module is used for the first participant to check whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • the present application also provides a computer device, including a memory and a processor, and a computer program is stored on the memory, wherein the processor implements the following steps when the processor executes the computer program:
  • the first participant initiates an encrypted data comparison request for the first original data a and the second original data b to the second participant, where the first participant is the participant who requires the comparison and uses the second key y to pair
  • the second original data b is encrypted to obtain the second encrypted data [b]; in order to provide a comparison participant, the second participant uses the first key x to encrypt the first original data a to obtain the first Encrypted data [a];
  • the second participant After receiving the encrypted data comparison request, the second participant sends a comparison request parameter to the first participant, where the comparison request parameter is based on the first encrypted data [a], the first Two encrypted data [b] and randomly generated first secret parameter ⁇ are obtained; and
  • the first participant checks whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • the present application also provides a computer-readable storage medium that stores an encrypted data peer-to-peer relationship comparison system, and the encrypted data peer-to-peer relationship comparison system can be At least one processor executes, so that the at least one processor executes the following steps:
  • the first participant initiates an encrypted data comparison request for the first original data a and the second original data b to the second participant, where the first participant is the participant who requires the comparison and uses the second key y to pair
  • the second original data b is encrypted to obtain the second encrypted data [b]; in order to provide a comparison participant, the second participant uses the first key x to encrypt the first original data a to obtain the first Encrypted data [a];
  • the second participant After receiving the encrypted data comparison request, the second participant sends a comparison request parameter to the first participant, where the comparison request parameter is based on the first encrypted data [a], the first Two encrypted data [b] and randomly generated first secret parameter ⁇ are obtained; and
  • the first participant checks whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • the comparison participant In the encryption data peer-to-peer relationship comparison method, device, computer equipment and storage medium proposed in this application, the comparison participant is required to check whether the two original data are equal without knowing the original data provided by the comparison participant. It meets the requirements of high performance (simple and effective inspection method), low network transmission consumption (simple transmission parameters, small data volume), and achievement of active security standards, and can be widely used in a variety of applications including blockchain and cloud storage Scenes.
  • FIG. 1 is a flowchart of a preferred embodiment of a method for comparing peer-to-peer relationships of encrypted data in this application;
  • FIG. 2 is a detailed flowchart of step S3 in FIG. 1;
  • FIG. 3 is a detailed flowchart of step S30 in FIG. 2;
  • FIG. 4 is a detailed flowchart of step S32 in FIG. 2;
  • FIG. 5 is a schematic diagram of modules of a device for comparing peer-to-peer relationships of encrypted data in this application;
  • FIG. 6 is a schematic diagram of the hardware architecture of the computer equipment of this application.
  • Independent data storage system refers to third-party platforms such as blockchain networks, distributed databases, cloud servers, and distributed systems.
  • Public data storage system it can be cloud storage or blockchain network.
  • the public data storage system is mainly used to store public parameters (basis points), and can also store parameters related to the zero-knowledge proof protocol.
  • one or more trusted third parties must first create base points g, h, and i and upload them to the public data storage system.
  • the base point g is a public parameter
  • the base point h and the base point i are set by a trusted third party or by multiple trusted third parties' own platforms through the network (such as the Internet, blockchain network) collaboratively set and uploaded to the public In the data storage system.
  • G1 and G2 are primitive groups. In the bilinear mapping algorithm, G1 and G2 can be the same group or different groups. This application does not distinguish between the original groups G1 and G2.
  • gt is the mapping group base point corresponding to the base point g of the original group.
  • Primitive group and mapping group Any point on the original group can be mapped to the point of the corresponding mapping group through bilinear mapping.
  • the three points g, h, and i are the base points of the original group and are generated on the original group.
  • gt is the mapping from the original group base point g to the mapping group
  • ht is the mapping from the original group base point h to the mapping group
  • it is the mapping from the original group base point i to the mapping group.
  • Parameter label definition The traditional label is used in this application, and the parameter created by the base point g and the secret data ⁇ is expressed with the label g ⁇ x.
  • the corresponding elliptic curve label is ⁇ G, where G represents the base point on the elliptic curve.
  • , in the discrete logarithm problem There is h g ⁇ n in the operation of, where g is the basis. Due to the complexity of the discrete logarithm problem, it is difficult to calculate the value of the integer n when h and g are known. Therefore, the calculation environment involved in this application is based on calculations on an elliptic curve. In an elliptic curve, the basis is a point, not a number.
  • the third party has no way to find the corresponding points of the original group G1 or G2 corresponding to the data gt ⁇ z set by the mapping group gt (for example, g1 ⁇ z and g2 ⁇ z).
  • This application provides a method for comparing encrypted data peer-to-peer relationships.
  • FIG. 1 it is a flowchart of a preferred embodiment of a method for comparing a peer-to-peer relationship between encrypted data of this application.
  • the execution order of the steps in the flowchart shown in FIG. 1 can be changed, and some steps can be omitted.
  • the method includes the steps:
  • S1 The first participant initiates an encrypted data comparison request to the second participant.
  • the first participant is a participant requiring comparison
  • the second participant is a participant providing comparison, both of which are the independent data storage system.
  • the first encrypted data [a] and the second encrypted data [b] can be on a public storage, such as a public cloud or a blockchain network, and participants can also transfer the first encrypted data [a] and The second encrypted data [b].
  • the comparison participant is required to know whether the first original data a corresponding to the first encrypted data [a] of the other party (providing the comparison participant) and the second original data b corresponding to the second encrypted data [b] of the other party are equal, An encrypted data comparison request will be initiated to the participant who provides the comparison.
  • the second participant After receiving the encrypted data comparison request, the second participant sends the comparison request parameters to the first participant.
  • the comparison request parameter is obtained according to the first encrypted data [a], the second encrypted data [b] and the randomly generated first secret parameter ⁇ .
  • the comparison participant receives the encrypted data comparison request sent by the comparison participant, if they agree to the comparison, the first comparison request parameter [a'] and the second comparison request parameter [ b'], the four parameters of the third comparison request parameter v11 and the fourth comparison request parameter v12 are sent to the participants requesting the comparison. in:
  • (1) Provide the comparison participants to randomly generate the first secret parameter ⁇ , and then use the first secret parameter ⁇ to change the first encrypted data [a] according to the first formula to obtain the first comparison request parameter [a'].
  • the first formula is:
  • the fourth formula is:
  • the attacker can obtain the first original data a in the following way :
  • S3 The first participant checks whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • the comparison participants are required to receive the first comparison request parameter [a'], the second comparison request parameter [b'], the third comparison request parameter v11, and the fourth comparison After requesting parameter v12, it can be verified through the following process:
  • the fifth formula may also be directly completed by the participant providing the comparison and then transmitted to the participant requesting the comparison. That is, step S300 can be performed in the parties that provide the comparison.
  • the first original data a and the first secret parameter ⁇ are obtained at the base point gt of the mapping group The product of gt ⁇ a ⁇ .
  • the sixth formula is:
  • step S32 the product of the second original data b and the first secret parameter ⁇ on the base point gt of the mapping group (second product) is calculated. Further referring to Figure 4, this step specifically includes:
  • S320 Convert the second comparison request parameter [b'] to the mapping group base points gt and ht according to the seventh formula.
  • the seventh formula is:
  • the seventh formula may also be directly completed by the participant providing the comparison and then transmitted to the participant requesting the comparison. That is, step S320 can be performed in the parties that provide the comparison.
  • step S34 by comparing the first product and the second product, it is checked whether the first original data a and the second original data b are equal.
  • the comparison participants are required to compare the product gt ⁇ a ⁇ of the first original data a and the first secret parameter ⁇ on the base point gt of the mapping group, and the second original data b and the first secret parameter ⁇ according to the tenth formula.
  • the product gt ⁇ b ⁇ at the base point gt of the mapping group is used to compare whether the first original data a and the second original data b are equal.
  • the tenth formula is:
  • the second participant also needs to know whether the first original data a corresponding to the first encrypted data [a] and the second original data b corresponding to the second encrypted data [b] are equal, it can be the same as in the above process.
  • the first participant exchanges roles, and initiates an encrypted data comparison request to the first participant according to the above process.
  • the two parties involved in the comparison first use their own keys (x, y) to encrypt the data (a, b) that need to be compared.
  • the comparison participants are provided Randomly create a secret parameter ( ⁇ ), and use the secret parameter to change the encrypted promised data ([a]) that needs to be compared and the promised encrypted data ([b]) that requires the comparison participants to encrypt at the same time, and then provide
  • the comparison request parameters (v11, v12) of the promised encrypted data ([a'], [b']) can be eliminated.
  • the comparison participants are required to eliminate the modified promised encrypted data according to the comparison request parameters, and obtain two comparison encrypted data (gt ⁇ a ⁇ , gt ⁇ b ⁇ ) after the secret parameter has been modified.
  • the modified comparison encrypted data is doped with secret parameters, it is required that the comparison participant cannot know the original data value (a) corresponding to the committed encrypted data provided by the comparison participant.
  • the two comparative encrypted data are modified by the same method with the same secret parameters, if they are the same, the two original data (a, b) must be the same. Therefore, it is required that the comparison participant can check whether the two original data are equal without knowing the original data provided by the comparison participant.
  • the embodiments of this application can fully meet the requirements of high performance (simple and effective inspection method), low network transmission consumption (simple transmission parameters, small data volume), and reaching active safety standards, and can be widely applied to include blockchain and cloud storage A variety of application scenarios.
  • FIG. 5 is a schematic diagram of modules of an encrypted data peer-to-peer relationship comparison device 20 provided by an embodiment of the present application.
  • the device includes: an initiation module 201, a generation module 202, and a comparison and verification module 203.
  • the initiation module 201 is used for the first participant to initiate an encrypted data comparison request for the first original data a and the second original data b to the second participant.
  • the second key y encrypts the second original data b to obtain the second encrypted data [b]; in order to provide a comparison participant, the second participant uses the first key x to encrypt the first original data a Get the first encrypted data after encryption [a];
  • the generating module 202 is configured to send a comparison request parameter to the first participant after the second participant receives the encrypted data comparison request, where the comparison request parameter is based on the first encrypted data [ a], the second encrypted data [b] and the randomly generated first secret parameter ⁇ are obtained; and
  • the comparison verification module 203 is used for the first participant to check whether the first original data a and the second original data b are equal according to the comparison request parameter.
  • FIG. 6 is a schematic diagram of the hardware architecture of the computer equipment of this application.
  • the computer device 1 is applicable to the above encryption data peer-to-peer relationship comparison method.
  • the computer device 1 includes a memory 11, a processor 12, and a network interface 13.
  • the memory 11 includes at least one type of readable storage medium.
  • the readable storage medium may be non-volatile or volatile.
  • the readable storage medium includes flash memory, hard disk, multimedia card, and card type. Storage (for example, SD or DX storage, etc.), magnetic storage, magnetic disk, optical disk, etc.
  • the memory 11 may be an internal storage unit of the computer device 1 in some embodiments, such as a hard disk of the computer device 1.
  • the memory 11 may also be an external storage device of the computer device 1, such as a plug-in hard disk, a smart media card (SMC), and a secure digital (Secure Digital) equipped on the computer device 1. , SD) card, flash card (Flash Card), etc.
  • the memory 11 may also include both an internal storage unit of the computer device 1 and an external storage device.
  • the memory 11 can be used not only to store application software and various data installed in the computer device 1, for example, the program code of the encrypted data peer-to-peer relationship comparison system 10 corresponding to the encrypted data peer-to-peer relationship comparison method, etc., It can also be used to temporarily store data that has been output or will be output.
  • the processor 12 may be a central processing unit (CPU), controller, microcontroller, microprocessor, or other data processing chip, for running program codes or processing stored in the memory 11
  • the data for example, the program code of the encrypted data peer-to-peer relationship comparison system 10 corresponding to the encrypted data peer-to-peer relationship comparison method.
  • the network interface 13 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface), and is usually used to establish a communication connection between the computer device 1 and other electronic devices.
  • the components 11-13 of the computer device 1 communicate with each other via a communication bus.
  • FIG. 6 only shows the computer device 1 with components 11-13. Those skilled in the art can understand that the structure shown in FIG. 5 does not constitute a limitation on the computer device 1, and may include less or more Multiple components, or a combination of certain components, or different component arrangements.
  • the specific implementation of the computer device of the present application is substantially the same as the specific implementation of the encrypted data peer-to-peer relationship comparison method, and will not be repeated here.
  • the embodiment of the present application also proposes a computer-readable storage medium.
  • the computer-readable storage medium may be non-volatile or volatile.
  • the computer-readable storage medium includes the encrypted data
  • the program code of the encrypted data peer-to-peer relationship comparison system 10 corresponding to the peer-to-peer relationship comparison method, and the program code of the encrypted data peer-to-peer relationship comparison system 10 corresponding to the encrypted data peer-to-peer relationship comparison method is processed The steps of the encryption data peer-to-peer relationship comparison method are implemented when the device is executed.

Landscapes

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

Abstract

一种加密数据对等关系比对方法、装置、计算机设备及存储介质,涉及非对称加密技术,该方法包括:第一参与方向第二参与方发起加密数据比对请求(S1);第二参与方在收到加密数据比对请求后,向第一参与方发送比对请求参数(S2),其中,所述比对请求参数为根据第一加密数据[a]、第二加密数据[b]和随机生成的第一秘密参数α得到;第一参与方根据所述比对请求参数检验第一原始数据a和第二原始数据b是否相等(S3)。该方法可以使第一参与方在不知道第二参与方的原始数据的情况下检验两个原始数据是否相等,满足性能高效、网络传递消耗低以及达到主动安全标准等需求。

Description

加密数据对等关系比对方法、装置、计算机设备及存储介质
本申请要求于2020年3月30日提交中国专利局、申请号为202010235591.6、名称为“加密数据对等关系比对方法、装置及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及非对称加密技术领域,尤其涉及一种加密数据对等关系比对方法、装置、计算机设备及存储介质。
背景技术
零知识证明(Zero—Knowledge Proof),是由S.Gold wasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。
目前,在零知识证明中,发明人意识到检测两个由不同参与方的密钥加密的数据是否相等的密码学公式存在种种问题,有的依赖不成熟安全假设,有的性能低下,有的需要传递大量参数消耗网络。由于上述这些问题,现有的检测方式都没有太多工业价值。
因此,如何在检测两个由不同参与方的密钥加密的数据是否相等时,满足性能高效、网络传递消耗低、达到主动安全(Active Security)标准等需求,已经成为一个亟待解决的技术问题。
发明内容
鉴于以上内容,本申请提供一种加密数据对等关系比对方法、装置、计算机设备及存储介质,其主要目的在于解决至少一个上述技术问题。
为实现上述目的,本申请提供一种加密数据对等关系比对方法,该方法包括:
第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
为实现上述目的,本申请还提供一种加密数据对等关系比对装置,其中,该装置包括:
发起模块,用于第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
生成模块,用于第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
比对校验模块,用于第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
此外,为实现上述目的,本申请还提供一种计算机设备,包括存储器、处理器,所述存储器上储存有计算机程序,其中,所述处理器执行所述计算机程序时实现如下步骤:
第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
进一步地,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有加密数据对等关系比对***,所述加密数据对等关系比对***可被至少一个处理器执行,以使所述至少一个处理器执行如下步骤:
第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
本申请提出的加密数据对等关系比对方法、装置、计算机设备及存储介质中,要求比对参与方可以在不知道提供比对参与方的原始数据的情况下检验两个原始数据是否相等,满足性能高效(检验方式简单有效)、网络传递消耗低(传递参数简单、数据量小)、以及达到主动安全标准等需求,并可以广泛应用到包括区块链、云存储在内的多种应用场景。
附图说明
图1为本申请加密数据对等关系比对方法较佳实施例的流程图;
图2为图1中步骤S3的细化流程图;
图3为图2中步骤S30的细化流程图;
图4为图2中步骤S32的细化流程图;
图5为本申请加密数据对等关系比对装置的模块示意图;
图6为本申请计算机设备的硬件架构的示意图;
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合 出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
在对本申请方案进行说明之前,对用到的名词、符号等进行说明。
名词定义:
独立数据存储***:指的是区块链网络、分布式数据库、云端服务器、分布式***等第三方平台。
公共数据存储***:可以是云端存储也可以是区块链网络。所述公共数据存储***主要用于存储公共参数(基点),也可以存储与零知识证明协议有关的参数等。在可以使用零知识证明协议之前,需要先由一个或多个可信第三方创建基点g、h、i并上传至公共数据存储***。其中,基点g是公共参数,基点h和基点i是由一个可信第三方设置或多个可信第三方自己的平台通过网络(如互联网、区块链网络)协同设置并上传至所述公共数据存储***中的。
双线性映射:对于任意的g1∈G1;g2∈G2;a,b∈Zp,均有e(g1^a,g2^b)=e(g1,g2)^ab成立。其中,e称为双线性映射。G1和G2为原始群,在双线性映射算法中G1和G2可以是同一个群也可以是不同群,本申请不对原始群G1和G2进行区分,G1和G2的基点都用原始群基点g做表述。为方便表述,以下描述都以e(g^a,g^b)=e(g,g)^ab来呈现。在本申请中e(g,g)^ab也可以用gt^ab来代表。gt是映射群基点与原始群的基点g对应。
原始群和映射群:任意原始群上的点都可以通过双线性映射被映射到对应的映射群的点上去。在本申请中,g、h、i三个点均为原始群基点,在原始群上生成。gt为从原始群基点g在映射群的映射,ht为从原始群基点h在映射群的映射,it为从原始群基点i在映射群的映射。
参数标示定义:本申请中采用传统标示,通过基点g和秘密数据δ创建的参数上用标示g^x表述。与其对应如椭圆曲线标示则是δG,其中G代表椭圆曲线上的基点。
离散对数:已知有限循环群G=<g>{g^n|k=0,1,2,...},及其生成元g和阶n=|G|,在离散对数问题的运算中存在h=g^n,其中,g是基,由于离散对数问题的复杂性,很难在知道h和g的情况下计算出整数n的值。因此,本申请中涉及的运算环境为基于椭圆曲线上的运算,椭圆曲线中,基是一个点不是数。
佩德森承诺(Pedersen Commitment)加密算法:在离散对数问题的运算环境下,a为原文,x为密钥,对a加密后的密文[a]=g^a*h^x,(椭圆曲线表述方式为:aG+xH)其中,g与h各代表一个基,h=g^n(椭圆曲线表述方式为:H=nG)。佩德森承诺算法具有加法同态特性并可以作为双线性映射公式中的参数(输入因子)。
符号定义:
a:第一原始数据
b:第二原始数据
x:加密第一原始数据a的第一密钥
y:加密第二原始数据b的第二密钥
[a]:第一加密数据(将第一原始数据a用第一密钥x加密后得到的数据)
[b]:第二加密数据(将第二原始数据b用第二密钥y加密后得到的数据)
α:第一秘密参数(由提供比对参与方随机生成)
[a’]:第一比对请求参数
[b’]:第二比对请求参数
v11:第三比对请求参数
v12:第四比对请求参数
值得注意的是,本申请的主要假设依赖为:
在双线性映射算法中,如果数字z对第三方未知,则第三方没有办法找到与映射群gt设置的数据gt^z对应的原始群G1或G2的对应的点(例如g1^z和g2^z)。
本申请提供一种加密数据对等关系比对方法。
参照图1所示,为本申请加密数据对等关系比对方法较佳实施例的流程图。在本实施例中,根据不同的需求,图1所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。该方法包括步骤:
S1,第一参与方向第二参与方发起加密数据比对请求。
具体地,所述第一参与方为要求比对参与方,所述第二参与方为提供比对参与方,均为所述独立数据存储***。提供比对参与方用第一密钥x对第一原始数据a加密后得到第一加密数据[a],即[a]=g^a*h^x。要求比对参与方用第二密钥y对第二原始数据b加密后得到第二加密数据[b],即[b]=g^b*h^y。第一加密数据[a]和第二加密数据[b]可以在一个公共存储上,例如公有云或者区块链网络,参与方之间也可以通过点对点方式互相传递第一加密数据[a]和第二加密数据[b]。
要求比对参与方想知道对方(提供比对参与方)的第一加密数据[a]对应的第一原始数据a和己方的第二加密数据[b]对应的第二原始数据b是否相等,会向提供比对参与方发起加密数据比对请求。
S2,第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数。其中,所述比对请求参数为根据所述第一加密数据[a]、第二加密数据[b]和随机生成的第一秘密参数α得到。
具体地,提供比对参与方收到要求比对参与方发出的加密数据比对请求后,如果同意比对,则会将第一比对请求参数[a’]、第二比对请求参数[b’]、第三比对请求参数v11和第四比对请求参数v12这四个参数发给要求比对参与方。其中:
(1)提供比对参与方先随机生成第一秘密参数α,再根据第一公式用第一秘密参数α更改第一加密数据[a],得到第一比对请求参数[a’]。所述第一公式为:
[a’]=(g^a*h^x)^α=g^aα*h^xα
(2)提供比对参与方根据第二公式用第一秘密参数α更改第二加密数据[b],得到第二比对请求参数[b’]。所述第二公式为:
[b’]=(g^b*h^y)^α=g^bα*h^yα
(3)提供比对参与方根据第三公式,用第一秘密参数α和第一密钥x在基点ht上生成第三比对请求参数v11。所述基点ht为映射群基点。所述第三公式为:
v11=ht^xα
(4)提供比对参与方根据第四公式,用第一秘密参数α在基点ht上生成第四比对请求参数v12。所述第四公式为:
v12=ht^α
可选地,第四比对请求参数v12也可以在原始群而不是在映射群,即用第一秘密参数α在原始群基点h上生成v12,v12=h^α。
值得注意得是,通过在ht基点上生成第三比对请求参数v11的方式,能够防止要求比对参与方或者恶意第三方通过第三比对请求参数v11、第四比对请求参数v12和双线性对得出第一原始数据a。
例如,如果第三比对请求参数v11不在映射群而是在原始群,即在原始群基点h上生成v11(v11=h^xα),则攻击者可通过以下方式得出第一原始数据a:
(1)根据e(h,h)=it得到映射群基点it;
(2)根据以下计算公式得到ht^aα:
e([a’],h)/e(v11,h)=e(g^aα*h^xα,h)/e(h^xα,h)=ht^aα*it^xα/it^xα=ht^aα;
(3)通过v12已知ht^α,在上一步得到ht^aα后,如果第一原始数据a是一个不大的数字,则可以通过穷举碰撞出来。
S3,第一参与方根据所述比对请求参数检验第一原始数据a和第二原始数据b是否相等。
具体地,参阅图2所示,要求比对参与方收到第一比对请求参数[a’]、第二比对请求参数[b’]、第三比对请求参数v11和第四比对请求参数v12后,可以通过以下过程进行检验:
S30,计算第一原始数据a和第一秘密参数α在映射群基点gt上的乘积(第一乘积)。进一步参阅图3所示,该步骤具体包括:
S300,根据第五公式将第一比对请求参数[a’]转换到映射群基点gt和ht上。所述第五公式为:
e([a’],g)=e(g^aα*h^xα,g)=gt^aα*ht^xα
优选的,所述第五公式也可以由提供比对参与方直接完成后传给要求比对参与方。即步骤S300可在提供比对参与方中执行。
S302,(第一比对请求参数[a’]和第三比对请求参数v11都在映射群后)根据第六公式得出第一原始数据a和第一秘密参数α在映射群基点gt上的乘积gt^aα。所述第六公式为:
gt^aα*ht^xα/v11=gt^aα*ht^xα/ht^xα=gt^aα
回到图2,步骤S32,计算第二原始数据b和第一秘密参数α在映射群基点gt上的乘积(第二乘积)。进一步参阅图4,该步骤具体包括:
S320,根据第七公式将第二比对请求参数[b’]转换到映射群基点gt和ht上。所述第七公式为:
e([b’],g)=e(g^bα*h^yα,g)=gt^bα*ht^yα
优选的,所述第七公式也可以由提供比对参与方直接完成后传给要求比对参与方。即步骤S320可在提供比对参与方中执行。
S322,根据第八公式,通过第四比对请求参数v12和第二秘钥y求出ht^αy。所述第八公式为:
v12^y=(ht^α)^y=ht^αy
S324,(第二比对请求参数[b’]和ht^αy都在映射群后)根据第九公式得出第二原始数据b和第一秘密参数α在映射群基点gt上的乘积gt^bα。所述第九公式为:
gt^bα*ht^yα/ht^αy=gt^bα
回到图2,步骤S34,通过比对所述第一乘积和第二乘积,来检验第一原始数据a和第二原始数据b是否相等。
具体地,要求比对参与方根据第十公式,通过比对第一原始数据a和第一秘密参数α在映射群基点gt上的乘积gt^aα以及第二原始数据b和第一秘密参数α在映射群基点gt上的乘积gt^bα,来比对第一原始数据a和第二原始数据b是否相等。所述第十公式为:
gt^aα==gt^bα
如果上述两个乘积相等(即第十公式成立),则代表第一原始数据a等于第二原始数据b。
值得注意的是,由于要求比对参与方并不知道第一秘密参数α,所以无法知道第一原始数据a的任何信息。
可选地,如果第二参与方也需要知道第一加密数据[a]对应的第一原始数据a和第二加密数据[b]对应的第二原始数据b是否相等,可以与上述流程中的第一参与方进行角色互换,按照上述流程发起加密数据比对请求给第一参与方。
本申请实施例首先由参与比对双方用自身密钥(x、y)对需比对数据(a、b)采用承诺加密,在要求比对参与方发起比对请求后,提供比对参与方随机创建秘密参数(α),并用该秘密参数对自己加密的需比对的承诺加密数据([a])和要求比对参与方加密的承诺加密数据([b])同时进行更改,然后提供能消掉被更改后的承诺加密数据([a’]、[b’]) 的比对请求参数(v11、v12)。要求比对参与方根据比对请求参数消掉被更改后的承诺加密数据后,得到被秘密参数更改后的两个对比加密数据(gt^aα、gt^bα)。
由于更改后的对比加密数据里面掺杂有秘密参数,所以要求比对参与方无法得知提供比对参与方加密的承诺加密数据对应的原始数据值(a)。但由于两个对比加密数据都是通过同样方法用同样秘密参数进行更改的,所以如果它们一样则两个原始数据(a、b)必须一样。因此,要求比对参与方可以在不知道提供比对参与方的原始数据的情况下检验两个原始数据是否相等。
本申请实施例可以完全满足性能高效(检验方式简单有效)、网络传递消耗低(传递参数简单、数据量小)、以及达到主动安全标准等需求,并可以广泛应用到包括区块链、云存储在内的多种应用场景。
请参照图5所示,图5是本申请实施例提供的一种加密数据对等关系比对装置20的模块示意图。该装置包括:发起模块201、生成模块202和比对校验模块203。
发起模块201,用于第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
生成模块202,用于第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
比对校验模块203,用于第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
本申请还提出一种计算机设备。参照图6所示,为本申请计算机设备硬件架构的示意图。
在本实施例中,计算机设备1适用于上述加密数据对等关系比对方法,该计算机设备1包括:存储器11、处理器12及网络接口13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质可以是非易失性,也可以是易失性,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是所述计算机设备1的内部存储单元,例如该计算机设备1的硬盘。存储器11在另一些实施例中也可以是所述计算机设备1的外部存储设备,例如该计算机设备1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括该计算机设备1的内部存储单元也包括外部存储设备。
存储器11不仅可以用于存储安装于该计算机设备1的应用软件及各类数据,例如,与所述加密数据对等关系比对方法对应的加密数据对等关系比对***10的程序代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如,与所述加密数据对等关系比对方法对应的加密数据对等关系比对***10的程序代码等。
网络接口13可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该计算机设备1与其他电子设备之间建立通信连接。计算机设备1的组件11-13通过通信总线相互通信。
图6仅示出了具有组件11-13的计算机设备1,本领域技术人员可以理解的是,图5示出的结构并不构成对计算机设备1的限定,可以包括比图示更少或者更多的部件,或者 组合某些部件,或者不同的部件布置。
本申请之计算机设备的具体实施方式与上述加密数据对等关系比对方法的具体实施方式大致相同,在此不再赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性,也可以是易失性,所述计算机可读存储介质中包括与所述加密数据对等关系比对方法对应的加密数据对等关系比对***10的程序代码,所述与所述加密数据对等关系比对方法对应的加密数据对等关系比对***10的程序代码被处理器执行时实现如所述加密数据对等关系比对方法的步骤。
本申请之计算机可读存储介质的具体实施方式与上述加密数据对等关系比对方法的具体实施方式大致相同,在此不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (20)

  1. 一种加密数据对等关系比对方法,其中,该方法包括:
    第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
    第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
    第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
  2. 根据权利要求1所述的加密数据对等关系比对方法,其中,所述第一加密数据[a]=g^a*h^x,所述第二加密数据[b]=g^b*h^y,其中g和h为原始群基点。
  3. 根据权利要求1或2所述的加密数据对等关系比对方法,其中,所述比对请求参数包括第一比对请求参数[a’]、第二比对请求参数[b’]、第三比对请求参数v11和第四比对请求参数v12。
  4. 根据权利要求3所述的加密数据对等关系比对方法,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四公式v12=ht^α,用所述第一秘密参数α在基点ht上生成所述第四比对请求参数v12。
  5. 根据权利要求3所述的加密数据对等关系比对方法,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四替代公式v12=h^α,用所述第一秘密参数α在原始群基点h上生成所述第四比对请求参数v12。
  6. 根据权利要求3所述的加密数据对等关系比对方法,其中,所述第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等的步骤包括:
    计算所述第一原始数据a和所述第一秘密参数α在映射群基点gt上的第一乘积;
    计算所述第二原始数据b和所述第一秘密参数α在映射群基点gt上的第二乘积;
    通过比对所述第一乘积和所述第二乘积是否相等,来检验所述第一原始数据a和所述第二原始数据b是否相等。
  7. 根据权利要求6所述的加密数据对等关系比对方法,其中,所述计算所述第一原始数据a和所述第一秘密参数α在映射群基点gt上的第一乘积的步骤包括:
    根据第五公式e([a’],g)=e(g^aα*h^xα,g)=gt^aα*ht^xα,将所述第一比对请求参数[a’]转换到映射群基点gt和ht上;
    根据第六公式gt^aα*ht^xα/v11=gt^aα*ht^xα/ht^xα=gt^aα,得出所述第一原始数据a和所述第一秘密参数α在映射群基点gt上的第一乘积gt^aα。
  8. 根据权利要求6所述的加密数据对等关系比对方法,其中,所述计算所述第二原始数据b和所述第一秘密参数α在映射群基点gt上的第二乘积的步骤包括:
    根据第七公式e([b’],g)=e(g^bα*h^yα,g)=gt^bα*ht^yα,将所述第二比对请求参数[b’]转换到映射群基点gt和ht上;
    根据第八公式v12^y=(ht^α)^y=ht^αy,通过所述第四比对请求参数v12和所述第二秘钥y求出ht^αy;
    根据第九公式gt^bα*ht^yα/ht^αy=gt^bα,得出所述第二原始数据b和所述第一秘密参数α在映射群基点gt上的第二乘积gt^bα。
  9. 一种加密数据对等关系比对装置,其中,该装置包括:
    发起模块,用于第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
    生成模块,用于第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
    比对校验模块,用于第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
  10. 一种计算机设备,包括存储器和处理器;所述存储器上储存有计算机程序,其中,所述处理器执行所述计算机程序时实现如下步骤:
    第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
    第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
    第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
  11. 根据权利要求10所述的计算机设备,其中,所述第一加密数据[a]=g^a*h^x,所述第二加密数据[b]=g^b*h^y,其中g和h为原始群基点。
  12. 根据权利要求10或11所述的计算机设备,其中,所述比对请求参数包括第一比对请求参数[a’]、第二比对请求参数[b’]、第三比对请求参数v11和第四比对请求参数v12。
  13. 根据权利要求12所述的计算机设备,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四公式v12=ht^α,用所述第一秘密参数α在基点ht上生成所述第四比对请求参数v12。
  14. 根据权利要求12所述的计算机设备,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四替代公式v12=h^α,用所述第一秘密参数α在原始群基点h上生成所述第四比对请求参数v12。
  15. 根据权利要求12所述的计算机设备,其中,所述第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等的步骤包括:
    计算所述第一原始数据a和所述第一秘密参数α在映射群基点gt上的第一乘积;
    计算所述第二原始数据b和所述第一秘密参数α在映射群基点gt上的第二乘积;
    通过比对所述第一乘积和所述第二乘积是否相等,来检验所述第一原始数据a和所述第二原始数据b是否相等。
  16. 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有加密数据对等关系比对***,所述加密数据对等关系比对***可被至少一个处理器执行,以使所述至少一个处理器执行如下步骤:
    第一参与方向第二参与方发起针对第一原始数据a和第二原始数据b的加密数据比对请求,其中,所述第一参与方为要求比对参与方,利用第二密钥y对所述第二原始数据b加密后得到第二加密数据[b];所述第二参与方为提供比对参与方,利用第一密钥x对所述第一原始数据a加密后得到第一加密数据[a];
    第二参与方在收到所述加密数据比对请求后,向第一参与方发送比对请求参数,其中,所述比对请求参数为根据所述第一加密数据[a]、所述第二加密数据[b]和随机生成的第一秘密参数α得到;及
    第一参与方根据所述比对请求参数检验所述第一原始数据a和所述第二原始数据b是否相等。
  17. 根据权利要求16所述的计算机可读存储介质,其中,所述第一加密数据[a]=g^a*h^x,所述第二加密数据[b]=g^b*h^y,其中g和h为原始群基点。
  18. 根据权利要求16或17所述的计算机可读存储介质,其中,所述比对请求参数包括第一比对请求参数[a’]、第二比对请求参数[b’]、第三比对请求参数v11和第四比对请求参数v12。
  19. 根据权利要求18所述的计算机可读存储介质,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四公式v12=ht^α,用所述第一秘密参数α在基点ht上生成所述第四比对请求参数v12。
  20. 根据权利要求18所述的计算机可读存储介质,其中,第二参与方得到所述比对请求参数的过程包括:
    随机生成所述第一秘密参数α,再根据第一公式[a’]=(g^a*h^x)^α=g^aα*h^xα,用所述第一秘密参数α更改所述第一加密数据[a],得到所述第一比对请求参数[a’];
    根据第二公式[b’]=(g^b*h^y)^α=g^bα*h^yα,用所述第一秘密参数α更改所述第二加密数据[b],得到所述第二比对请求参数[b’];
    根据第三公式v11=ht^xα,用所述第一秘密参数α和所述第一密钥x在基点ht上生成所述第三比对请求参数v11,所述基点ht为原始群基点h对应的映射群基点;
    根据第四替代公式v12=h^α,用所述第一秘密参数α在原始群基点h上生成所述第四比对请求参数v12。
PCT/CN2020/106018 2020-03-30 2020-07-30 加密数据对等关系比对方法、装置、计算机设备及存储介质 WO2021196478A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010235591.6 2020-03-30
CN202010235591.6A CN111552736A (zh) 2020-03-30 2020-03-30 加密数据对等关系比对方法、装置及存储介质

Publications (1)

Publication Number Publication Date
WO2021196478A1 true WO2021196478A1 (zh) 2021-10-07

Family

ID=72003785

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/106018 WO2021196478A1 (zh) 2020-03-30 2020-07-30 加密数据对等关系比对方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN111552736A (zh)
WO (1) WO2021196478A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112953974B (zh) * 2021-04-16 2022-06-10 平安科技(深圳)有限公司 数据碰撞方法、装置、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190109828A1 (en) * 2017-10-10 2019-04-11 Ucloud Technology Co., Ltd. Data processing method, device and system, and storage medium
CN110069939A (zh) * 2019-03-12 2019-07-30 平安科技(深圳)有限公司 加密数据一致性校验方法、装置、计算机设备及存储介质
CN110399735A (zh) * 2019-06-21 2019-11-01 深圳壹账通智能科技有限公司 加密数据大小关系证明方法、装置、设备及存储介质
CN110505046A (zh) * 2019-07-29 2019-11-26 深圳壹账通智能科技有限公司 多数据提供方加密数据跨平台零知识校验方法、装置及介质
CN110717755A (zh) * 2019-09-05 2020-01-21 深圳壹账通智能科技有限公司 加密数据零知识校验方法、装置及介质
CN110855631A (zh) * 2019-10-24 2020-02-28 南京可信区块链与算法经济研究院有限公司 一种区块链中可监管的零知识验证方法、***及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10075301B2 (en) * 2015-07-13 2018-09-11 Fujitsu Limited Relational encryption for password verification
CN110011781B (zh) * 2019-03-04 2020-05-19 华中科技大学 用于交易金额加密且支持零知识证明的同态加密方法和介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190109828A1 (en) * 2017-10-10 2019-04-11 Ucloud Technology Co., Ltd. Data processing method, device and system, and storage medium
CN110069939A (zh) * 2019-03-12 2019-07-30 平安科技(深圳)有限公司 加密数据一致性校验方法、装置、计算机设备及存储介质
CN110399735A (zh) * 2019-06-21 2019-11-01 深圳壹账通智能科技有限公司 加密数据大小关系证明方法、装置、设备及存储介质
CN110505046A (zh) * 2019-07-29 2019-11-26 深圳壹账通智能科技有限公司 多数据提供方加密数据跨平台零知识校验方法、装置及介质
CN110717755A (zh) * 2019-09-05 2020-01-21 深圳壹账通智能科技有限公司 加密数据零知识校验方法、装置及介质
CN110855631A (zh) * 2019-10-24 2020-02-28 南京可信区块链与算法经济研究院有限公司 一种区块链中可监管的零知识验证方法、***及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
许丽娜 等 (XU, LINA ET AL.): "基于零知识证明的验证加密方法 (Authentication and Encrypt Based on Zero Knowledge)", 现代电子技术 (MODERN ELECTRONIC TECHNIQUE), 31 December 2005 (2005-12-31) *

Also Published As

Publication number Publication date
CN111552736A (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
WO2021238527A1 (zh) 数字签名生成方法、装置、计算机设备和存储介质
WO2021017338A1 (zh) 多数据提供方加密数据跨平台零知识校验方法及相关设备
KR101486782B1 (ko) 무한 중첩된 해시 체인들에 의한 1회용 패스워드 인증
CN111200502B (zh) 协同数字签名方法和装置
WO2021012574A1 (zh) 多重签名方法、签名中心、介质及电子设备
WO2021143457A1 (zh) 基于sm9算法的身份认证方法、装置和计算机设备
WO2009065356A1 (fr) Procédé, système et dispositif de réseau pour une authentification mutuelle
US20210240841A1 (en) Delegated private set intersection, and applications thereof
US9083535B2 (en) Method and apparatus for providing efficient management of certificate revocation
CN111835526B (zh) 一种生成匿名凭证的方法及***
CN109981292B (zh) 一种基于sm9算法的认证方法、装置及***
Munivel et al. New authentication scheme to secure against the phishing attack in the mobile cloud computing
Zhang et al. Blockchain-based asymmetric group key agreement protocol for internet of vehicles
WO2023174038A1 (zh) 数据传输方法及相关设备
WO2023206869A1 (zh) 基于格的代理签名及验证方法、装置、设备和存储介质
Yang et al. Provably Secure Client‐Server Key Management Scheme in 5G Networks
WO2023124958A1 (zh) 密钥更新方法、服务器、客户端及存储介质
WO2021143029A1 (zh) 零知识证明方法、装置及存储介质
US10425227B2 (en) Computer-readable recording medium, shared key generation method, and information processing terminal
Zhang et al. A provably secure anonymous authenticated key exchange protocol based on ECC for wireless sensor networks
WO2021196478A1 (zh) 加密数据对等关系比对方法、装置、计算机设备及存储介质
US20210211275A1 (en) Shared key system, information processing apparatus, equipment, shared key method and program
WO2022116176A1 (zh) 数字签名的生成方法、装置和服务器
CN112468983B (zh) 一种低功耗的电力物联网智能设备接入认证方法及其辅助装置
WO2021212611A1 (zh) 加密数据对等关系参数检验方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20928171

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 16/01/2023

122 Ep: pct application non-entry in european phase

Ref document number: 20928171

Country of ref document: EP

Kind code of ref document: A1