CN111628865B - 加密数据对等关系参数检验方法、装置及存储介质 - Google Patents
加密数据对等关系参数检验方法、装置及存储介质 Download PDFInfo
- Publication number
- CN111628865B CN111628865B CN202010326385.6A CN202010326385A CN111628865B CN 111628865 B CN111628865 B CN 111628865B CN 202010326385 A CN202010326385 A CN 202010326385A CN 111628865 B CN111628865 B CN 111628865B
- Authority
- CN
- China
- Prior art keywords
- parameter
- verification
- encrypted data
- secret
- generated
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种区块链技术,揭露了一种加密数据对等关系参数检验方法,该方法包括:第一参与方在收到第二参与方发起的加密数据比对请求后,向第二参与方提供校验参数和证明参数,其中,所述校验参数由第一参与方根据第一加密数据[a]、第二加密数据[b]和秘密数据生成,用于使第二参与方比对第一原始数据a和第二原始数据b是否相等;第二参与方根据所述证明参数检验所述校验参数是否根据所述秘密数据生成。本发明还揭露了一种加密数据对等关系参数检验装置及计算机可读存储介质。利用本发明,可以避免第一参与方提供虚假的校验参数,以保障第二参与方顺利进行加密数据对等关系比对。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种加密数据对等关系参数检验方法、装置及计算机可读存储介质。
背景技术
零知识证明(Zero—Knowledge Proof),是由S.Gold wasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。
目前,在零知识证明中,如果要求比对参与方要检测自己加密的第二加密数据是否等于由提供比对参与方加密的第一加密数据,需要提供比对参与方向要求比对参与方提供一些校验参数。但是,目前的方案无法保证这些校验参数是否正确。即使第二加密数据等于第一加密数据,提供比对参与方仍然可以恶意创造一些虚假校验参数来使要求比对参与方相信第二加密数据与第一加密数据不相等。
因此,如何在比对两个由不同参与方的密钥加密的数据是否相等时,避免提供比对参与方提供虚假校验参数,已经成为一个亟待解决的技术问题。
发明内容
鉴于以上内容,本发明提供一种加密数据对等关系参数检验方法、装置及计算机可读存储介质,其主要目的在于解决上述技术问题。
为实现上述目的,本发明提供一种加密数据对等关系参数检验方法,该方法包括:
第一参与方在收到第二参与方发起的加密数据比对请求后,向第二参与方提供校验参数和证明参数,其中,所述第一参与方为提供比对参与方,利用第一密钥x对第一原始数据a加密后得到第一加密数据[a];所述第二参与方为要求比对参与方,利用第二密钥y对第二原始数据b加密后得到第二加密数据[b];所述校验参数由所述第一参与方根据所述第一加密数据[a]、所述第二加密数据[b]和秘密数据生成,用于使所述第二参与方比对第一原始数据a和第二原始数据b是否相等;及
所述第二参与方根据所述证明参数检验所述校验参数是否根据所述秘密数据生成。
可选地,所述秘密数据包括所述第一密钥x和秘密参数α,所述秘密参数α由所述第一参与方随机生成。
可选地,所述校验参数包括第一校验参数[a’]、第二校验参数[b’]、第三校验参数v11和第四校验参数v12,其中:
所述第一校验参数[a’]通过所述第一加密数据[a]和所述秘密参数α生成,[a’]=g^aα*h^xα;
所述第二校验参数[b’]通过所述第二加密数据[b]和所述秘密参数α生成,[b’]=g^bα*h^yα;
所述第三校验参数v11通过所述第一密钥x和所述秘密参数α在映射群基点ht上生成,同时也是对应密钥xα的公钥,v11=ht^xα;
所述第四校验参数v12通过所述秘密参数α在原始群基点h上生成,v12=h^α。
可选地,所述证明参数包括第一证明参数p_α、第二证明参数ht_sig和第三证明参数gt_sig,其中:
所述第一证明参数数p_α通过所述秘密参数α生成,p_α=g^α-1;
所述第二证明参数ht_sig为与公钥ht^xα对应的密钥xα在映射群基点ht对应的数字签名;
所述第三证明参数gt_sig为与公钥gt^aα对应的密钥aα在映射群基点gt对应的数字签名。
可选地,所述第二参与方根据所述证明参数检验所述校验参数是否根据所述秘密数据生成的步骤包括:
根据所述第一证明参数检验所述第一校验参数[a’]是否通过所述第一加密数据[a]和所述秘密参数α生成,以及校验所述第二校验参数[b’]是否通过所述第二加密数据[b]和所述秘密参数α生成;
根据所述第一证明参数检验所述第四校验参数v12是否也通过同样的所述秘密数据在映射群基点ht上生成;及
根据所述第二、第三证明参数检验所述第三校验参数v11是否也通过同样的所述秘密数据在映射群基点ht上生成。
可选地,所述“根据所述第一证明参数检验所述第一校验参数[a’]是否通过所述第一加密数据[a]和所述秘密参数α生成,以及校验所述第二校验参数[b’]是否通过所述第二加密数据[b]和所述秘密参数α生成”的步骤包括:
通过双线性映射和所述第一证明参数p_α,将所述第一校验参数[a’]转换回所述第一加密数据[a]在映射群基点gt和ht上的数值,得到第一转换结果;
通过双线性映射将所述第一加密数据[a]转换到映射群基点gt和ht上,得到第二转换结果;
比较所述第一转换结果和所述第二转换结果是否相等;
当所述第一转换结果和所述第二转换结果相等时,确认所述第一校验参数[a’]是通过所述第一加密数据[a]和所述秘密参数α生成;
通过双线性映射和所述第一证明参数p_α,将所述第二校验参数[b’]转换回所述第二加密数据[b]在映射群基点gt和ht上的数值,得到第三转换结果;
通过双线性映射将所述第二加密数据[b]转换到映射群基点gt和ht上,得到第四转换结果;
比较所述第三转换结果和所述第四转换结果是否相等;
当所述第三转换结果和所述第四转换结果相等时,确认所述第二校验参数[b’]是通过所述第二加密数据[b]和所述秘密参数α生成。
可选地,所述根据所述第一证明参数检验所述第四校验参数v12是否也通过所述秘密数据在映射群基点ht上生成的步骤包括:
通过双线性映射和所述第一证明参数p_α检验所述第四校验参数v12是否也是通过所述秘密参数α生成的,其中,如果对所述第四校验参数v12映射得到的结果为映射群基点ht,则检验通过。
可选地,所述根据所述第二、第三证明参数检验所述第三校验参数v11是否也通过所述秘密数据在映射群基点ht上生成的步骤包括:
根据所述第一校验参数[a’]和所述第三校验参数v11找出与所述第三证明参数gt_sig对应的公钥gt_pk;
通过数字签名验签方法分别检验所述第二证明参数ht_sig是否为与所述第三校验参数v11对应的密钥的数字签名,及所述第三证明参数gt_sig是否为与所述公钥gt_pk对应的密钥的数字签名;
当上述两项检验结果均为是时,对所述第三校验参数v11检验通过。
此外,为实现上述目的,本发明还提供一种加密数据对等关系参数检验装置,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的加密数据对等关系参数检验系统,所述加密数据对等关系参数检验系统被所述处理器执行时实现如上述的加密数据对等关系参数检验方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有加密数据对等关系参数检验系统,所述加密数据对等关系参数检验系统可被至少一个处理器执行,以使所述至少一个处理器执行如上述的加密数据对等关系参数检验方法的步骤。
本发明提出的加密数据对等关系参数检验方法、装置及计算机可读存储介质中,第一参与方除了提供校验参数来促使第二参与方可以比对第一原始数据a和第二原始数据b是否相等以外,还提供另外一组证明参数,用来证明校验参数的正确性。如果校验参数没有按照规定生成,则第一参与方无法创建出所述证明参数。本发明可以避免第一参与方提供虚假的校验参数,以保障第二参与方顺利进行加密数据对等关系比对,提升比对结果的准确性。
附图说明
图1为本发明加密数据对等关系参数检验方法较佳实施例的流程图;
图2为图1中步骤S2的细化流程图;
图3为图2中步骤S22的细化流程图;
图4为图2中步骤S24的细化流程图;
图5为本发明加密数据对等关系参数检验装置较佳实施例的示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
在对本发明方案进行说明之前,对用到的名词、数据等进行说明。
名词定义:
独立数据存储系统:指的是区块链网络、分布式数据库、云端服务器、分布式系统等第三方平台。
公共数据存储系统:可以是云端存储也可以是区块链网络。所述公共数据存储系统主要用于存储公共参数(基点),也可以存储与零知识证明协议有关的参数等。在可以使用零知识证明协议之前,需要先由一个或多个可信第三方创建基点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)。佩德森承诺算法具有加法同态特性并可以作为双线性映射公式中的参数(输入因子)。
数据定义:
(1)原始数据和加密数据
a:第一原始数据,仅第一参与方(提供比对参与方)知道。
b:第二原始数据,仅第二参与方(要求比对参与方)知道。
[a]:第一加密数据,由第一参与方将第一原始数据a用第一密钥x加密后得到的数据,即[a]=g^a*h^x。
[b]:第二加密数据,由第二参与方将第二原始数据b用第二密钥y加密后得到的数据,即[b]=g^b*h^y。
第一加密数据[a]和第二加密数据[b]可以在一个公共数据存储系统上,例如公有云或者区块链网络,参与方之间也可以通过点对点方式互相传递第一加密数据[a]和第二加密数据[b]。
(2)秘密数据
x:第一密钥,用于加密第一原始数据a,仅第一参与方知道。
α:秘密参数,由第一参与方随机生成,仅第一参与方知道。
(3)校验参数
由第一参与方根据上述加密数据和秘密数据生成,并提供给第二参与方,以使第二参与方根据所述校验参数检验第一原始数据a和第二原始数据b是否相等。
[a’]:第一校验参数,通过第一加密数据[a]和秘密参数α生成,[a’]=g^aα*h^xα。
[b’]:第二校验参数,通过第二加密数据[b]和秘密参数α生成,[b’]=g^bα*h^yα。
v11:第三校验参数,通过第一密钥x和秘密参数α在映射群基点ht上生成,v11=ht^xα。同时也是对应密钥xα的公钥,其中xα为第一密钥x和秘密参数α的乘积。
v12:第四校验参数,通过秘密参数α在原始群基点h上生成,v12=h^α。
(4)证明参数
由第一参与方提供给第二参与方,以证明上述校验参数确实是通过上述加密数据和秘密数据生成的。
p_α:第一证明参数,通过秘密参数α生成,p_α=g^α-1。其中,α^-1是α的逆值,即α*α^-1=1。在算式中一个数μ乘以数α的逆值α^-1的结果等于数μ除以数α的结果。
ht_sig:第二证明参数,为与公钥ht^xα对应的密钥xα在映射群基点ht对应的数字签名。
gt_sig:第三证明参数,为与公钥gt^aα对应的密钥aα在映射群基点gt对应的数字签名。
本发明提供一种加密数据对等关系参数检验方法。
参照图1所示,为本发明加密数据对等关系参数检验方法较佳实施例的流程图。在本实施例中,根据不同的需求,图1所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。该方法包括步骤:
S1,第一参与方在收到第二参与方发起的加密数据比对请求后,向第二参与方提供校验参数和证明参数。
具体地,所述第一参与方为提供比对参与方,利用第一密钥x对第一原始数据a加密后得到第一加密数据[a];所述第二参与方为要求比对参与方,利用第二密钥y对第二原始数据b加密后得到第二加密数据[b]。要求比对参与方想知道对方(提供比对参与方)的第一加密数据[a]对应的第一原始数据a和己方的第二加密数据[b]对应的第二原始数据b是否相等,会向提供比对参与方发起加密数据比对请求。
提供比对参与方收到要求比对参与方发出的加密数据比对请求后,如果同意比对,则会将第一校验参数[a’]、第二校验参数[b’]、第三校验参数v11和第四校验参数v12这四个校验参数发给要求比对参与方。所述校验参数由提供比对参与方根据所述第一加密数据[a]、第二加密数据[b]、第一密钥x和秘密参数α(由提供比对参与方随机生成)生成,用于使要求比对参与方根据所述校验参数比对第一原始数据a和第二原始数据b是否相等。
同时,在本实施例中,为了杜绝提供比对参与方提供虚假的校验参数,还需要向要求比对参与方提供第一证明参数p_α、第二证明参数ht_sig、第三证明参数gt_sig这三个证明参数,用来证明所述校验参数确实是通过所述加密数据(第一加密数据[a]、第二加密数据[b])和秘密数据(第一密钥x、秘密参数α)生成的。
S2,第二参与方根据所述证明参数检验所述校验参数是否根据所述秘密数据生成。
若检验通过,即所述校验参数是通过同样的所述秘密数据(第一密钥x、秘密参数α)生成的,则表示提供比对参与方未提供虚假的校验参数。若检验不通过,则表示提供比对参与方提供的所述校验参数为虚假的或错误的。
具体地,参阅图2所示,为步骤S2的细化流程图。在本实施例中,该步骤具体包括以下步骤:
S22,第二参与方根据根据所述第一证明参数检验所述第一校验参数[a’]是否通过所述第一加密数据[a]和所述秘密参数α生成,以及校验所述第二校验参数[b’]是否通过所述第二加密数据[b]和所述秘密参数α生成。
具体地,参阅图3所示,为步骤S22的细化流程图。要求比对参与方收到所述校验参数和证明参数后,可以通过以下步骤对所述第一校验参数[a’]和所述第二校验参数[b’]进行检验:
S221,通过双线性映射和第一证明参数p_α,将所述第一校验参数[a’]转换回第一加密数据[a]在映射群基点gt和ht上的数值(为第一转换结果)。
具体地,根据以下公式进行转换:
e([a’],p_α)=e(g^aα*h^xα,g^α-1)=gt^a*ht^x
S222,通过双线性映射将第一加密数据[a]转换到映射群基点gt和ht上(为第二转换结果)。
具体地,根据以下公式进行转换:
e([a],g)=e(g^a*h^x,g)=gt^a*ht^x
S223,比较上述两个转换结果(第一转换结果和第二转换结果)是否相等。当第一转换结果和第二转换结果相等时,确认所述第一校验参数[a’]是通过所述第一加密数据[a]和第一证明参数p_α对应的秘密参数α生成。
S224,通过双线性映射和第一证明参数p_α,将所述第二校验参数[b’]转换回第二加密数据[b]在映射群基点gt和ht上的数值(为第三转换结果)。
具体地,根据以下公式进行转换:
e([b’],p_α)=e(g^bα*h^yα,g^α-1)=gt^b*ht^y
S225,通过双线性映射将第二加密数据[b]转换到映射群基点gt和ht上(为第四转换结果)。
具体地,根据以下公式进行转换:
e([b],g)=e(g^b*h^y,g)=gt^b*ht^y
S226,比较上述两个转换结果(第三转换结果和第四转换结果)是否相等。当第三转换结果和第四转换结果相等时,确认所述第二校验参数[b’]是通过所述第二加密数据[b]和所述第一证明参数p_α对应的秘密参数α生成。
原理:通过同样的证明参数p_α可以证明第一校验参数[a’]和第二校验参数[b’]是通过同样的秘密数据更改所述第一加密数据[a]和所述第二加密数据[b]生成的。
回到图2,步骤S23,第二参与方根据所述第一证明参数检验所述第四校验参数v12是否也通过同样的秘密数据在映射群基点ht上生成。
具体地,要求比对参与方可以通过双线性映射和所述第一证明参数p_α检验所述第四校验参数v12是否也是通过和所述第一证明参数p_α对应的秘密参数α生成的(与生成第一校验参数[a’]和第二校验参数[b’]的秘密数据相同)。其中,根据以下公式进行映射:
e(v12,p_α)=e(h^α,g^α-1)=ht
如果映射得到的结果为映射群基点ht,则检验通过(即所述第四校验参数v12也是通过和所述第一证明参数p_α对应的秘密参数α生成的)。
原理:通过同样的证明参数p_α可以证明第四校验参数v12是使用与生成第一校验参数[a’]和第二校验参数[b’]相同的秘密数据生成的。
S24,第二参与方根据所述第二、第三证明参数检验所述第三校验参数v11是否也通过同样的秘密数据在映射群基点ht上生成。
具体地,参阅图4所示,为步骤S24的细化流程图。要求比对参与方根据第二证明参数ht_sig和第三证明参数gt_sig,可以通过以下步骤检验所述第三校验参数v11是否为第一密钥x和秘密参数α的乘积在映射群基点ht上生成的:
S241,根据第一校验参数[a’]和第三校验参数v11找出与第三证明参数gt_sig对应的公钥gt_pk。
具体公式如下:
gt_pk=e([a’],g)/v11
=e(g^aα*h^xα,g)/ht^xα
=gt^aα*ht^xα/ht^xα
=gt^aα
S242,通过数字签名验签方法分别检验第二证明参数ht_sig是否为与第三校验参数v11对应的密钥的数字签名(这里v11作为公钥,xα是对应私钥),及第三证明参数gt_sig是否为与公钥gt_pk对应的密钥的数字签名。
S243,当上述两项检验结果均为是时,对第三校验参数v11检验通过(即所述第三校验参数v11是第一密钥x和秘密参数α的乘积在映射群基点ht上生成的)。
原理:如果第三校验参数v11不是通过密钥xα在映射群基点ht上生成的,则根据离散对数复杂问题无法找到满足以下条件的?数值,也就无法提供第三证明参数gt_sig。
gt^?*ht^(xα+λ)==gt^aα*ht^xα
其中,λ代表对密钥xα的篡改附加值。
本发明实施例中,提供比对参与方除了提供校验参数来促使要求比对参与方可以比对第一原始数据a和第二原始数据b是否相等以外,还提供另外一组证明参数,通过证明校验参数和加密数据之间的绑定关系以及证明几个校验参数之间的绑定关系,来证明校验参数的正确性。如果校验参数没有按照规定生成,则提供比对参与方(或任何提供校验参数的参与方)无法创建出所述证明参数。本发明实施例可以避免提供比对参与方(或任何提供校验参数的参与方)提供虚假的校验参数,以保障要求比对参与方顺利进行加密数据对等关系比对,提升比对结果的准确性。
本发明还提出一种加密数据对等关系参数检验装置。参照图5所示,为本发明加密数据对等关系参数检验装置较佳实施例的示意图。
在本实施例中,加密数据对等关系参数检验装置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通过通信总线相互通信。
图5仅示出了具有组件11-13的加密数据对等关系参数检验装置1,本领域技术人员可以理解的是,图5示出的结构并不构成对加密数据对等关系参数检验装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本发明之加密数据对等关系参数检验装置的具体实施方式与上述加密数据对等关系参数检验方法的具体实施方式大致相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质中包括与所述加密数据对等关系参数检验方法对应的加密数据对等关系参数检验系统10的程序代码,所述与所述加密数据对等关系参数检验方法对应的加密数据对等关系参数检验系统10的程序代码被处理器执行时实现如所述加密数据对等关系参数检验方法的步骤。
本发明之计算机可读存储介质的具体实施方式与上述加密数据对等关系参数检验方法的具体实施方式大致相同,在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种加密数据对等关系参数检验方法,其特征在于,该方法包括:
第一参与方在收到第二参与方发起的加密数据比对请求后,向第二参与方提供校验参数和证明参数,其中,所述第一参与方利用第一密钥x对第一原始数据a加密后得到第一加密数据[a],所述第二参与方利用第二密钥y对第二原始数据b加密后得到第二加密数据[b];
所述校验参数由所述第一参与方根据所述第一加密数据[a]、所述第二加密数据[b]和秘密数据生成,用于使所述第二参与方比对第一原始数据a和第二原始数据b是否相等,所述秘密数据包括所述第一密钥x和秘密参数α,所述秘密参数α由所述第一参与方随机生成,所述校验参数包括第一校验参数[a’]、第二校验参数[b’]、第三校验参数v11和第四校验参数v12,其中:
所述第一校验参数[a’]通过所述第一加密数据[a]和所述秘密参数α生成,[a’]=g^aα*h^xα;
所述第二校验参数[b’]通过所述第二加密数据[b]和所述秘密参数α生成,[b’]=g^bα*h^yα;
所述第三校验参数v11通过所述第一密钥x和所述秘密参数α在映射群基点ht上生成,同时也是对应密钥xα的公钥,v11=ht^xα;
所述第四校验参数v12通过所述秘密参数α在原始群基点h上生成,v12=h^α;
所述证明参数包括第一证明参数p_α、第二证明参数ht_sig和第三证明参数gt_sig,其中:
所述第一证明参数数p_α通过所述秘密参数α生成,p_α=g^α-1;
所述第二证明参数ht_sig为与公钥ht^xα对应的密钥xα在映射群基点ht对应的数字签名;
所述第三证明参数gt_sig为与公钥gt^aα对应的密钥aα在映射群基点gt对应的数字签名;及
所述第二参与方根据所述证明参数检验所述校验参数是否根据所述秘密数据生成,包括:
根据所述第一证明参数检验所述第一校验参数[a’]是否通过所述第一加密数据[a]和所述秘密参数α生成,以及校验所述第二校验参数[b’]是否通过所述第二加密数据[b]和所述秘密参数α生成;
根据所述第一证明参数检验所述第四校验参数v12是否也通过所述秘密数据在映射群基点ht上生成;及
根据所述第二、第三证明参数检验所述第三校验参数v11是否也通过所述秘密数据在映射群基点ht上生成。
2.根据权利要求1所述的加密数据对等关系参数检验方法,其特征在于,所述“根据所述第一证明参数检验所述第一校验参数[a’]是否通过所述第一加密数据[a]和所述秘密参数α生成,以及校验所述第二校验参数[b’]是否通过所述第二加密数据[b]和所述秘密参数α生成”的步骤包括:
通过双线性映射和所述第一证明参数p_α,将所述第一校验参数[a’]转换回所述第一加密数据[a]在映射群基点gt和ht上的数值,得到第一转换结果;
通过双线性映射将所述第一加密数据[a]转换到映射群基点gt和ht上,得到第二转换结果;
比较所述第一转换结果和所述第二转换结果是否相等;
当所述第一转换结果和所述第二转换结果相等时,确认所述第一校验参数[a’]是通过所述第一加密数据[a]和所述秘密参数α生成;
通过双线性映射和所述第一证明参数p_α,将所述第二校验参数[b’]转换回所述第二加密数据[b]在映射群基点gt和ht上的数值,得到第三转换结果;
通过双线性映射将所述第二加密数据[b]转换到映射群基点gt和ht上,得到第四转换结果;
比较所述第三转换结果和所述第四转换结果是否相等;
当所述第三转换结果和所述第四转换结果相等时,确认所述第二校验参数[b’]是通过所述第二加密数据[b]和所述秘密参数α生成。
3.根据权利要求1所述的加密数据对等关系参数检验方法,其特征在于,所述根据所述第一证明参数检验所述第四校验参数v12是否也通过所述秘密数据在映射群基点ht上生成的步骤包括:
通过双线性映射和所述第一证明参数p_α检验所述第四校验参数v12是否也是通过所述秘密参数α生成的,其中,如果对所述第四校验参数v12映射得到的结果为映射群基点ht,则检验通过。
4.根据权利要求1所述的加密数据对等关系参数检验方法,其特征在于,所述根据所述第二、第三证明参数检验所述第三校验参数v11是否也通过所述秘密数据在映射群基点ht上生成的步骤包括:
根据所述第一校验参数[a’]和所述第三校验参数v11找出与所述第三证明参数gt_sig对应的公钥gt_pk;
通过数字签名验签方法分别检验所述第二证明参数ht_sig是否为与所述第三校验参数v11对应的密钥的数字签名,及所述第三证明参数gt_sig是否为与所述公钥gt_pk对应的密钥的数字签名;
当上述两项检验结果均为是时,对所述第三校验参数v11检验通过。
5.一种加密数据对等关系参数检验装置,其特征在于,所述装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的加密数据对等关系参数检验系统,所述加密数据对等关系参数检验系统被所述处理器执行时实现如权利要求1-4中任一项所述的加密数据对等关系参数检验方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有加密数据对等关系参数检验系统,所述加密数据对等关系参数检验系统可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-4中任一项所述的加密数据对等关系参数检验方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010326385.6A CN111628865B (zh) | 2020-04-23 | 2020-04-23 | 加密数据对等关系参数检验方法、装置及存储介质 |
PCT/CN2020/093525 WO2021212611A1 (zh) | 2020-04-23 | 2020-05-29 | 加密数据对等关系参数检验方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010326385.6A CN111628865B (zh) | 2020-04-23 | 2020-04-23 | 加密数据对等关系参数检验方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111628865A CN111628865A (zh) | 2020-09-04 |
CN111628865B true CN111628865B (zh) | 2021-06-29 |
Family
ID=72271643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010326385.6A Active CN111628865B (zh) | 2020-04-23 | 2020-04-23 | 加密数据对等关系参数检验方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111628865B (zh) |
WO (1) | WO2021212611A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967516B (zh) * | 2015-07-24 | 2018-04-24 | 四川理工学院 | 多用户加密数据可比较加密方法及加密数据比较方法 |
US11533300B2 (en) * | 2017-03-30 | 2022-12-20 | Arizona Board Of Regents On Behalf Of Northern Arizona University | Encryption schemes with addressable elements |
CN110224985B (zh) * | 2019-05-07 | 2022-07-08 | 平安科技(深圳)有限公司 | 数据处理的方法及相关装置 |
CN110399735A (zh) * | 2019-06-21 | 2019-11-01 | 深圳壹账通智能科技有限公司 | 加密数据大小关系证明方法、装置、设备及存储介质 |
CN110505046B (zh) * | 2019-07-29 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 |
CN110912713B (zh) * | 2019-12-20 | 2023-06-23 | 支付宝(杭州)信息技术有限公司 | 多方联合进行模型数据处理的方法及装置 |
-
2020
- 2020-04-23 CN CN202010326385.6A patent/CN111628865B/zh active Active
- 2020-05-29 WO PCT/CN2020/093525 patent/WO2021212611A1/zh active Application Filing
Non-Patent Citations (2)
Title |
---|
《Perfect zero knowledge for》;Alex B. Grilo;《IEEE》;20200106;全文 * |
《基于密码技术的智能电能表软件备案与比对系统设计》;吕英杰,徐文静,刘鹰,李保丰;《电网技术》;20161130;全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2021212611A1 (zh) | 2021-10-28 |
CN111628865A (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021238527A1 (zh) | 数字签名生成方法、装置、计算机设备和存储介质 | |
CN110224837B (zh) | 基于分布式身份标识的零知识证明方法及终端 | |
CN110505046B (zh) | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 | |
CN111200502B (zh) | 协同数字签名方法和装置 | |
CN113569294B (zh) | 一种零知识证明方法及装置、电子设备、存储介质 | |
CN111835526B (zh) | 一种生成匿名凭证的方法及系统 | |
CN110311776B (zh) | 范围证明方法、装置、计算机设备和存储介质 | |
WO2020038137A1 (zh) | 二维码生成方法、数据处理方法、装置及服务器 | |
CN112801663B (zh) | 区块链存证方法、装置、系统、设备和介质 | |
JP2002175009A (ja) | ディジタル署名生成方法およびディジタル署名検証方法 | |
EP2747377B1 (en) | Trusted certificate authority to create certificates based on capabilities of processes | |
CN112311779B (zh) | 应用于区块链系统的数据访问控制方法及装置 | |
WO2023206869A1 (zh) | 基于格的代理签名及验证方法、装置、设备和存储介质 | |
CN110990484A (zh) | 基于区块链的信息存储方法、系统、计算机设备及存储介质 | |
CN111340485B (zh) | 一种用于联盟区块链的数字证书的配置方法、终端和根证书服务器 | |
CN111245626B (zh) | 零知识证明方法、装置及存储介质 | |
CN113420277B (zh) | 基于智能合约的数字身份管理和验证方法 | |
US20170207914A1 (en) | Computer-readable recording medium, shared key generation method, and information processing terminal | |
CN112667743B (zh) | 应用于传输终端的数据上链方法、系统、设备、存储介质 | |
CN113507373A (zh) | 一种基于隐私保护的身份认证数据建模方法、设备和系统 | |
CN111628865B (zh) | 加密数据对等关系参数检验方法、装置及存储介质 | |
WO2021196478A1 (zh) | 加密数据对等关系比对方法、装置、计算机设备及存储介质 | |
Wang et al. | Perfect ambiguous optimistic fair exchange | |
CN113326527A (zh) | 一种基于区块链的可信数字签名系统及方法 | |
KR20120071015A (ko) | 제어가능 연결성을 제공하는 그룹서명 장치 및 방법 |
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 |