CN115174037A - 一种基于sm9签名的变色龙哈希函数的构造方法及装置 - Google Patents

一种基于sm9签名的变色龙哈希函数的构造方法及装置 Download PDF

Info

Publication number
CN115174037A
CN115174037A CN202210723512.5A CN202210723512A CN115174037A CN 115174037 A CN115174037 A CN 115174037A CN 202210723512 A CN202210723512 A CN 202210723512A CN 115174037 A CN115174037 A CN 115174037A
Authority
CN
China
Prior art keywords
hash value
message
hash
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.)
Granted
Application number
CN202210723512.5A
Other languages
English (en)
Other versions
CN115174037B (zh
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.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
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 Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN202210723512.5A priority Critical patent/CN115174037B/zh
Priority claimed from CN202210723512.5A external-priority patent/CN115174037B/zh
Publication of CN115174037A publication Critical patent/CN115174037A/zh
Application granted granted Critical
Publication of CN115174037B publication Critical patent/CN115174037B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0825Key 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

Abstract

本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法及装置,本发明公开了一种基于SM9签名的变色龙哈希函数的构造方法及装置,通过以下技术方案实现:用户可以通过构造的变色龙哈希函数计算哈希值:
Figure DDA0003710308070000011
在知道用户私钥的情况,可以伪造一个新的消息对(m″,R″)使得Hash(ID,m″,R″)=Hash(ID,m,R),即找到哈希碰撞。本发明具有安全性高、功能完善等优点。产生哈希值后,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,能够被应用于变色龙签名、可编辑区块链等多个应用领域。

Description

一种基于SM9签名的变色龙哈希函数的构造方法及装置
技术领域
本发明涉及信息安全技术领域,尤其涉及一种基于SM9签名的变色龙哈希函数的构造方法及装置。
背景技术
哈希函数可以把任意长度的输入变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,散列值的空间通常远小于输入的空间。哈希函数中不同的输入可能会散列成相同的输出,而不能从哈希值来唯一的确定输入值。哈希函数具有抗碰撞性,即找到域中两个哈希值相同的元素在计算上是不可行的。哈希函数被广泛应用于消息认证、数字签名、口令保护等场景。
目前已有的基于身份的变色龙哈希方法主要基于国际算法来设计,例如BLS签名、ZSS签名等,缺乏基于我国商用密码标准的变色龙哈希函数以及相应的构造方法。
发明内容
本发明提供一种基于SM9签名的变色龙哈希函数的构造方法及装置,用以解决或者至少部分解决现有技术中存在的安全性不高和功能不够完善的技术问题。
为了解决上述技术问题,本发明第一方面提供了一种基于SM9签名的变色龙哈希函数的构造方法,包括:
获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
在一种实施方式中,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,
Figure BDA0003710308050000011
作为主私钥,并计算系统公钥Ppub=[d]P2
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1 mod q]P1
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,
Figure BDA0003710308050000021
表示由1,2,,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为
Figure BDA0003710308050000022
在一种实施方式中,基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
Figure BDA0003710308050000023
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
Figure BDA0003710308050000024
在一种实施方式中,基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
Figure BDA0003710308050000025
其中,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:一个大素数。
Figure BDA0003710308050000041
由1,2,,…,q-1组成的整数集合。
G1,G2:阶为q的加法循环群。
GT:阶为q的乘法循环群。
P1,P2:分别为群G1和G2的生成元。
[k]P:椭圆曲线上点P的k倍点,k是正整数。
e:从G1×G2到GT的双线性对映射。
H1(·),H2(·):由密码杂凑函数派生的密码函数,均为
Figure BDA0003710308050000042
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签名的变色龙哈希函数的构造方法及装置,通过以下技术方案实现:用户可以通过构造的变色龙哈希函数计算哈希值:
Figure BDA0003710308050000051
在知道用户私钥的情况,可以伪造一个新的消息对(″,R″)使得Hash(ID,m″,R″)=Hash(ID,m,R),即找到哈希碰撞。
本发明具有安全性高、功能完善等优点。产生哈希值后,在不知晓用户私钥的情况下无法造出哈希碰撞,在知晓用户私钥的情况下可以找到哈希碰撞,能够被应用于变色龙签名、可编辑区块链等多个应用领域。
具体地,请参见图1,为本发明实施例提供的基于SM9签名的变色龙哈希函数的构造方法的流程图。
具体实施过程中,首先获取用户的身份标识,并基于可信密钥生成中心获取系统的公钥和用户私钥,获取原始消息和原始随机元素,构造变色龙哈希函数,并基于以上所有的参数进行哈希运算得到第一哈希值,接着是验证哈希值是否正确,具体地,获取系统公钥、用户私钥、用户身份标识、当前的随机元素和当前的消息,基于这些参数利用变色龙哈希函数计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,如果相等,则表示正确。最后,进行哈希碰撞计算,基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素。
在一种实施方式中,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,
Figure BDA0003710308050000052
作为主私钥,并计算系统公钥Ppub=[d]P2
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1mod q]P1
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,
Figure BDA0003710308050000061
表示由1,2,,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为
Figure BDA0003710308050000062
在一种实施方式中,基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
Figure BDA0003710308050000063
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
Figure BDA0003710308050000064
在一种实施方式中,基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
Figure BDA0003710308050000065
其中,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″使得上式成立,只有变色龙哈希函数这种特殊的哈希算法才可以找到。
通过用户私钥,伪造的消息可以实现哈希值的伪造,是因为以下等式成立:
Figure BDA0003710308050000066
为了更清楚地说明本发明的有益效果,下面通过一个具体的应用场景进行介绍。
例如,变色龙哈希可应用于可修改区块链场景中。区块链是由多个分布式节点共同维护的数据账本,通常情况下链上数据无法被修改,因为这是由哈希链组成,即本区块包含对上一个区块所有内容的哈希值,下一个区块包含对本区块所有内容的哈希值,进而形成链式结构,如图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 (8)

1.一种基于SM9签名的变色龙哈希函数的构造方法,其特征在于,包括:
获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
2.如权利要求1所述的基于SM9签名的变色龙哈希函数的构造方法,其特征在于,系统公钥和用户私钥的生成过程包括:
密钥生成中心产生随机数msk,
Figure FDA0003710308040000011
作为主私钥,并计算系统公钥Ppub=[d]P2
用户表示ID对应的私钥为DID=[d(H1(ID)+d)-1mod q]P1
其中,d为由密钥生成中心秘密持有的系统主私钥,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,
Figure FDA0003710308040000012
表示由1,2,,…,q-1组成的整数集合,ID表示用户身份标识,H1(·)为由密码杂凑函数派生的密码函数,为
Figure FDA0003710308040000013
3.如权利要求1所述的基于SM9签名的变色龙哈希函数的构造方法,其特征在于,基于构造的变色龙哈希函数和相关参数计算第一哈希值的方式为:
Figure FDA0003710308040000014
其中,Hash(,,)表示构造的变色龙哈希函数,ID表示用户身份标识,m为原始消息,R为原始随机元素,T为第一哈希值,P1,P2分别为群G1和G2的生成元,G1,G2表示阶为q的加法循环群,Ppub为系统公钥,H1(·),H2(·)表示由密码杂凑函数派生的密码函数,均为
Figure FDA0003710308040000015
4.如权利要求1所述的基于SM9签名的变色龙哈希函数的构造方法,其特征在于,基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,包括:
通过下述方式计算第二哈希值:
Figure FDA0003710308040000016
其中,m′表示当前的消息,R′表示当前的随机元素。
5.如权利要求1所述的基于SM9签名的变色龙哈希函数的构造方法,其特征在于,基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素的方式为:
R″=H2(m″)-1([H2(m)-H2(m″)]DID+[H2(m)]R)
R″表示伪造的随机元素,m″表示伪造的消息,R、m表示原始随机元素和原始消息,DID为用户私钥。
6.一种基于SM9签名的变色龙哈希函数的构造装置,其特征在于,包括:
参数获取模块,用于获取相关参数,相关参数包括用户身份标识、系统公钥、用户私钥、原始消息和原始随机元素,其中,系统公钥和用户私钥通过用户身份标识基于可信密钥生成;
函数构造模块,用于构造变色龙哈希函数,并基于构造的变色龙哈希函数和相关参数计算第一哈希值;
验证模块,用于基于当前获取的参数和变色龙哈希函数,计算第二哈希值,并验证第二哈希值与第一哈希值是否相等,其中,当前获取的参数包括用户身份标识、系统公钥、当前的消息和当前的随机元素;
碰撞计算模块,用于基于用户私钥、用户身份标识、原始消息、原始随机元素以及伪造的消息获取伪造的随机元素,伪造的消息为与原始消息不同的消息,伪造的随机元素为用于计算与第一哈希值相等的哈希值的元素。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被执行时实现如权利要求1至5所述的方法。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5所述的方法。
CN202210723512.5A 2022-06-23 一种基于sm9签名的变色龙哈希函数的构造方法及装置 Active CN115174037B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210723512.5A CN115174037B (zh) 2022-06-23 一种基于sm9签名的变色龙哈希函数的构造方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210723512.5A CN115174037B (zh) 2022-06-23 一种基于sm9签名的变色龙哈希函数的构造方法及装置

Publications (2)

Publication Number Publication Date
CN115174037A true CN115174037A (zh) 2022-10-11
CN115174037B CN115174037B (zh) 2024-04-26

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906780A (zh) * 2023-03-14 2023-04-04 杭州天谷信息科技有限公司 可修改格式的电子文档签名方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
邹永杰;: "新的基于身份的变色龙签名体制", 网络安全技术与应用, no. 08, 15 August 2009 (2009-08-15) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906780A (zh) * 2023-03-14 2023-04-04 杭州天谷信息科技有限公司 可修改格式的电子文档签名方法、装置、设备及存储介质
CN115906780B (zh) * 2023-03-14 2023-06-23 杭州天谷信息科技有限公司 可修改格式的电子文档签名方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN108989050B (zh) 一种无证书数字签名方法
Huang et al. Certificateless signatures: new schemes and security models
CN107707358A (zh) 一种ec‑kcdsa数字签名生成方法及系统
Xiao et al. Secure and efficient multi-signature schemes for fabric: An enterprise blockchain platform
CN112446052B (zh) 一种适用于涉密信息系统的聚合签名方法及系统
CN107911217B (zh) 基于ecdsa算法协同生成签名的方法、装置和数据处理系统
CN102387019A (zh) 无证书部分盲签名方法
CN112241526B (zh) 一种基于sm9数字签名的批量验证方法和系统
CN112380584B (zh) 区块链数据更新方法、装置、电子设备和存储介质
CN111447065B (zh) 一种主动安全的sm2数字签名两方生成方法
CN112152813B (zh) 一种支持隐私保护的无证书内容提取签密方法
CN111245625A (zh) 无证书聚合的数字签名方法
CN112436938A (zh) 数字签名的生成方法、装置和服务器
CN110943845A (zh) 一种轻量级两方协同产生sm9签名的方法及介质
CN113032844B (zh) 椭圆曲线的签名方法、验签方法和装置
CN112800482B (zh) 基于身份的在线/离线安全云存储审计方法
CN115174056B (zh) 一种基于sm9签名的变色龙签名生成方法及装置
Dodis et al. Time capsule signature
CN110266492A (zh) 一种可追踪的泛在电力物联网身份认证方法
CN115174037B (zh) 一种基于sm9签名的变色龙哈希函数的构造方法及装置
CN115174037A (zh) 一种基于sm9签名的变色龙哈希函数的构造方法及装置
CN110932866B (zh) 一种基于sm2数字签名算法的环签名生成方法
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