一种多重签名生成与验证系统及其方法

文档序号:7550064阅读:545来源:国知局

专利名称::一种多重签名生成与验证系统及其方法
技术领域
:本发明属于电信
技术领域
,尤其涉及一种多重签名生成与验证系统及其方法。
背景技术
:数字签名用于对存储在计算机上的电子文档进行签名认证,安全地将电子文档的内容和签名人的身份进行绑定。电子文档包括在计算机上生成或存储的一切文件,如电子邮件、合同、作品、图像等。只有真正的签名人才能生成有效数字签名,任何人都能够验证签名人产生的签名从而确信确实是由该签名人签署的。数字签名广泛应用于电子商务、电子政务等信息化服务。在一个数字签名系统中,需要有消息发送者、消息签名者以及签名认证者这3个对象组成。在计算机网络环境下,可将执行这些功能的对象看做节点,有的节点发送待签名的消息,有的节点执行对消息的签名,有的节点执行签名验证操作。随着对数字签名研究的不断深入以及计算机网络的快速发展,简单的模拟手写签名的一般数字签名已不能完全满足各种现实应用的需要。而多重签名(multisignature)就是一种特殊的数字签名体制。在一个多重签名体制中,多个签名人一起以防作的方式对同一个消息产生数字签名,从而使得一个数字签名就可以对多个签署该消息的签名人进行身份验证。多重签名技术可广泛应用于包括蜂窝电话、PDA、RFID、传感器等资源受限环境。多重签名的概念最早是由Itakura和Nakamur在“Apublic-keycryptosystemsuitablefordigitalmultisignatures.NECResearchandDevelopment,71:1—8,1983”(一种适用于多重数字签名的公钥加密系统,《NEC研究与发展》,1983年版)中提出的。多重签名体制因其特有性质引起学者关注,成为密码学研究领域的热点问题,新的安全模型和具体方案设计不断涌现。一个多重签名方案需要有效地抵抗流氓密钥攻击(RogueKeyAttack)。在这种攻击中,敌手按照一定的方式选择自己的公钥进而伪造一个多重签名。通常敌手所选的公钥是一个关于其他成员的公钥的函数值,且敌手可以不知道所选公钥对应的私钥。在现有的对抗流氓密钥攻击的方法中,要么是签名者向可信中心展示自己的私钥,要么就是向可信中心证明自己拥有私钥,要么向认证者证明自己拥有私钥。一个多重数字签名体制常常从以下几个方面进行评估:使用的密码学假设;在实际应用中需要进行的操作;产生一个签名需要进行的交互次数;产生一个签名所使用的时间;产生一个签名所需要的通信总量;验证一个签名所需要的时间;最终产生的签名的长度。现有的多重签名体制都不能在这几个方面上全部达到最优,比如:有的签名体制产生签名所需的计算量小,但是产生签名所需的交互次数较多;有的签名体制产生签名所需的交互次数少,但是验证签名所需时间较长。
发明内容本发明克服了现有技术中生成多重签名的交互次数、时间与通行总量无法同时优化等缺陷,提出了一种多重签名生成与验证系统及其方法。本发明提出了一种多重签名生成与验证系统,包括:消息发布单元,其生成待签名的消息以及进行签名的签名单元列表;可信中心,其生成系统公开参数;至少一个签名单元,其与所述消息发布单元及所述可信中心通讯连接,用于产生公钥与私钥并生成相应的部分签名;签名收集单元,其与所述消息发布单元和所述签名单元和签名验证单元通讯连接,用于收集并组合所述部分签名获得签名文件;签名验证单元,其与所述可信中心及所述签名收集单元通讯连接,用于根据所述公开参数和所述签名单元列表和所述消息验证所述签名文件。本发明还提出了一种多重签名生成与验证方法,包括:步骤一:可信中心生成系统公开参数,并向所有签名单元公开;步骤二:所述所有签名单元分别根据所述系统公开参数生成相应的公钥与私钥,并将所述公钥在所述可信中心中注册并公开,所述私钥分别由相应的所述签名单元保存;步骤三:消息发布单元生成一份待签名的消息和签名单元列表;步骤四:所述签名单元列表中每个签名单元结合所述消息和所述签名单元列表和所述系统公开参数和所述签名单元的私钥生成所述签名单元的部分签名,所述签名单元将所述部分签名发送至所述签名收集单元;步骤五:所述签名收集单元收集所述签名单元列表中所有所述签名单元的部分签名并组合生成签名文件,所述签名收集单元收集所述消息和所述签名单元列表,所述签名收集单元将所述签名文件和所述消息和所述签名单元列表发送至所述签名验证单元;步骤六:所述签名验证单元根据所述系统公开参数和所述消息和所述签名单元列表验证所述签名文件。其中,所述签名单元列表中包含进行签名的签名单元的公钥。本发明提出的多重签名方案中,各个签名节点独立地产生自己的部分签名,不需要进行交互,通信代价少,签名效率高。本发明提出的多重签名方案在朴素公钥模型(plainpublic-keymodel,PPK模型)下是可证明安全的,无需特殊假设。这种多签名验证密钥可以抵抗攻击者利用群结构的同构性质发起的流氓密钥攻击。本发明提出的多重签名生成与验证方法中,对于给定的签名单元列表,多签名验证密钥可以预计算完成,且在所有多签名的验证过程中只需计算一次。从而,该多重签名方案具有高安全性且验证效率很高。图1表示本发明的多重签名生成与验证系统的结构图。图2表示多重签名生成与验证方法的流程图。具体实施例方式结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。图1显示的是本发明的多重签名生成与验证系统的结构图,包括消息发布单元1、可信中心2、签名单元3、签名收集单元4与签名验证单元5。消息发布单元I与签名单元3和签名收集单元4通信连接。可信中心2与签名单元3和签名验证单元5分别通信连接。签名单元3还与签名收集单元4通信连接。签名收集单元4还与签名验证单元5连接。其中,消息发布单元I用于产生待签名的消息m以及对该消息m进行签名的签名单元列表L。消息发布单元I发送的消息m与签名单元列表L分别被多个签名单元3接收。可信中心2用于产生并公开系统公开参数pp,以及接受签名单元3注册的公钥。签名单元3根据系统公开参数pp产生自己的公私与私钥,公钥用于在可信中心2中注册并公开,私钥用于签名单元3保存。每个签名单元3通过各自的私钥以及共有的系统公开参数PP以及签名者列表L对消息m产生一个部分签名Qi,并将其发送至签名收集单元4。签名收集单元4收集所有的签名单元产生的部分签名,将其组成最终的签名文件σ,将消息m和签名文件σ和签名单元列表L一起发送给签名验证单元5。签名验证单元5通过系统公开参数pp、签名单元列表L、消息m对签名文件σ进行验证。图2显示的是多重签名生成与验证方法的流程,具体包括以下步骤:步骤一,可信中心2生成系统公开参数,即给定安全参数λ,选取全局参数pp=(G1,G2,Gt,P,g,e,H,Hm),其中P是长度为λ比特的素数,G1,G2,Gt为三个阶为素数ρ的乘法循环群,g为G2的生成元,e=G1XG2—Gt为双线性映射(配对)。Hm:{0,1}*—G1和H:{O,I}*-Zp是安全的哈希函数,其中Zp={0,1,...,ρ-l}。步骤二,生成签名单元3公钥、私钥。签名单元3的IDi选取随机数XieZp作为私钥,计算X=P作为其公钥,其私钥/公钥对即为(SKI=XI,PKI=GXI)。该签名单元3将自己的公钥公开注册于可信中心2以便系统中其他成员可以在可信中心2处检索。步骤三,消息发布单元I产生一个待签名的消息m,并产生一个需要对该消息m进行签名的签名单元列表L,L中保存的是所有签名单元3的公钥,L=(pk1;pk2,...,Pk1)。消息发布单元I通过广播的方式将m和L发送给所有签名单元3。步骤四,在列表中的签名单元3的IDi收到消息m和列表L之后,结合公开参数pp以及自己的私钥Xi,产生自己的一部分签名权利要求1.一种多重签名生成与验证系统,其特征在于,包括:消息发布单元(I),其生成待签名的消息以及进行签名的签名单元列表;可信中心(2),其生成系统公开参数;至少一个签名单元(3),其与所述消息发布单元(I)及所述可信中心(2)通讯连接,用于产生公钥与私钥并生成相应的部分签名;签名收集单元(4),其与所述消息发布单元(I)和所述签名单元(3)和签名验证单元(5)通讯连接,用于收集并组合所述部分签名获得签名文件;签名验证单元(5),其与所述可信中心(I)及所述签名收集单元(4)通讯连接,用于根据所述公开参数和所述签名单元列表和所述消息验证所述签名文件。2.一种多重签名生成与验证方法,其特征在于,包括:步骤一:可信中心(2)生成系统公开参数,并向所有签名单元(3)公开;步骤二:所述所有签名单元(3)分别根据所述系统公开参数生成相应的公钥与私钥,并将所述公钥在所述可信中心(2)中注册并公开,所述私钥分别由相应的所述签名单元(3)保存;步骤三:消息发布单元(I)生成一份待签名的消息和签名单元列表;步骤四:所述签名单元列表中每个签名单元(3)结合所述消息和所述签名单元列表和所述系统公开参数和所述签名单元(3)的私钥生成所述签名单元(3)的部分签名,所述签名单元(3)将所述部分签名发送至所述签名收集单元(4);步骤五:所述签名收集单元(4)收集所述签名单元列表中所有所述签名单元(3)的部分签名并组合生成签名文件,所述签名收集单元(4)收集所述消息和所述签名单元列表,所述签名收集单元(4)将所述签名文件和所述消息和所述签名单元列表发送至所述签名验证单元(5);步骤六:所述签名验证单元(5)根据所述系统公开参数和所述消息和所述签名单元列表验证所述签名文件。3.按权利要求2所述的多重签名生成与验证方法,其特征在于,所述签名单元列表中包含进行签名的签名单元(3)的公钥。全文摘要本发明公开了一种多重签名生成与验证系统,包括消息发布单元,其生成待签名的消息以及进行签名的签名单元列表;可信中心,其生成系统公开参数;至少一个签名单元,其与消息发布单元及可信中心通讯连接,用于产生公钥与私钥并生成相应的部分签名;签名收集单元,其与消息发布单元和签名单元和签名验证单元通讯连接;签名验证单元,其与可信中心及签名收集单元通讯连接,用于根据公开参数和签名单元列表和消息验证签名文件。本发明的各个签名单元独立地产生自己的部分签名,不需要进行交互,通信代价少,签名效率高。本发明还公开了一种多重签名生成与验证方法。文档编号H04L9/32GK103095697SQ20131000831公开日2013年5月8日申请日期2013年1月9日优先权日2013年1月9日发明者李祥学,钱海峰,李强,张远扬,黄征,郑东申请人:华东师范大学,上海沿伸信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1