CN115174037B - 一种基于sm9签名的变色龙哈希函数的构造方法及装置 - Google Patents
一种基于sm9签名的变色龙哈希函数的构造方法及装置 Download PDFInfo
- Publication number
- CN115174037B CN115174037B CN202210723512.5A CN202210723512A CN115174037B CN 115174037 B CN115174037 B CN 115174037B CN 202210723512 A CN202210723512 A CN 202210723512A CN 115174037 B CN115174037 B CN 115174037B
- Authority
- CN
- China
- Prior art keywords
- hash
- hash value
- message
- hash function
- chameleon
- 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
- 241000122205 Chamaeleonidae Species 0.000 title claims abstract description 72
- 238000010276 construction Methods 0.000 title claims abstract description 21
- 230000006870 function Effects 0.000 claims abstract description 94
- 238000000034 method Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
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
本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法及装置,本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法及装置,通过以下技术方案实现:用户可以通过构造的变色龙哈希函数计算哈希值:在知道用户私钥的情况,可以伪造一个新的消息对(m″,R″)使得Hash(ID,m″,R″)=Hash(ID,m,R),即找到哈希碰撞。本发明具有安全性高、功能完善等优点。产生哈希值后,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,能够被应用于变色龙签名、可编辑区块链等多个应用领域。
Description
技术领域
本发明涉及信息安全技术领域,尤其涉及一种基于SM9签名的变色龙哈希函数的构造方法及装置。
背景技术
哈希函数可以把任意长度的输入变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,散列值的空间通常远小于输入的空间。哈希函数中不同的输入可能会散列成相同的输出,而不能从哈希值来唯一的确定输入值。哈希函数具有抗碰撞性,即找到域中两个哈希值相同的元素在计算上是不可行的。哈希函数被广泛应用于消息认证、数字签名、口令保护等场景。
目前已有的基于身份的变色龙哈希方法主要基于国际算法来设计,例如BLS签名、ZSS签名等,缺乏基于我国商用密码标准的变色龙哈希函数以及相应的构造方法。
发明内容
本发明提供一种基于SM9签名的变色龙哈希函数的构造方法及装置,用以解决或者至少部分解决现有技术中存在的安全性不高和功能不够完善的技术问题。
为了解决上述技术问题,本发明第一方面提供了一种基于SM9签名的变色龙哈希函数的构造方法,包括:
获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
在一种实施方式中,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,作为主私钥,并计算系统公钥Ppub=[d]P2;
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1 mod q]P1;
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为/>
在一种实施方式中,基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
在一种实施方式中,基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
其中,m′表示当前的消息,R′表示当前的随机元素。
在一种实施方式中,基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素的方式为:
R″=H2(m″)-1([H2(m)-H2(m″)]DID+[H2(m)]R)
R″表示伪造的随机元素,m″表示伪造的消息,R、m表示原始随机元素和原始消息,DID为用户私钥。
基于同样的发明构思,本发明第二方面提供了一种基于SM9签名的变色龙哈希函数的构造装置,包括:
参数获取模块,用于获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
函数构造模块,用于构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
验证模块,用于基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
碰撞计算模块,用于基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
基于同样的发明构思,本发明第三方面提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被执行时实现第一方面所述的方法。
基于同样的发明构思,本发明第四方面提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
相对于现有技术,本发明的优点和有益的技术效果如下:
本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法,包括获取相关参数、、构造变色龙哈希函数、哈希值验证以及碰撞计算步骤,本发明具有安全性高、功能完善等优点。产生哈希值后,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,能够被应用于变色龙签名、可编辑区块链等多个应用领域。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于SM9签名的变色龙哈希函数的构造方法的流程图;
图2为本发明实施例中提供的区块链的哈希结构示意图;
图3为本发明实施例提供的计算机可读存储介质的结构示意图;
图4为本发明实施例提供的计算机设备的结构示意图。
具体实施方式
本发明的目的在于提出一种基于SM9签名的变色龙哈希函数的构造方法,通过构造的变色龙哈希函数,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,并基于SM9算法实现,具有安全性高、功能完善等特点。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种基于SM9签名的变色龙哈希函数的构造方法,包括:
获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素(即实现哈希碰撞的元素)。具体来说,变色龙哈希函数是一种单向陷门哈希函数:在不知道相关陷门的情况下,变色龙哈希函数可以抵抗原像和碰撞的计算。如果陷门信息已知,则可以高效地计算出任何输入数据地碰撞,即在不改变输出哈希值的情况下,改变输入为任意值。
SM9标识密码算法是国家密码管理局于2016年3月28日发布的一种标识密码标准(标准表号:GM/T 0044-2016SM9标识密码算法),它是一种基于双线性对的标识密码算法,可以把用户的身份标识作为公钥并借以生成用户的私钥。SM9标识密码算法的应用与管理不需要数字证书、证书库或密钥库,主要包含三个部分:数字签名算法、公钥加密算法、密钥交换协议。SM9标准满足电子认证服务系统等应用需求,并弥补了国产标识密码体制的空白。
本发明设计了一种基于SM9签名的变色龙哈希方案,此方案生成哈希值后,用户在不知道用户私钥的情况下无法找到哈希碰撞,在知晓私钥的情况下可以找到哈希碰撞。
为保证通用性,本发明的参数选取与SM9签名算法标准参数保持一致。具体符号描述如下:
q:一个大素数。
由1,2,,…,q-1组成的整数集合。
G1,G2:阶为q的加法循环群。
GT:阶为q的乘法循环群。
P1,P2:分别为群G1和G2的生成元。
[k]P:椭圆曲线上点P的k倍点,k是正整数。
e:从G1×G2到GT的双线性对映射。
H1(·),H2(·):由密码杂凑函数派生的密码函数,均为
d:由密钥生成中心KGC秘密持有的系统主私钥。
ppub:由密钥生成中心KGC公开的系统主公钥,计算公式为Ppub=[d]P2。
ID:用户的身份。
DID:用户的私钥。
m:待哈希的消息(原始消息)。
m′:待验证的消息。
m″:伪造的消息。
mod q:模q运算。例如,23 mod 7≡2。
R:计算哈希时选择的随机元素R∈G1。
R′:待验证的随机元素R′∈G1。
R″:计算哈希碰撞时得到的随机元素R″∈G1。
本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法及装置,通过以下技术方案实现:用户可以通过构造的变色龙哈希函数计算哈希值:
在知道用户私钥的情况,可以伪造一个新的消息对(″,R″)使得Hash(ID,m″,R″)=Hash(ID,m,R),即找到哈希碰撞。
本发明具有安全性高、功能完善等优点。产生哈希值后,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,能够被应用于变色龙签名、可编辑区块链等多个应用领域。
具体地,请参见图1,为本发明实施例提供的基于SM9签名的变色龙哈希函数的构造方法的流程图。
具体实施过程中,首先获取用户的身份标识,并基于可信密钥生成中心获取系统的公钥和用户私钥,获取原始消息和原始随机元素,构造变色龙哈希函数,并基于以上所有的参数进行哈希运算得到第一哈希值,接着是验证哈希值是否正确,具体地,获取系统公钥、用户私钥、用户身份标识、当前的随机元素和当前的消息,基于这些参数利用变色龙哈希函数计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,如果相等,则表示正确。最后,进行哈希碰撞计算,基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素。
在一种实施方式中,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,作为主私钥,并计算系统公钥Ppub=[d]P2;
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1mod q]P1;
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为/>
在一种实施方式中,基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
在一种实施方式中,基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
其中,m′表示当前的消息,R′表示当前的随机元素。
在一种实施方式中,基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素的方式为:
R″=H2(m″)-1([H2(m)-H2(m″)]DID+[H2(m)]R)
R″表示伪造的随机元素,m″表示伪造的消息,R、m表示原始随机元素和原始消息,DID为用户私钥。
即,找到另外的伪造的消息、伪造的随机元素m″、R″,使得下式成立:Hash(ID,m″,R″)=Hash(ID,m,R)。
而对于普通哈希函数,给定一个哈希值z==Hash(ID,m,R),找不到这样的m″、R″使得上式成立,只有变色龙哈希函数这种特殊的哈希算法才可以找到。
通过用户私钥,伪造的消息可以实现哈希值的伪造,是因为以下等式成立:
为了更清楚地说明本发明的有益效果,下面通过一个具体的应用场景进行介绍。
例如,变色龙哈希可应用于可修改区块链场景中。区块链是由多个分布式节点共同维护的数据账本,通常情况下链上数据无法被修改,因为这是由哈希链组成,即本区块包含对上一个区块所有内容的哈希值,下一个区块包含对本区块所有内容的哈希值,进而形成链式结构,如图2所示。受限于该结构,对区块链某个区块数据的修改,则必须需要一连串修改该区块后面的所有区块,这在现在的区块链系统中难以完成。本发明设计的变色龙哈希可以解决上述问题,在系统初始化阶段(对应于相关参数的生成)可以设置系统管理者的身份为ID,其对应的私钥为DID=[d(H1(ID)+d)-1 mod q]P1,区块链节点在进行生成区块时采用本发明设计的变色龙哈希,在系统管理者不参与的情况下,该区块链和采用传统哈希函数的区块链同样无法修改区块。在系统管理者参与时,系统管理者可以将某个原始区块内容m,R,修改为m″,R″,并使得两者的哈希值相等,即Hash(ID,m″,R″)=Hash(ID,m,R),从而避免一连串修改该区块后面的所有区块。
本发明与现有技术相比具有如下优点和有益效果:
目前已有的基于身份的变色龙哈希函数主要基于国际算法来设计,例如BLS签名、ZSS签名等,缺乏基于我国商用密码标准的变色龙哈希生成方法,本方案提出了一种基于SM9签名的变色龙哈希函数的构造方法,通过该函数来生成变色龙哈希,可以提高安全性。
实施例二
基于同样的发明构思,本实施例提供了一种基于SM9签名的变色龙哈希函数的构造装置,包括:
参数获取模块,用于获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
函数构造模块,用于构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
验证模块,用于基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
碰撞计算模块,用于基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
由于本发明实施例二所介绍的装置为实施本发明实施例一中基于SM9签名的变色龙哈希函数的构造方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一中方法所采用的装置都属于本发明所欲保护的范围。
实施例三
如图3所示,基于同一发明构思,本发明还提供了一种计算机可读存储介质300,其上存储有计算机程序311,该程序被执行时实现如实施例一中所述的方法。
由于本发明实施例三所介绍的计算机可读存储介质为实施本发明实施例一中基于SM9签名的变色龙哈希函数的构造方法所采用的计算机可读存储介质,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该计算机可读存储介质的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的计算机可读存储介质都属于本发明所欲保护的范围。
实施例四
基于同一发明构思,本申请还提供了一种计算机设备,如图4所示,包括存储器401、处理器402及存储在存储器上并可在处理器上运行的计算机程序403,处理器402执行上述程序时实现实施例一中的方法。
由于本发明实施例四所介绍的计算机设备为实施本发明实施例一中基于SM9签名的变色龙哈希函数的构造方法所采用的计算机设备,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该计算机设备的具体结构及变形,故而在此不再赘述。凡是本发明实施例一中方法所采用的计算机设备都属于本发明所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (5)
1.一种基于SM9签名的变色龙哈希函数的构造方法,其特征在于,包括:
获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素;
基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
其中,m′表示当前的消息,R′表示当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素的方式为:
R″=H2(m″)-1([H2(m)-H2(m″)]DID+[H2(m)]R)
R″表示伪造的随机元素,m″表示伪造的消息,R、m表示原始随机元素和原始消息,DID为用户私钥。
2.如权利要求1所述的基于SM9签名的变色龙哈希函数的构造方法,其特征在于,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,作为主私钥,并计算系统公钥Ppub=[d]P2;
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1mod q]P1;
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,表示由1,2,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为/>
3.一种基于SM9签名的变色龙哈希函数的构造装置,其特征在于,基于权利要求1至2任一项所述的基于SM9签名的变色龙哈希函数的构造方法实现,所述基于SM9签名的变色龙哈希函数的构造装置包括:
参数获取模块,用于获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
函数构造模块,用于构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
验证模块,用于基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
碰撞计算模块,用于基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被执行时实现如权利要求1至2任一项所述的基于SM9签名的变色龙哈希函数的构造方法。
5.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至2任一项所述的基于SM9签名的变色龙哈希函数的构造方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210723512.5A CN115174037B (zh) | 2022-06-23 | 2022-06-23 | 一种基于sm9签名的变色龙哈希函数的构造方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210723512.5A CN115174037B (zh) | 2022-06-23 | 2022-06-23 | 一种基于sm9签名的变色龙哈希函数的构造方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115174037A CN115174037A (zh) | 2022-10-11 |
CN115174037B true CN115174037B (zh) | 2024-04-26 |
Family
ID=83488064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210723512.5A Active CN115174037B (zh) | 2022-06-23 | 2022-06-23 | 一种基于sm9签名的变色龙哈希函数的构造方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115174037B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115906780B (zh) * | 2023-03-14 | 2023-06-23 | 杭州天谷信息科技有限公司 | 可修改格式的电子文档签名方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809658A (zh) * | 2018-07-20 | 2018-11-13 | 武汉大学 | 一种基于sm2的身份基的数字签名方法与系统 |
CN110061850A (zh) * | 2019-04-24 | 2019-07-26 | 电子科技大学 | 变色龙哈希函数的碰撞计算方法及可编辑区块链构造方法 |
US10635824B1 (en) * | 2015-03-20 | 2020-04-28 | EMC IP Holding Company LLC | Methods and apparatus for private set membership using aggregation for reduced communications |
WO2022071889A1 (en) * | 2020-10-01 | 2022-04-07 | Singapore University Of Technology And Design | Methods and apparatus for message authentication |
-
2022
- 2022-06-23 CN CN202210723512.5A patent/CN115174037B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10635824B1 (en) * | 2015-03-20 | 2020-04-28 | EMC IP Holding Company LLC | Methods and apparatus for private set membership using aggregation for reduced communications |
CN108809658A (zh) * | 2018-07-20 | 2018-11-13 | 武汉大学 | 一种基于sm2的身份基的数字签名方法与系统 |
CN110061850A (zh) * | 2019-04-24 | 2019-07-26 | 电子科技大学 | 变色龙哈希函数的碰撞计算方法及可编辑区块链构造方法 |
WO2022071889A1 (en) * | 2020-10-01 | 2022-04-07 | Singapore University Of Technology And Design | Methods and apparatus for message authentication |
Non-Patent Citations (1)
Title |
---|
新的基于身份的变色龙签名体制;邹永杰;;网络安全技术与应用;20090815(08);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115174037A (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110391911B (zh) | 区块链匿名投票系统及方法 | |
CN104539423B (zh) | 一种无双线性对运算的无证书公钥密码体制的实现方法 | |
CN108551392B (zh) | 一种基于sm9数字签名的盲签名生成方法及系统 | |
Yuen et al. | How to construct identity-based signatures without the key escrow problem | |
CN110932865B (zh) | 一种基于sm2数字签名算法的可链接环签名生成方法 | |
CN112241526B (zh) | 一种基于sm9数字签名的批量验证方法和系统 | |
CN112380584B (zh) | 区块链数据更新方法、装置、电子设备和存储介质 | |
CN115174056B (zh) | 一种基于sm9签名的变色龙签名生成方法及装置 | |
Wang et al. | A modified efficient certificateless signature scheme without bilinear pairings | |
CN112436938B (zh) | 数字签名的生成方法、装置和服务器 | |
CN112152813B (zh) | 一种支持隐私保护的无证书内容提取签密方法 | |
Zhao et al. | Fuzzy identity-based dynamic auditing of big data on cloud storage | |
CN115174037B (zh) | 一种基于sm9签名的变色龙哈希函数的构造方法及装置 | |
CN113032844B (zh) | 椭圆曲线的签名方法、验签方法和装置 | |
CN114095162A (zh) | 一种无证书用电信息采集系统连接验证方法及装置 | |
CN110932866B (zh) | 一种基于sm2数字签名算法的环签名生成方法 | |
Li et al. | A forward-secure certificate-based signature scheme | |
CN115473632B (zh) | 一种改进的多层可链接环签名生成方法及装置 | |
Wang et al. | A novel blockchain identity authentication scheme implemented in fog computing | |
CN110266492A (zh) | 一种可追踪的泛在电力物联网身份认证方法 | |
Li et al. | A forward-secure certificate-based signature scheme in the standard model | |
Wang et al. | Perfect ambiguous optimistic fair exchange | |
CN115174054B (zh) | 一种基于sm9签名的无证书签名生成方法及装置 | |
CN115174055B (zh) | 一种基于sm9签名的基于证书签名生成方法及装置 | |
CN115174052B (zh) | 一种基于sm9签名的适配器签名生成方法及装置 |
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 |