This paper presents an efficient aggregate digital signature method, which is the only known aggregate signature method based on general finite group and proven security, and solves the long-standing open problems in this field. The provable security of the proposed aggregate digital signature method introduces a new basic primitive, non-extension one-way function. The invented aggregate digital signature method can greatly reduce the storage space and verification time of the signature, and is especially advantageous in the application of block chains and cryptographic currency.
【技术实现步骤摘要】
一种高效的聚合数字签名方法
本专利技术涉及密码技术,尤其涉及聚合数字签名方法。具体而言,聚合签名指的是这样一种技术:将多个独立生成的签名聚合起来,以减少签名存储的空间,并加快签名验证的时间。
技术介绍
预备知识和符号标示记G为一个有限群G′中的一个循环子群,其中记G′的阶为N,G的阶为q,g是G的生成元,记1G为G′的单位元,记G/1G为G中除了1G之外的所有元素构成的集合。一般而言,q为一个大的素数(典型地,|q|=160,其中|q|表示的是以2进制表示的q的长度),一般而言,|q|表示系统的安全参数。记Zq为数字集合{0,1,…,q-1},记为数字集合{1,…,q-1}。在下面的
技术介绍
描述中,采用乘法表示(multiplicativerepresentation)群上的操作,即G′和G为乘法群。这只是为了表述上的方便,所有有关
技术介绍
的叙述均可等价地应用到加法群上,比如,椭圆曲线,或者其他的代数群或具体的群,有限域,复数或复合模(compositemoduli)等。一般而言,对于乘法群上的操作,指数上的操作是对q求模,而群上元素的操作是对N或N+1求模或其它操作以保证操作的结果是G′或G中的元素;比如gx通常指的是gxmodq,gxgy通常表示的是gxgy∈G′,x+y∈Zq和xy∈Zq表示的是x+ymodq和xymodq。为了表述的方便起见,假定参数G,q,g是固定的并被所有的用户事先获知(这是一种实用中的普遍情况);或者,将这些参数包含在证书中或者在协议运行之前交换和协商这些参数并达成一致。假定离散对数假设在G上成立,即给定X=gx∈G(其中x从 ...
【技术保护点】
1.一种高效的聚合数字签名方法,其中,
【技术特征摘要】
1.一种高效的聚合数字签名方法,其中,表示签名者,n≥1是一个正整数表示系统中需要聚合的签名的数目,的公钥为的私钥为wi=xi∈Zq={0,1,2,…,q-1}或wi=-xi∈Zq,其中g是一个阶为N的有限群G′中的一个阶为素数q的循环子群G的生成元,mi∈{0,1}*为待签名的信息,其中{0,1}*表示的是任意长度的0-1串的集合;这儿,对于任意的i,j,1≤i≠j≤n,有可能和/或Ai=Aj和/或mi=mj;表示签名聚合者,表示聚合签名验证者,所述方法包括:由所述签名者得到ri∈Zq、和/或其中f是一个从{0,1}*到Zq的转换函数且ai是f的输入之一,是一个包含的集合的能够为空的子集合;由所述签名者得到其中h:{0,1}*→Zq是一个从{0,1}*到Zq的抗碰撞的转换函数且mi是h的输入之一,是一个包含的集合的能够为空的子集合,其中,{0,1}*表示的是任意0-1串的集合;由所述签名者计算zi,其中zi的计算基于diri+eiwi或diri-eiwi或eiri+diwi或eiri-diwi或-(diri+eiwi)或-(diri-diwi)或-(eiri+diwi)或-(eiri-diwi);具体选用哪种方式可由用户协商或签名者指定,但是一旦确定就应固定,并且所有的签名验证者知晓z的计算方式;由所述签名者将或或或作为对信息mi的数字签名,其中,是一个包含的集合的能够为空的子集合,系统参数{G′,G,g,q},转换函数h,f,以及辅助输入或者是固定的并被所有的用户事先获知,或者被包含在证书中,或者在协议运行之前或之中被交换和协商;所述签名聚合者设置三个初始变量其中为初始化为空的集合,z初始化为0;由所述签名聚合者得到消息和签名对{mi,si},得到所述签名者的公钥Ai∈G、得到ai∈G,然后验证{Ai,mi,si,ai}的有效性,若验证通过则令:z:=z+zimodq;收集和聚合一定量的签名后,输出或或其中M={m1,…,mk},说明m可能相同,某些情况下要检查m相同或或所述聚合签名验证者得到或或后,记其中k是一个正整数满足1≤k≤n;如下验证聚合签名的有效性:确认z∈Zq,否则聚合签名无效;如果收到的是验证的有效性,验证的有效性并确保其中||表示的集合的大小,对于每一个j,1≤j≤k,得到和如果收到的是验证验证的有效性并确保其中||表示的集合的大小,对于每一个j,1≤j≤k,得到然后按照如下情况之一验证聚合签名的有效性:若zi的计算基于diri+eiwi或diri-eiwi或-(diri+eiwi)或-(diri-eiwi),则通过计算函数来验证聚合签名的有效性;若zi的计算基于eiri+diwi或eiri-diwi或-(eiri+diwi)或-(eiri-diwi),则通过计算函数来验证聚合签名的有效性。2.如权利要求1所述的方法,其中,所述签名聚合者如下得到所述签名者的公钥Ai...
【专利技术属性】
技术研发人员:赵运磊,黄兴忠,
申请(专利权)人:上海扈民区块链科技有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。