消息的盲签名算法、装置及电子设备制造方法及图纸

技术编号:38340436 阅读:19 留言:0更新日期:2023-08-02 09:20
本公开提供了消息的盲签名算法、装置及电子设备,涉及人工智能技术领域,尤其涉及自然语言处理、云计算等技术领域,可应用于电子投票、匿名投票等场景。具体实现方案为:提供消息的第一设备根据椭圆曲线算法中的第一密码学哈希函数,对第一设备中待签名的消息进行哈希处理,得到消息哈希变量;进而结合第一设备的第一临时变量、第二设备的签名临时变量、第一密码学哈希函数、椭圆曲线算法中的基点、以及基于椭圆曲线算法确定得到的公钥,确定盲化消息;以便进行签名处理以及去盲处理,其中,签名临时变量以及第一临时变量的随机性强,确保签名消息的不可追踪性;且第一密码学哈希函数的使用,能够有效减少盲签名的计算量,提高盲签名的处理效率。名的处理效率。名的处理效率。

【技术实现步骤摘要】
消息的盲签名算法、装置及电子设备


[0001]本公开涉及人工智能
,尤其涉及自然语言处理、云计算等
,可应用于电子投票、匿名投票等场景,尤其涉及一种消息的盲签名算法、装置及电子设备。

技术介绍

[0002]目前,盲签名算法主要为,消息者对待签名的消息进行盲化处理,
[0003]得到盲化消息,并提供给签名者;签名者对盲化消息进行签名,得到签名后盲化消息,并提供给消息者;消息者对签名后盲化消息进行去盲处理,得到签名消息。
[0004]上述方案中,盲化处理以及签名处理时采用的密钥是普通密钥,导致签名消息较长,计算量较大;且结合签名消息以及盲化消息等,容易恢复出待签名的消息,不可追踪性难以确保。

技术实现思路

[0005]本公开提供了一种消息的盲签名算法、装置及电子设备。
[0006]根据本公开的一方面,提供了一种消息的盲签名算法,应用于提供消息的第一设备,所述方法包括:接收第二设备的签名临时变量;根据椭圆曲线算法中的第一密码学哈希函数,对第一设备中待签名的消息进行哈希处理,得到所述消息对应的消息哈希变量;根据所述消息哈希变量、所述第一设备的第一临时变量、所述签名临时变量、所述第一密码学哈希函数、所述椭圆曲线算法中的基点、以及基于所述椭圆曲线算法确定得到的公钥,确定所述消息对应的盲化消息;将所述盲化消息发送至所述第二设备,并接收所述第二设备返回的签名后盲化消息;采用所述第一临时变量对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。
[0007]根据本公开的另一方面,提供了一种消息的盲签名算法,应用于签名处理的第二设备,所述方法包括:向提供消息的第一设备发送签名临时变量;接收所述第一设备返回的盲化消息;所述盲化消息,由所述第一设备结合待签名的消息、所述第一设备的第一临时变量、所述签名临时变量、椭圆曲线算法中的基点以及第一密码学哈希函数、以及基于所述椭圆曲线算法确定得到的公钥,确定得到;对所述盲化消息进行签名处理,得到签名后盲化消息;将所述签名后盲化消息发送至所述第一设备,以指示所述第一设备对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。
[0008]根据本公开的另一方面,提供了一种消息的盲签名装置,应用于提供消息的第一设备,所述装置包括:第一接收模块,用于接收第二设备的签名临时变量;消息哈希处理模块,用于根据椭圆曲线算法中的第一密码学哈希函数,对第一设备中待签名的消息进行哈希处理,得到所述消息对应的消息哈希变量;盲化处理模块,用于根据所述消息哈希变量、所述第一设备的第一临时变量、所述签名临时变量、所述第一密码学哈希函数、所述椭圆曲线算法中的基点、以及基于所述椭圆曲线算法确定得到的公钥,确定所述消息对应的盲化消息;第二接收模块,用于将所述盲化消息发送至所述第二设备,并接收所述第二设备返回
的签名后盲化消息;去盲处理模块,用于采用所述第一临时变量对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。
[0009]根据本公开的另一方面,提供了一种消息的盲签名装置,应用于签名处理的第二设备,所述装置包括:第一发送模块,用于向提供消息的第一设备发送签名临时变量;接收模块,用于接收所述第一设备返回的盲化消息;所述盲化消息,由所述第一设备结合待签名的消息、所述第一设备的第一临时变量、所述签名临时变量、椭圆曲线算法中的基点以及第一密码学哈希函数、以及基于所述椭圆曲线算法确定得到的公钥,确定得到;签名处理模块,用于对所述盲化消息进行签名处理,得到签名后盲化消息;第二发送模块,用于将所述签名后盲化消息发送至所述第一设备,以指示所述第一设备对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。
[0010]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开上述提出的消息的盲签名算法。
[0011]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开上述提出的消息的盲签名算法。
[0012]根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述提出的消息的盲签名算法的步骤。
[0013]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0014]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0015]图1是根据本公开第一实施例的示意图;
[0016]图2是根据本公开第二实施例的示意图;
[0017]图3是根据本公开第三实施例的示意图;
[0018]图4是根据本公开第四实施例的示意图;
[0019]图5是根据本公开第五实施例的示意图;
[0020]图6是用来实现本公开实施例的消息的盲签名算法的电子设备的框图。
具体实施方式
[0021]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0022]目前,盲签名算法主要为,消息者对待签名的消息进行盲化处理,得到盲化消息,并提供给签名者;签名者对盲化消息进行签名,得到签名后盲化消息,并提供给消息者;消息者对签名后盲化消息进行去盲处理,得到签名消息。
[0023]上述方案中,盲化处理以及签名处理时采用的密钥是普通密钥,导致签名消息较
长,计算量较大;且结合签名消息以及盲化消息等,容易恢复出待签名的消息,不可追踪性难以确保。
[0024]针对上述问题,本公开提出一种消息的盲签名算法、装置及电子设备。
[0025]图1是根据本公开第一实施例的示意图,需要说明的是,本公开实施例的消息的盲签名算法可应用于消息的盲签名装置,该装置可以设置在电子设备中,以使电子设备可以执行消息的盲签名功能。
[0026]其中,电子设备可以为任一具有计算能力的设备,例如可以为个人电脑(Personal Computer,简称PC)、移动终端、服务器等,移动终端例如可以为车载设备、手机、平板电脑、个人数字助理、穿戴式设备、智能音箱等具有各种操作系统、触摸屏和/或显示屏的硬件设备。以下实施例中,以执行主体为提供消息的第一设备为例进行说明。
[0027]如图1所示,该消息的盲签名算法可以包括如下步骤:
[0028]步骤101,接收第二设备的签名临时变量。
[0029]在本公开实施例中,签名临时变量根据第二设备的第二临时变量以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种消息的盲签名方法,应用于提供消息的第一设备,所述方法包括:接收第二设备的签名临时变量;根据椭圆曲线算法中的第一密码学哈希函数,对第一设备中待签名的消息进行哈希处理,得到所述消息对应的消息哈希变量;根据所述消息哈希变量、所述第一设备的第一临时变量、所述签名临时变量、所述第一密码学哈希函数、所述椭圆曲线算法中的基点、以及基于所述椭圆曲线算法确定得到的公钥,确定所述消息对应的盲化消息;将所述盲化消息发送至所述第二设备,并接收所述第二设备返回的签名后盲化消息;采用所述第一临时变量对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。2.根据权利要求1所述的方法,其中,所述第一临时变量的确定方式,包括:获取所述第一设备选择的第一随机数值;将所述第一随机数值以及所述消息哈希变量输入所述第一密码学哈希函数,获取所述第一密码学哈希函数输出的所述第一临时变量。3.根据权利要求1所述的方法,其中,所述签名临时变量根据所述第二设备的第二临时变量以及所述基点,确定得到;所述第二临时变量,根据所述第二设备选择的第二随机数值以及所述第一密码学哈希函数确定得到。4.根据权利要求1所述的方法,其中,所述根据所述消息哈希变量、所述第一设备的第一临时变量、所述签名临时变量、所述第一密码学哈希函数、所述椭圆曲线算法中的基点、以及基于所述椭圆曲线算法确定得到的公钥,确定所述消息对应的盲化消息,包括:获取所述第一设备选择的第三随机数值,所述第三随机数值大于或者等于1且小于或者等于n,所述n表示所述基点的阶数;对所述签名临时变量、所述第一临时变量与所述基点的乘积、所述第三随机数值与所述公钥的乘积,进行加和处理,得到中间变量;将所述中间变量、所述公钥以及所述消息哈希变量输入所述第一密码学哈希函数,获取所述第一密码学哈希函数的第一输出结果;将所述第一输出结果与所述第三随机数值的加和结果,作为所述盲化消息。5.根据权利要求1所述的方法,其中,所述方法还包括:获取消息盲化过程中的中间变量;所述中间变量,根据所述签名临时变量、所述第一临时变量、所述基点以及所述公钥确定得到;将所述中间变量、所述公钥以及所述消息哈希变量输入所述第一密码学哈希函数,获取所述第一密码学哈希函数的第二输出结果;对所述第二输出结果与n进行取模运算,得到取模运算结果;所述n表示所述基点的阶数;对所述取模运算结果与所述公钥进行乘积处理,并将乘积处理得到的乘积结果与所述中间变量进行加和处理,得到第一处理结果;对所述签名消息与所述基点进行乘积处理,得到第二处理结果;在所述第一处理结果与所述第二处理结果一致的情况下,确定所述签名信息的验证结
果为签名验证成功;在所述第一处理结果与所述第二处理结果不一致的情况下,确定所述签名信息的验证结果为签名验证失败。6.根据权利要求1至5中任一项所述的方法,其中,所述椭圆曲线算法包括,爱德华椭圆曲线算法。7.一种消息的盲签名方法,应用于签名处理的第二设备,所述方法包括:向提供消息的第一设备发送签名临时变量;接收所述第一设备返回的盲化消息;所述盲化消息,由所述第一设备结合待签名的消息、所述第一设备的第一临时变量、所述签名临时变量、椭圆曲线算法中的基点以及第一密码学哈希函数、以及基于所述椭圆曲线算法确定得到的公钥,确定得到;对所述盲化消息进行签名处理,得到签名后盲化消息;将所述签名后盲化消息发送至所述第一设备,以指示所述第一设备对所述签名后盲化消息进行去盲处理,得到所述消息对应的签名消息。8.根据权利要求7所述的方法,其中,所述第一临时变量,根据所述第一设备选择的第一随机数值、将所述消息输入所述第一密码学哈希函数后得到的消息哈希变量、以及所述第一密码学哈希函数,确定得到。9.根据权利要求7所述的方法,其中,所述方法还包括:获取所述第二设备选择的第二随机数值;获取密钥生成过程中的第三临时变量;所述第三临时变量,为将私钥输入第二密码学哈希函数后得到的输出结果中靠后部分的数字串;将所述第二随机数值以及所述第三临时变量输入所述第一密码学哈希函数,获取所述第一密码学哈希函数输出的所述第二临时变量;根据所述第二临时变量以及所述基点,确定所述签名临时变量。10.根据权利要求7所述的方法,其中,所述对所述盲化消息进行签名处理,得到签名后盲化消息,包括:对所述盲化消息以及密钥生成过程中的签名辅助私钥进行乘积处理,并将乘积处理得到的结果与所述第二设备的第二临时变量进行加和处理,得到所述签名后盲化消息;所述第二临时变量,根据所述第二设备选择的第二随机数值以及所述第一密码学哈希函数,确定得到。11.根据权利要求7所述的方法,其中,所述方法还包括:获取所述椭圆曲线算法中指定位数的随机数值;将所述指定位数的随机数值,作为所述椭圆曲线算法中的私钥;将所述私钥输入所述椭圆曲线算法中的第二密码学哈希函数,获取所述第二密码学哈希函数的输出结果,所述输出结果包括靠前部分的数字串以及靠后部分的数字串;根据所述靠前部分的数字串以及所述指定位数,确定签名辅助私钥;对所述签名辅助私钥以及所述椭圆曲线算法中的基点进行乘积处理,获取所述公钥。12.根据权利要求7至11中任一项所述的方法,其中,所述椭圆曲线算法包括,爱德华椭圆曲线算法。13.一种消息的盲签名装置,应用于提供消息的第一设备,所述装置包括:
第一接收模块,用于接收第二设备的签名临时变量;消息哈希处理模块,用于根据椭圆曲线算法中的第一密码学哈希函数,对第一设备中待签名的消息进行哈希处理,得到所述消息对应的消息哈希变量;盲化处理模块,用于根据所述消息哈希变量、所述第一设备的第一临时变量、所述签名临时变量、所述第一密码学哈希函数、所述椭圆曲线算法中的基点、以及基于所述椭圆曲线算法确定得到的公钥,确定所述消息对应的盲化消息;第二接收模块,用于将所述盲化消息发送至所述第二设备,并接收所述第二设备返回的签名后盲化消息;去盲处理...

【专利技术属性】
技术研发人员:叶文威
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1