CN115378600A - 一种基于离散对数的可验证变色龙哈希验证方法 - Google Patents

一种基于离散对数的可验证变色龙哈希验证方法 Download PDF

Info

Publication number
CN115378600A
CN115378600A CN202210889020.3A CN202210889020A CN115378600A CN 115378600 A CN115378600 A CN 115378600A CN 202210889020 A CN202210889020 A CN 202210889020A CN 115378600 A CN115378600 A CN 115378600A
Authority
CN
China
Prior art keywords
hash
user
chameleon
trapdoor
verifiable
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
CN202210889020.3A
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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information 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 Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202210889020.3A priority Critical patent/CN115378600A/zh
Publication of CN115378600A publication Critical patent/CN115378600A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于离散对数的可验证变色龙哈希验证方法,所述方法通过设置一个验证参数,允许普通用户执行哈希计算,并可证明该普通用户所述提交的r=(ga,ya)元组中的随机数a分别是g和y的离散对数,使算法升级为可验证变色龙哈希算法,允许不可信的普通用户使用变色龙哈希算法计算哈希值,并允许第三方验证哈希值的有效性。本发明将已有的基于离散对数的变色龙哈希算法升级成可验证算法,使不知道陷门秘密的一般用户也能使用算法计算变色龙哈希值。无论一般用户计算的哈希值,还是陷门用户计算的哈希碰撞值,都提供了零知识证明来验证有效性。改进后的算法更适合于区块链场景,可为区块链技术增加可修订(Redactable)能力。

Description

一种基于离散对数的可验证变色龙哈希验证方法
技术领域
本发明涉及密码学技术领域,具体提供一种基于离散对数的可验证变色龙哈希验证方法。
背景技术
变色龙哈希函数也称作陷门哈希函数,首先由Krawczyk和Rabin提出。“变色龙”的意思是陷门信息的拥有者可以在不改变函数输出的前提下,随意的改变函数的输入。在变色龙哈希函数中,掌握陷门信息的人能过很容易的计算出一个随机输入的碰撞,没有掌握陷门信息的人则无法计算出碰撞。
在变色龙哈希函数中,假设签名者是S,签名的接收者是R,接收者R根据一个特定的密钥生成算法生成系统需要的公钥和私钥,其中公钥表示为HK,私钥表示为PK,变色龙哈希函数表示为CHAM-HASH(·,·),它可以由公钥HK快速的计算出来,例如,输入一条消息m和一个随机值r,则此变色龙哈希函数的变色龙哈希值h就可以表示为h=CHAM-HASH(m,r)。
变色龙哈希函数是一个非标准的抗碰撞哈希函数,它包含一对公钥私钥对,分别用hashkeyHK和trapdoorkeyTK(陷门信息)表示。与传统哈希函数相比,变色龙哈希函数具有以下特性:
(1)如果一个人知道陷门信息,他就可以计算与hashkey相关联的变色龙哈希函数。
(2)对于不知道陷门信息的人而言,变色龙哈希函数通常都是抗碰撞的。
(3)掌握陷门信息的人面对任何给定输入都可以非常轻易的计算出与原始消息不同的一个碰撞。
通常,一个变色龙哈希方案由以下四个算法组成:
(1)系统参数生成算法,输入一个安全的参数k,输出系统参数SP。
(2)密钥生成算法,负责生成变色龙哈希函数所需要的公钥和私钥,方法如下,输入系统参数SP,为每一个用户输出一个公钥/私钥对(SK,PK)。
(3)哈希值的生成,如果输入用户的公钥PK,任意一条消息m和一个随机值r,其中r∈Zq*,则输出一个哈希值h,其中h=Hash(m,r)。
(4)一个有效的碰撞计算算法,输入用户的私钥SK,一条消息m和一个随机值r,以及另外一条消息m’,输出一个整数r’,其中r’∈Zq*,计算出Hash(m’,r’)=Hash(m,r),通过这个算法,我们可以快速的找到不同于被签名消息m的一个碰撞m’。
论文《Key-Exposure Free Chameleon Hashing and Signatures Based onDiscrete Logarithm Systems》》中提出了一种基于离散对数的无密钥暴露变色龙哈希函数算法(详见附录[1]),其基本原理是:
(1)系统参数生成PG:设G是g生成的乘法群,其阶为素数q。设H:{0,1}→G*是一个全域抗碰撞哈希函数。系统参数为SP={G,q,g,H}。
(2)密钥生成KG:任何用户随机选择一个整数x∈R Zq*作为他的陷门密钥,并发布他的哈希公钥y=gx。y的有效性可以通过可信证书颁发机构颁发的证书来确保。
(3)哈希计算H:在输入哈希密钥y时,自定义标识I,设h=H(y,I)。选择一个随机整数a∈RZq*,并计算r=(ga,ya)。我们提出的变色龙哈希函数定义为
H=Hash(I,m,r)=gahm
(4)碰撞计算F:对于任何有效的哈希值H,可以使用算法F计算与陷门密钥x的哈希碰撞,如下所示:
F(H,x,I,m,r,m′)=r′=(ga′,ya′),
其中,ga′=gahm-m′和ya′=yahx(m-m′)
在这篇论文中,作者提到拥有陷门密钥x的人可以证明<g,y,ga′,ya′>是有效的Diffie-Hellman元组,即
Figure BDA0003766825000000021
发明内容
在实际变色龙哈希算法的实际使用中,一般不是持有陷门密钥的人执行(3)哈希计算,而是普通用户。例如在可修订区块链场景中,共识节点执行变色龙哈希算法来形成默克尔树,共识节点用户并不知道陷门密钥x。
本发明通过增加了一个验证参数,允许普通用户执行(3)哈希计算,却仍然可以证明自己提交的r=(ga,ya)元组中的随机数a分别是g和y的离散对数。
鉴于以上问题和技术,本发明提供了如下技术方案:
一种基于离散对数的可验证变色龙哈希验证方法,所述方法通过设置一个验证参数,允许普通用户执行哈希计算,并可证明该普通用户所述提交的r=(ga,ya)元组中的随机数a分别是g和y的离散对数,使算法升级为可验证变色龙哈希算法,允许不可信的普通用户使用变色龙哈希算法计算哈希值,并允许第三方验证哈希值的有效性。
更进一步的,所述方法的实现过程包括步骤如下:
1)进行安全设置,定义乘法群参数和内部哈希算法;
系统参数生成:生成乘法群G,定义哈希函数H;
2)为陷门持有者生成陷门密钥和对应公钥;
陷门持有方生成陷门x、公钥y;
3)一般用户利用哈希公钥计算变色龙哈希值,利用零知识证明证明哈希值有效性;
一般用户利用公钥y计算变色龙哈希;
4)任意用户可利用零知识证明验证变色龙哈希值的有效性,
提供两种验证算法分别验证由一般用户计算的哈希值和陷门持有者计算碰撞哈希值;
5)陷门持有者利用陷门密钥x计算新消息的哈希碰撞和相应零知识证明。
更进一步的,所述方法涉及三类用户:陷门持有者用户A、哈希计算用户B、哈希验证用户C,其中:
用户A执行所述步骤1)、2)、5),
用户B执行步骤3),
用户C执行步骤4)。
更进一步的,所述方法的计算过程包括:
步骤(1)、系统参数生成PG:
设G是g生成的乘法群,其阶为素数q,设Hash:{0,1}→G*是一个全域抗碰撞哈希函数,系统参数为SP={G,q,g,H};
步骤(2)、密钥生成KG:
所述陷门持有者用户随机选择一个整数x∈R Zq*作为其陷门密钥,并发布其哈希公钥y=gx;y的有效性可通过可信证书颁发机构颁发的证书来确保;
步骤(3)、哈希计算H:
在输入哈希密钥y时,自定义标识I,设h=Hash(y,I);
选择一个随机整数a∈R Zq *,并计算r=(ga,ya,v),其中v是验证参数;
变色龙哈希函数定义为:
H=Hash(I,m,r)=gahm
v的计算公式:
伪随机数:w=Hash(h,ga,ya)
挑战:c=Hash(y,gw)
验证参数:v=ac+w
哈希计算的输出是r=(ga,ya,v)和H。
更进一步的,所述方法的实现还包括步骤(4)哈希验证V,具体计算过程如下:
利用r=(ga,ya,v)和m,验证H是否为有效的哈希值。
更进一步的,所述方法的实现还包括步骤(5)计算哈希碰撞F,具体计算过程如下:
对于任何有效的哈希值H,使用算法F计算与陷门密钥x的哈希碰撞,如下所示:
F(H,x,I,m,r,m′)=r′=(ga′,ya′,v′),
其中,ga′=gahm-m′,ya′=yahx(m-m′)
生成一个Schnorr非交互零知识证明,证明
Figure BDA0003766825000000041
具体的计算过程如下:
计算v′=xc′+w′:
伪随机数:w′=Hash(h,ga′,ya′)
挑战:c′=Hash(y,gw′)
验证参数:v′=xc′+w′
所述哈希碰撞计算的输出是r′=(gα′,yα′,v′)和H′=H;
所述零知识证明v′的验证方法,是检测等式gv′=gw′yc′是否成立,这也是第(4)步用到的检测方法(第二种可能)。
更进一步的,所述其中H有效有两种可能:
第一种可能是:(H,ga,ya)是由步骤(4)生成;
第二种可能是:(H,ga′,ya′)是由步骤(5)生成。
两种可能的验证算法不同,但都是有效的。
更进一步的,所述第一种可能(v由第(3)步生成)的验证过程如下:
已知r=(ga,ya,v),计算h=Hash(y,I),w=Hash(h,ga,ya),c=Hash(y,gw);
检测gw(ga)c=gv和yw(ya)c=yv是否同时成立,且y是否为有效的哈希公钥,
如果同时成立且y有效,则r.v有效(注r.v表示三元组r的第三个元素v)。
更进一步的,所述验证方法通过构造一个零知识证明v,验证r的前两个元素分别是ga和ya,证明计算哈希的用户输出的r符合规则,具体实现步骤包括:
基本思路是将三步Schonnr协议改造成非交互的零知识证明。
w是证明方随机数(又叫临时密钥),c是验证方挑战,v是证明方反馈值;
由于v=ac+w,则验证gw(ga)c=gv时,等式左侧gw(ga)c=gwgac=gw+ac=gv(即等式右侧);等式yw(ya)c=yv的也是同样原理。
更进一步的,所述步骤(5)碰撞计算的正确性分析过程如下:
由计算公式v′=xc′+w′可知:gv′=gxc′+w′
等式右侧进一步改写为:(gx)c′gw′,而gx=y(参考步骤(2)的密钥生成),则等式右侧变成yc′gw′,最终得出:gv′=gw′yc′
与现有技术相比,本发明一种基于离散对数的可验证变色龙哈希验证方法具有以下突出的有益效果:
本发明将已有的基于离散对数的变色龙哈希算法升级成可验证算法,使不知道陷门秘密的一般用户也能使用算法计算变色龙哈希值。无论一般用户计算的哈希值,还是陷门用户计算的哈希碰撞值,都提供了零知识证明来验证有效性。改进后的算法更适合于区块链场景,可为区块链技术增加可修订(Redactable)能力。
本发明变色龙哈希算法在可修订区块链的使用解释:
新型区块链的可修订特性旨在解决:
1)用户隐私数据被写入区块链,用户行使“被遗忘权”;
2)反动、色情的违法有害信息被写入区块链,监管机构要求删除相关链上数据。
区块链的可修订特性的实现方式是用变色龙哈希算法代替一般哈希算法。
在可修订区块链中陷门持有者用户A、哈希计算用户B、哈希验证用户C的角色定位有所不同。陷门持有者用户一般是监管机构、权威机构,负责链上数据的修订。哈希计算用户是写链用户或共识记账用户(矿工或背书方)。哈希验证用户可以是任意用户,如新加入的节点在同步数据时验证数据的有效性。
附图说明
图1是本发明方法实现流程图。
具体实施方式
下面将结合附图和实施例,对本发明作进一步详细说明。
一种基于HDFS和MapReduce的Apache Phoenix表的跨集群数据迁移方法,涉及三类用户:陷门持有者用户A、哈希计算用户B、哈希验证用户C。用户A执行下面的1、2、5步,用户B执行第3步,用户C执行第4步。下文中对A/B/C三类用户在可修订区块链中的角色定位有更详细的描述。
(1)系统参数生成
系统参数生成PG:设G是g生成的乘法群,其阶为素数q。设Hash:{0,1}→G*是一个全域抗碰撞哈希函数。系统参数为SP={G,q,g,H}。
(2)密钥生成
密钥生成KG:陷门持有者用户随机选择一个整数x∈RZq *作为他的陷门密钥,并发布他的哈希公钥y=gx。y的有效性可以通过可信证书颁发机构颁发的证书来确保。
(3)哈希计算
哈希计算H:在输入哈希密钥y时,自定义标识I,设h=Hash(y,I)。选择一个随机整数a∈RZq *,并计算r=(ga,ya,v),其中v是验证参数。变色龙哈希函数定义为
H=Hash(I,m,r)=gahm
v的计算公式:
伪随机数:w=Hash(h,ga,ya)
挑战:c=Hash(y,gw)
验证参数:v=ac+w。
哈希计算的输出是r=(ga,ya,v)和H。
(4)哈希验证
哈希验证V:利用r=(ga,ya,v)和m,验证H是否为有效的哈希值。H有效有两种可能,第一种可能是这个(H,ga,ya)是第(4)步生成的,第二种可能是这个(H,ga′,ya′)是第(5)生成的。两种可能的验证算法不同,但都是有效的。
1.验证第一种可能(v由第(3)步生成)。已知r=(ga,ya,v),验证方法如下:
计算h=Hash(y,I),w=Hash(h,ga,ya),c=Hash(y,gw);
检测gw(ga)c=gv和yw(ya)c=yv是否同时成立且y是有效的哈希公钥,如果同时成立且y有效,则r.v有效(注r.v表示三元组r的第三个元素v)。
2.验证第二种可能(v由第(5)步生成)。已知r′=(ga′,ya′,v′)。
这时要验证的是等式
Figure BDA0003766825000000071
是否成立。验证方法如下:
计算h=Hash(y,I),w′=Hash(h,ga′,ya′),c′=Hash(y,gw′);
检测等式gv′=gw′yc′是否成立,如果等式成立,则r′.v′有效。
3.然后,验证哈希值H的有效性。
计算h=Hash(y,I),H′=Hash(I,m,r)=aahm
验证H=H′是否成立,如果成立则H值有效。
如果①和②其中之一有效,且③有效,则哈希验证通过。
(5)计算哈希碰撞
碰撞计算F:对于任何有效的哈希值H,可以使用算法F计算与陷门密钥x的哈希碰撞,如下所示:
F(H,x,I,m,r,m′)=r′=(ga′,ya′,v′),
其中,ga′=gahm-m′和ya′=yahx(m-m′)
下面需要证明
Figure BDA0003766825000000072
方法是生成一个Schnorr非交互零知识证明。具体的,计算v′=xc′+w′:
伪随机数:w′=Hash(h,ga′,ya′)
挑战:c′=Hash(y,gw′)
验证参数:v′=xc′+w′。
哈希碰撞计算的输出是r′=(gα′,yα′,v′)和H′=H。零知识证明v′的验证方法,是检测等式gv′=gw′yc′是否成立,这也是第(4)步用到的检测方法(第二种可能)。
(6)算法的正确性分析
①第(3)步验证值v的计算方法和第(4)步利用v进行验证的正确性分析:
这里构造了一个零知识证明v,证明计算哈希的用户输出的r符合规则,即r的前两个元素分别是ga和ya。基本思路是将三步Schonnr协议改造成非交互的零知识证明。
w是证明方随机数(又叫临时密钥),c是验证方挑战,v是证明方反馈值。由于v=ac+w,则验证gw(ga)c=gv时,等式左侧gw(ga)c=gwgac=gw+ac=gv(即等式右侧)。等式yw(ya)c=yv的也是同样原理。这是第(4)步①中使用的验证公式。
②第(5)步碰撞计算的正确性分析:
由计算公式v′=xc′+w′可以知道:gv′=gxc′+w′,等式右侧可以进一步改写为(gx)c′gw′,而gx=y(参考第(2)步的密钥生成),则等式右侧可变成yc′gw′,最终就是gv′=gw′yc′。这是第(4)步②中使用的验证公式。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (10)

1.一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述方法通过设置一个验证参数,允许普通用户执行哈希计算,并可证明该普通用户所述提交的r=(ga,ya)元组中的随机数a分别是g和y的离散对数,使算法升级为可验证变色龙哈希算法,允许不可信的普通用户使用变色龙哈希算法计算哈希值,并允许第三方验证哈希值的有效性。
2.根据权利要求1所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述方法的实现过程包括步骤如下:
1)进行安全设置,定义乘法群参数和内部哈希算法;
系统参数生成:生成乘法群G,定义哈希函数H;
2)为陷门持有者生成陷门密钥和对应公钥;
陷门持有方生成陷门x、公钥y;
3)一般用户利用哈希公钥计算变色龙哈希值,利用零知识证明证明哈希值有效性;
一般用户利用公钥y计算变色龙哈希;
4)任意用户可利用零知识证明验证变色龙哈希值的有效性,
提供两种验证算法分别验证由一般用户计算的哈希值和陷门持有者计算碰撞哈希值;
5)陷门持有者利用陷门密钥x计算新消息的哈希碰撞和相应零知识证明。
3.根据权利要求2所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,
所述方法涉及三类用户:陷门持有者用户A、哈希计算用户B、哈希验证用户C,其中:
用户A执行所述步骤1)、2)、5),
用户B执行步骤3),
用户C执行步骤4)。
4.根据权利要求3所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述方法的计算过程包括:
步骤(1)、系统参数生成PG:
设G是g生成的乘法群,其阶为素数q,设Hash:{0,1}→G*是一个全域抗碰撞哈希函数,系统参数为SP={G,q,g,H};
步骤(2)、密钥生成KG:
所述陷门持有者用户随机选择一个整数x∈R Zq*作为其陷门密钥,并发布其哈希公钥y=gx;y的有效性可通过可信证书颁发机构颁发的证书来确保;
步骤(3)、哈希计算H:
在输入哈希密钥y时,自定义标识I,设h=Hash(y,I);
选择一个随机整数a∈RZq *,并计算r=(ga,ya,v),其中v是验证参数;
变色龙哈希函数定义为:
H=Hash(I,m,r)=gahm
v的计算公式:
伪随机数:w=Hash(h,ga,ya)
挑战:c=Hash(y,gw)
验证参数:v=ac+w
哈希计算的输出是r=(ga,ya,v)和H。
5.根据权利要求4所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述方法的实现还包括步骤(4)哈希验证V,具体计算过程如下:
利用r=(ga,ya,v)和m,验证H是否为有效的哈希值。
6.根据权利要求5所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述方法的实现还包括步骤(5)计算哈希碰撞F,具体计算过程如下:
对于任何有效的哈希值H,使用算法F计算与陷门密钥x的哈希碰撞,如下所示:
F(H,x,I,m,r,m′)=r′=(ga′,ya′,v′),
其中,ga′=gahm-m′,ya′=yahx(m-m′)
生成一个Schnorr非交互零知识证明,证明
Figure FDA0003766824990000021
具体的计算过程如下:
计算v′=xc′+w′:
伪随机数:w′=Hash(h,ga′,ya′)
挑战:c′=Hash(y,gw′)
验证参数:v′=xc′+w′
所述哈希碰撞计算的输出是r′=(gα′,yα′,v′)和H′=H;
所述零知识证明v′的验证方法,是检测等式gv′=gw′yc′是否成立。
7.根据权利要求6所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述其中H有效有两种可能:
第一种可能是:(H,ga,ya)是由步骤(4)生成;
第二种可能是:(H,ga′,ya′)是由步骤(5)生成。
8.根据权利要求7所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述第一种可能(v由第(3)步生成)的验证过程如下:
已知r=(ga,ya,v),计算h=Hash(y,I),w=Hash(h,ga,ya),c=Hash(y,gw);
检测gw(ga)c=gv和yw(ya)c=yv是否同时成立,且y是否为有效的哈希公钥,
如果同时成立且y有效,则r.v有效。
9.根据权利要求8所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述验证方法通过构造一个零知识证明v,验证r的前两个元素分别是ga和ya,证明计算哈希的用户输出的r符合规则,具体实现步骤包括:
w是证明方随机数,c是验证方挑战,v是证明方反馈值;
由于v=ac+w,则验证gw(ga)c=gv时,等式左侧gw(gA)c=gwgac=gw+ac=gv;等式yw(ya)c=yv的也是同样原理。
10.根据权利要求9所述的一种基于离散对数的可验证变色龙哈希验证方法,其特征在于,所述步骤(5)碰撞计算的正确性分析过程如下:
由计算公式v′=xc′+w′可知:gv′=gxc′+w′
等式右侧进一步改写为:(gx)c′gw′,而gx=y,则等式右侧变成yc′gw′,最终得出:gv′=gw′yc′
CN202210889020.3A 2022-07-27 2022-07-27 一种基于离散对数的可验证变色龙哈希验证方法 Pending CN115378600A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210889020.3A CN115378600A (zh) 2022-07-27 2022-07-27 一种基于离散对数的可验证变色龙哈希验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210889020.3A CN115378600A (zh) 2022-07-27 2022-07-27 一种基于离散对数的可验证变色龙哈希验证方法

Publications (1)

Publication Number Publication Date
CN115378600A true CN115378600A (zh) 2022-11-22

Family

ID=84064239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210889020.3A Pending CN115378600A (zh) 2022-07-27 2022-07-27 一种基于离散对数的可验证变色龙哈希验证方法

Country Status (1)

Country Link
CN (1) CN115378600A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601605A (zh) * 2015-02-28 2015-05-06 北方工业大学 云存储中基于变色龙哈希函数的高效隐私保护审计方案
US20190073146A1 (en) * 2017-09-01 2019-03-07 Accenture Global Solutions Limited Turn-Control Rewritable Blockchain
CN110086599A (zh) * 2019-04-24 2019-08-02 电子科技大学 基于同态变色龙哈希函数的哈希计算方法及签密方法
CN110086631A (zh) * 2019-04-29 2019-08-02 电子科技大学 一种可更新变色龙哈希函数的方法
CN110176995A (zh) * 2019-06-17 2019-08-27 西安邮电大学 后量子安全的格上无证书签密方法
CN111709749A (zh) * 2020-06-16 2020-09-25 西安安盟智能科技股份有限公司 一种具有条件隐私保护的可追踪区块链交易系统
CN111988290A (zh) * 2020-08-05 2020-11-24 上海交通大学 用户余额隐私保护和授权监管下的交易删除方法及系统
CN112468302A (zh) * 2020-10-23 2021-03-09 湖南天河国云科技有限公司 基于可验证多方秘密分享的可编辑区块链
CN114143080A (zh) * 2021-11-30 2022-03-04 兰州理工大学 基于零知识证明的区块链数据隐私保护和共享方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601605A (zh) * 2015-02-28 2015-05-06 北方工业大学 云存储中基于变色龙哈希函数的高效隐私保护审计方案
US20190073146A1 (en) * 2017-09-01 2019-03-07 Accenture Global Solutions Limited Turn-Control Rewritable Blockchain
CN110086599A (zh) * 2019-04-24 2019-08-02 电子科技大学 基于同态变色龙哈希函数的哈希计算方法及签密方法
CN110086631A (zh) * 2019-04-29 2019-08-02 电子科技大学 一种可更新变色龙哈希函数的方法
CN110176995A (zh) * 2019-06-17 2019-08-27 西安邮电大学 后量子安全的格上无证书签密方法
CN111709749A (zh) * 2020-06-16 2020-09-25 西安安盟智能科技股份有限公司 一种具有条件隐私保护的可追踪区块链交易系统
CN111988290A (zh) * 2020-08-05 2020-11-24 上海交通大学 用户余额隐私保护和授权监管下的交易删除方法及系统
CN112468302A (zh) * 2020-10-23 2021-03-09 湖南天河国云科技有限公司 基于可验证多方秘密分享的可编辑区块链
CN114143080A (zh) * 2021-11-30 2022-03-04 兰州理工大学 基于零知识证明的区块链数据隐私保护和共享方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
侯红霞;何业锋;: "强指定验证者的无证书变色龙数字签名方案", 山东大学学报(理学版), no. 09, 5 September 2012 (2012-09-05) *
杨波;肖自碧;杨义先;胡正名;钮心忻;: "新的强指定多个验证者签名方案", 北京邮电大学学报, no. 05, 15 October 2007 (2007-10-15) *
赵秀凤;: "哈希证明系统及应用研究", 计算机科学, no. 1, 15 June 2012 (2012-06-15) *
邹永杰;: "新的基于身份的变色龙签名体制", 网络安全技术与应用, no. 08, 15 August 2009 (2009-08-15) *

Similar Documents

Publication Publication Date Title
CN107948143B (zh) 一种云存储中基于身份的隐私保护完整性检测方法和系统
Bagherzandi et al. Multisignatures secure under the discrete logarithm assumption and a generalized forking lemma
JP7493014B2 (ja) 複数のストレージノードにわたる大きいブロックチェーンのセキュアな記憶を可能にする、コンピュータにより実現されるシステム及び方法
CN109698754B (zh) 基于环签名的车队安全管理系统及方法、车辆管理平台
Hwang et al. Group signatures with controllable linkability for dynamic membership
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
JP2009526411A5 (zh)
JPH08328472A (ja) 認証交換方法、復元型電子署名方法、付加型電子署名方法、鍵交換方法、復元型公衆電子署名方法、付加型公衆電子署名方法およびブラインド電子署名方法
CN107835082B (zh) 一种基于身份的可追踪环签名认证协议
CN110048836B (zh) 一种可追踪用户身份的云共享数据完整性审计方法
CN106341232A (zh) 一种基于口令的匿名实体鉴别方法
CN111654366B (zh) 一种安全的pki与ibc之间的双向异构强指定验证者签名方法
CN111092732B (zh) 一种车联网中基于无证书群签名的匿名认证方法
CN113360943A (zh) 一种区块链隐私数据的保护方法及装置
WO2022089865A1 (en) Identifying denial-of-service attacks
CN113919008A (zh) 具有固定签名长度的可追踪属性基签名方法及系统
CN115529134A (zh) 格上基于身份的代理盲签名方法
CN105187208B (zh) 非授权的基于无证书的强指定验证者签名体制
Chi et al. A privacy-preserving zero-knowledge proof for blockchain
Kim et al. Privacy-preserving public auditing for shared cloud data with secure group management
CN109766716A (zh) 一种基于可信计算的匿名双向认证方法
Jiang et al. An anonymous communication scheme based on ring signature in VANETs
Fan et al. Attribute-based strong designated-verifier signature scheme
CN113452529A (zh) 一种基于sm2算法的适配器签名生成方法
CN110278073B (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