电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

多重签名范文

来源:莲生三十二作者:开心麻花2025-11-191

多重签名范文(精选6篇)

多重签名 第1篇

数字签名是一种电子模拟传统的手写签名, 电子文档的签名识别方法已被广泛应用到许多领域, 包括电子政务, 电子金融和电子商务等领域。多重签名是面对团体而使用的, 一个文件需要不止一个人对它进行签署时, 每个人各自做部分签名, 然后共同生成最终的签名。代理签名是指用户由于某些原因不能自己签名, 他指定一个代理, 让代理代替自己进行签名, 比如, 为了实现商业合同的签署, 原始签名人不在现场, 人们往往需要委托他们的一些权力给可靠的代理人, 从而使代理签名人生成有效的签名, 我们称之为代理签名。代理签名是在1996 年由Mambo等[1,2]首次提出的, 伊丽江等在2000 年最先提出代理多重签名方案[3]。自代理签名方案被提出后, 各种新型代理签名方案[4 - 6]又陆续被提出。Hwang等人[7]提出多重代理多重签名方案, 即多个原始签名者委托多个代理签名者合作, 共同完成签名。在2003 年李传目提出了一种多重代理多重签名方案[8] ( 以下简称LI方案) , 并且证明了该方案的代理证书是安全的。张琦等人对LI方案进行了攻击, 并证明LI方案是不安全的, 又在LI方案基础上提出了一个改进的方案[9], 新的方案也弥补了文献[10]所给出方案的安全缺陷。在2004 年杨政宇等人提出一种群代理多重签名方案[11], 该方案也是基于离散对数问题的。在2001 年傅晓彤等人提出一个多重代理多重签名方案[12], 杨磊等人认为该方案存在漏洞, 并提出了一个改进后的多重代理多重签名方案[13]。在2009 年门玉梅等人指出LI方案不能抵抗伪造攻击, 并给出了改进方案[14] ( 以下简称M方案) , 新的方案取消了代理签名管理人。在2010 年丁薇等人指出M方案存在滥用签名现象, 并且恶意代理人可以给出超过授权范围的消息签名, 使授权的范围变为无效, 并提出了改进方案[15] ( 以下简称D方案) 。

前人的研究为本文提供了良好的基础, 在此基础上试图提出一个新的多重代理多重签名方案, 方案是基于离散对数问题的。冀望新的方案相对原方案能够完善, 增加一些新的特性, 如: 可以抵抗公钥替换攻击, 可以抵抗联合攻击, 可以避免滥用代理签名权, 满足不可伪造性, 不可否认性, 不可追踪性等, 安全性和实用性很强。

1 预备知识与符号约定

1. 1 离散对数问题

设p是一个素数, q为p - 1 的一大素因子, g是Z*P的一个生成元, 1 < g < p - 1, Z*P的元素可以表示为如下形式:

对于等式y = gxmodp, 巳知x求y, 称为模p的幂运算, 它是容易实现的。已知y, g, p求x, 称x为y的以g为底关于模p的离散对数, 当p是大素数时, 找到一个x, 使y = gxmodp成立是十分困难的事情。因为求解此变量花费的时间太长, 这就是求解离散对数的困难问题。

1. 2 符号

p: 一个大素数。

M: 待签名的消息。

g: 本原元, ZP= { 1, 2, , P - 1} 。

Ui: 第i个原始签名人, U1, U2, , Un表示原始签名组的n个成员。

xui: Ui的私钥。

yui: Ui的公钥, yui= gxui modp ( i = 1 , 2 , , n) 。

Pj: 第j个原始签名人, P1, P2, , Pm表示代理签名组的m个成员。

xpj: Pj的私钥。

ypj: Pj的公钥, ypj= gxpj modp ( j = 1 , 2 , , m) 。

B:签名接收者。

xB: B的私钥。

yB: B的公钥, yB= gxBmodp。

h:一个安全的单向哈希函数。

W: 代理委托证书。其中包含代理消息的范围和代理有效期限, 以及所有原始签名人和所有代理签名人的公钥。

2 M多重代理多重签名方案简介

M方案肯定了LI方案中代理证书的安全性, 但是证明LI方案中, 消息的签名可以被恶意的代理签名接收者和恶意的代理签名管理人伪造。基于离散对数难解性的M方案, 对LI方案进行了改进, 改进的方案中取消了代理签名管理人并且对代理签名的范围和时间进行了限制。

2. 1 代理证书生成 ( 同LI方案)

1) 每一个原始签名人Ui, 选取一个随机数kai∈ZP, 计算Lui= gkai modp, Ui本人除外, 另外n - 1 个原始签名人和m个代理签名人都能收到Lui。Pj选取一个随机数kpj∈ZP, 计算Lpj=gkpj modp并且把Lpj送给其他m - 1 个代理签名人和n个原始签名人。

2) 每一个原始签名人和代理签名人计算:

3) 每一个原始签名人Ui计算:

并把Vui送给其他n - 1 个原始签名人和m个代理签名人。每个代理签名人Pj计算Vpjp= h ( W) xjypjp+ kjKmodp,送给其他m - 1个代理签名人和n个原始签名人。则 ( Lui, Vui) 为原始签名人的个人证书, ( Lpj, Vpj) 为代理签名人的个人证书。

4) 每个签名人验证Vui和Vpj的正确性:

5) 代理证书:

若Vui和Vpj都是正确的, 每一个代理签名人Pj计算:

代理证书是 (K, V) 。

2. 2 签名阶段

Pj ( j = 1, 2, , m) 选取随机数tj∈ Zq*, 计算cj= yBxUj+ tj, rj= gtjmodp, Pj广播cj给其他代理签名人, 每个代理签名人Pj计算以下等式:

Pj计算后将 ( rj, sj) 广播给其他代理签名人。

2. 3 验证阶段

每个代理签名人Pj都要对等式gsj= ( rj) h ( M‖W) V ( yPj) c进行验证, 都成立的话再计算:

得到多重代理多重签名 ( W, ( K, V) , M, ( R, S) ) 。接收者B计算:

验证等式是否成立, 如果成立再计算:

最后验证:

3 M多重代理多重签名方案存在的不足

最近D方案指出M方案可滥用签名权, 代理签名人中的恶意签名者可以给出代理委托证书规定消息之外的消息的签名, 另外, 恶意的代理者也可以给出授权书规定消息之外的签名。

在M方案中, 如果代理签名人中存在恶意签名人Pi, 在给出一次正确的签名后, 即可以给出其他消息的签名, 且能通过验证。如M'是W授权证书之外的消息, 恶意代理人通过计算:h ( M‖W) V = H ( M') V', 给出签名 ( W, ( K, V) , M', ( R, S) ) 。

恶意代理人可以给出W中规定范围以外的签名。接收者B首先验证证书的有效性, 接着计算:

最后验证:

由此可知, 可以通过验证, 使W中对消息的范围规定失效。

4 新的方案

在研究LI方案, M方案, D方案的基础上, 利用张琦等文献[9]的改进思路, 提出了一个新的多重代理多重签名方案。新的方案中安全参数和代理证书同LI方案一样, 不需要签名管理人, 避免求逆运算, 在满足M、D方案安全性基础上, 采用更加安全的签名方程sj, 使得验证方程gs中存在ypjjyp项, 可以抵抗公钥替换攻击, 同时具有一些新的安全性能。

4. 1 授权阶段

代理证书 ( K, V) 的生成同第2. 1 节。

4. 2 签名的生成和验证过程

1) Pj ( j = 1, 2, , m) 选取随机数tj∈Zq*, 计算cj= yBxpj+ tj, rj= gtjmod p, cj被Pj广播给其他代理签名人, 随后每个Pj计算以下等式:

计算等式后 ( rj, sj) 被Pj广播给其他代理签名人。

2) 每个代理签名人都要验证等式:

都成立的话再计算S = ( s1+ s2+ + sj) mod p ( j =1, 2, , m) , 得到多重代理多重签名 ( W, ( K, V) , M, ( R, S) ) , 接收者B先验证:

如果以上等式成立, 再计算:

最后验证:

如果以上等式成立, 则 ( R, S) 是正确的; 如果以上等式不成立, 则 ( R, S) 是不正确的, 签名无效。

4. 3 新的方案性能分析

1) 新的方案可行性分析

验证等式的可行性。签名接收者B可以验证等式有效:

上式为签名验证公式, 通过第4. 2 节中R, sj, S, gsj等式代入方程进行推导, 证明能够满足等式由此可知, ( R, S) 是正确的, 签名接收者B可以验证多重代理多重签名的有效性。

2) 新的方案安全性分析

代理证书 ( K, V) 和个人证书 ( Lui, Vui) ( i =1,2,,n) 是安全的。例如原始签名人U1要对他的个人证书 ( Lu1, Vu1) 进行伪造, 其伪造证书为 ( Lu'1, Vu'1) , 那么下面等式必须成立:

文献[8]证明, 已知L'u1求解V'u1必须求解离散对数, 不可能实现。

在满足证书安全基础上, 相比LI方案, M方案, D方案, 新方案的安全性有:

( 1) 验证参数c是安全的非指定的验证人不能验证签名的有效性, 基于文献[9]的改进, cj= yBxpj+ tj, 由等式c = ( yR) xB可知, 只有知道xB才能求解出c, 由等式yB= gxBmodp可知, xB的求解面临着离散对数难题, 由此可知, 验证参数c确保只有指定的验证人能够验证签名的有效性。

( 2) 可以抵抗联合攻击攻击者E联合代理签名人Pk攻击Pj ( k < > j) 。由于Pk知道其他代理签名人Pj的rj和cj, 能够得到sj, 由于tj每次随机选取, 攻击者E无法从两次不同签名的联立方程中消去tj, 从而不得不解离散对数难题:

面临离散对数难题, 所以不可能实现。

( 3) 可以抵抗公钥替换攻击根据公钥替换攻击的方法[16], 攻击者需要选择随机数tj和ypj, 在得到其他人 ( Lui, Vui) 和 ( Lpj, Vpj) 后, 满足公式左边是gs的形式, 而公式后边有ypyjpj的形式, 或者面临求解gs离散对数问题, 或者求解ypyjpj的问题, 两者都是困难的。

( 4) 不可伪造性代理签名人的私钥xpj, 只有代理签名人Pj知道, 其他人不能获得有效的代理签名。基于离散对数的困难性, 签名是安全的, 因为很难构造一个有效签名 ( R, S) , 使这个签名通过以下等式验证:

( 5) 不可否认性由第4.2 节可知, 每个代理签名人要验证代理信息的有效性, 如果验证通过, 则 ( W, ( K, V) , M, ( R, S) ) 是有效的多重代理多重签名, 其中, W中明确规定了原始签名人和代理签名人, 以及原始签名人对代理签名人的授权, 所以, 对文件M的签名代理签名人同样也不能否认。

( 6) 不可追踪性如果接收者B公布签名 ( W, ( K, V) , M, ( R, S) ) , 代理签名人Pj收到 ( r1, s1) , ( r2, s2) , 等信息, 但是刚才公布的签名S和 ( r1, s1) , ( r2, s2) , 中的哪一个相对应, 他无法获知, 所以, 这个方案满足不可跟踪性。

( 7) 可注销性设原始签名人U2, 其代理签名人为P2, P2选取的随机数为t2, 计算得到c2。如果原始签名人U2想收回其代理签名人P2的代理签名权, U2广播一条消息给其他代理签名人, 声明t2无效, 进而c2也无效, 此代理签名也为无效。

( 8) 可识别性多重代理多重签名 ( W, ( K, V) , M, ( R, S) ) 中包含W, W为代理委托书, 在验证签名时用到代理签名人的公钥ypj, 可以代理签名者的身份。

( 9) 可以避免滥用代理签名权在代理证书的生成阶段, 原始签名人在W中规定了代理签名人的签名范围, 可以防止滥用代理签名权。

5 结语

随着计算机网络的发展, 信息安全已经引起全社会的关注。日益严重的非法入侵和非法获利为目的的犯罪信息, 使得网络的安全运行和进一步发展存在很大的挑战。确保信息的真实性, 保密性, 安全性和完整性, 数字签名技术越来越重要。离散对数数字签名算法以其突出优点, 在实际应用中越来越广泛, 本文基于LI方案, M方案, D方案, 给出了一个新的多重代理多重签名方案, 新的方案提高了签名算法的安全性, 在签名方程中增加了新的参数, 经过分析新的方案可以抵抗公钥替换攻击, 满足不可伪造性, 不可否认性, 不可追踪性等特性, 安全性更高, 因此在网络通信、电子商务和电子政务等领域有着更广泛的应用。

摘要:详细分析几个基于离散对数问题的多重代理多重签名方案, 这些方案存在的缺陷和不足都已指出, 并给出攻击方法。基于代理签名和多重签名, 通过签名算法的改进, 给出一种新的多重代理多重签名方案, 并着重分析方案的正确性和安全性。在该方案中, 可以避免滥用代理签名权, 抵抗公钥替换攻击, 满足不可伪造性, 不可否认性, 不可追踪性等特性。新方案在安全性方面有着较强的优势。

多重签名 第2篇

多重签名技术[1,2]是数字签名中的一个分支, 该技术用于同一文档必须经过多人的签名才有效的情形。多重签名分为两种有序多重签名和广播多重签名。有序多重签名要求签名者必须按照一定的次序对消息进行签名, 每一个签名者收到上一签名后首先验证签名的有效性, 如果签名有效则继续签名, 然后发送到下一个签名者, 否则拒绝对消息签名并终止整个签名。

1李, 杨签名方案[3]

用户U1, U2, , Un为签名者, 其中设U1为消息发送者, Uv为消息接收者, 用来验证消息签名是否有效。

1.1系统建立

① 系统随机选一个大素数p, g是GF (p) 的生成元。

U1, U2, , Un随机选择各自的xi∈[1, p-2]作为自己的私钥, 同时yiZ=gximod p, yiUi用户的公开密钥。

③ 公开群p, g, yi。秘密保存自己的私钥xi

1.2签名

如果签名者为U1, 采取以下步骤:

① 随机选择k1∈[1, p-2], 先后计算r1=gk1 mod p;s1=x1h (m) - r1k1mod (p-1) 。

② 将 (r1, s1, m) 发送给下一个签名者, 并将r1广播给其他签名者。

如果签名者为Ui (2in) , 则采取以下步骤:

① 首先验证gsi-1j=1i-1rjrj=j=1i-1 (yj) h (m) mod p, 如果等式成立则继续, 否则拒绝签名。

② 随机选择ki∈[1, p-2], 计算ri=gki mod p;si=si-1+xih (m) -rikimod (p-1) 。

③ 将 (ri, si, m) 发送给下一个签名者。并将ri广播给其他签名者。

1.3验证

最后一个签名者Un, 签完名后, 交给Uv, Uv判断:

gsnj=1nrjrj=j=1n (yj) h (m) mod p (1)

如果等式 (1) 有效, 则签名有效, 否则签名无效。

2伪造攻击

由于该方案没有对成员公钥进行验证, 容易造成有些恶意成员伪造公钥, 进行伪造攻击。王晓明[4]提出两种伪造攻击:

①签名者Ui中任何一个签名者都能直接伪造出一个U1, U2, , Unm有效的有序多重数字签名。②签名者Ui能伪造U1, U2, , Ui对消息m的有序多重签名。

通过证明可以得知, 如果某个签名者Ui截获了该签名者之前任何人Uf的签名 (rf, sf, m) , 则Ui可以伪造Uf, Uf+1, , Ui对消息m的有序多重签名。

因此其实②可以扩展为Ui能伪造Uf, Uf+1, , Ui对消息m的有序多重签名。其中f必须满足 (1f<i) , 同时Uf, Uf+1, , Ui为连续的用户, 而方法②其实是扩展后的一个特例。具体伪造方法与文献[4]相类似。

① 用户Ui随机取一个xi∈[1, p-2], 计算yi=gximod p;

② 令 yi=j=fi-1yj-1yimod p (2)

公布其公钥为yi;

③ 随机选择kj∈[1, p-2], 计算rj=gkj mod p;j=f, f+1, , i, 向其他成员广播rj;

④ 计算si=sf-1+xih (m) -j=firfkfmod (p-1) ;

⑤ 将 (ri, si, m) 发送给Ui+1。

只要能通过gsij=1irjrj=j=1i (yj) h (m) mod p (3)

验证, 就能进行伪造攻击。

证明gsi=g (sf-1+xih (m) -j=firjkj) = (gxi) h (m) g (sf-1-j=firjkj) mod p (4)

又因为j=1irjrj=j=1f-1rjrjj=firjrj=j=1f-1rjrjj=fi (gkj) rjmod p

=j=1f-1rjrjg (j=fikjrj) mod p (5)

(4) (5) 得gsij=1irjrj= (gxi) h (m) g (sf-1-j=firfkf+j=fikjrjj=1f-1rjrjmod p= (gxi) h (m) gsf-1j=1f-1rjrjmod p= (gxi) h (m) j=1f-1 (yj) h (m) mod p= (yij=1f-1yj) h (m) mod p, 联合式子 (2) , 得出 (3) 式成立。因此, 该方案能进行伪造攻击。

3有序多重签名的改进

我们的方案是用户Ui在签完名后, 必须向下一个签名者Ui+1传递用来判别Ui的公钥是否有效, 从而能够很好地抵抗伪造攻击。

3.1系统建立

① 系统随机选一个大素数p′, 使得p =2p′+1仍为素数, 求出GF (p) 中的生成元g

② 用户U1, U2, , Un随机选择各自的xi∈[1, p-2]作为自己的私钥, 同时yi=gximod p, yiUi用户的公开密钥 (1in) 。

③ 公开群p, g, yi。秘密保存自己的私钥xi

3.2签名

如果签名者为U1, 采取以下步骤:

① 随机选择k1∈[1, p-2], 先后计算r1=gk1 mod p;s1=x1h (m) -r1k1mod (p-1) 。

② 令s0=0, 然后将 (r1, s1, s0, m) 发送给下一个签名者。并将r1广播给其他签名者。

如果签名者为Ui (2in) , 则采取以下步骤:

① 首先验证gsi-1j=1i-1rjrj=j=1i-1 (yj) h (m) mod p, 如果等式成立则继续, 否则拒绝签名;

② 然后验证g (si-1-si-2) ri-1ri-1= (yi-1) h (m) mod p, 如果等式成立则继续, 否则拒绝签名。

③ 随机选择ki∈[1, p-2], 计算ri=gki mod p;si=si-1+xih (m) - rikimod (p-1) 。

④ 将 (ri, si, si-1, m) 发送给下一个签名者。并将ri广播给其他签名者。

3.3验证

最后一个签名者Un, 签完名后将签名后的结果交给Uv

Uv判断gsnj=1nrjrj=j=1n (yj) h (m) mod pg (sn-sn-1) rnrn= (yn) h (m) mod p

如果两个等式有效, 则签名有效, 否则签名无效。

3.4安全性分析

公钥验证证明:由于g (si-1-si-2) ri-1ri-1=g (xih (m) -ri-1ki-1) ri-1ri-1mod p= (gxi-1) h (m) (g-ki-1) ri-1ri-1ri-1mod p= (yi-1) h (m) mod p。同样gs1r1r1= (y1) h (m) mod p, 因此该验证公钥的方案是可行的。

如果Ui想伪造Uf, Uf+1, , Ui对消息的m的有序多重签名, 他令:

yi=gximod p, yi=j=fi-1yj-1yimod p

si=sf-1+xih (m) -j=firfkfmod (p-1)

虽然能够通过公式 (3) 的验证, 但是无法通过公钥验证。这是因为:

g (si-si-1) riri=g (sf-1+xih (m) -j=firjkj-si-1) riri

如果要使公钥验证的等式成立, 必须要满足:

gsi-1=j=1i-1 (yj) h (m) /j=1i-1rjrjmod p

求出si-1难度就是求离散对数的困难性问题, 因此该方案能够有效地抵抗伪造攻击。同时这种方案由于判别了前一签名人的公钥, 也能克服原方案无法防止相邻用户的互换签名。

4结论

本文分析了李、杨多重签名方案存在着容易受到伪造攻击, 提出了一种有效安全的有序多重签名方案, 该方案能够有效抵抗伪造攻击, 并能防止相邻用户间互换签名。

参考文献

[1]Itakura K, Nakamura K.A public key cryptosystem suitable for digital multi-signature[J].NEC Res and Develop, 1983, 71 (10) :1-8.

[2]Harnl, Lin CY, Wu TC.Structured multisignature algorithms[J].IEEE Proceedings Computers and Digital Techniques, 2004, 151 (3) :231-234.

[3]李子臣, 杨义先.Elgamal多重数字签名方案[J].北京:北京邮电大学学报, 1999, 22:30-34.

基于两种难题的有序多重签名方案 第3篇

关键词:信息管理系统,数字签名,多重签名,RSA,ElGamal

1、引言

单位都是多级管理组织结构,上下级之间、部门内部、部门之间经常有文件的传递,部门领导或经办人在审阅文件时要对文件进行签字。以高校综合教务管理系统为例,在高校教务管理系统中,就有很多审批手续要在系统中实现,比如:培养方案的制定、教材的制定、教室管理、调(停)课管理、成绩管理等。在这些工作流程中,从被审批的信息的产生到审批的各个步骤,都一定要保证信息和审批流程的真实性和不可抵赖性。在管理信息系统的开发中,为了保证在网络化的环境中对信息的审批具有可验证性和不可否认性,就需要使用数字签名技术来实现对信息的电子签名。

如果简单地使用RSA签名算法或El Gamal签名算法进行签名来实现对审批信息的签名,那么就会使签名产生过程和验证过程变得非常复杂:审批流程中需要教研室主任、院系主任、教务处正副领导、副校长按顺序对审批信息进行签名,那么审批流程中每个参与者都会产生一个签名,并且每个参与者在签名前都要对他前面审批人的签名进行验证。因此,在每位参与者签名完毕后,一条信息就对应了多个签名。若是需要对信息的审批最后进行验证,就需要对审批中每一个签名都进行验证,全部验证通过后才能承认审批流程有效。

多重签名算法可以解决我们的问题,多重签名可以让所有审批人对一条信息审批的数字签名都放在一个签名中,也就是说,一条信息在整个签名流程中只对应于一个签名,并且每位经理在签名前只需验证签名一次。如果某个人要对签名进行验证,也只需要对签名完成后生成的那一个签名进行验证即可。

2、现有多重签名算法的一些不足之处

在多重签名算法中,基于ElGamal型的多重签名算法是研究和使用最为广泛的算法。但是现有的一些ElGamal型多重签名算法方案,如李子臣的方案[1]、杜海涛的方案[2]都有一些不足之处。这些不足之处也是许多近几年提出来的多重签名方案共同存在的问题。下面我们简要地来讨论一下这些不足之处:

(1)在李子臣的有序多重签名方案中,系统初始化时,ElGamal公钥和私钥是每个用户自己产生的。但是没有任何人对其他人的公钥进行验证,因而方案容易受到类似于文献[3]中方法的攻击。若是攻击者是签名序列中的最后一个签名者,他可以利用这种方法计算出该签名群体的私钥,再利用这个群体的私钥成功伪造该群体的多重签名。

(3)大部分多重数字签名的安全性仅仅依赖于一类数学难题:基于因式分解问题或离散对数问题。一旦该类数学难题被攻破,现有的基于该类数学难题的数字签名应用都将会变得不堪一击,特别是那些重要的应用,将会面临着巨大的风险和危机。将两类数学难题一起使用是一个比较好的解决方案,因为两类数学难题被同时攻破的可能性很低,但是目前基于两类数学难题的多重签名方案并不多。Harn曾经提出了一种同时基于因式分解和离散对数的数字签名方案[4],但是该方案的运行效率低,且不能用于多重数字签名。

本文设计了一种基于两种难题的有序多重签名方案,该方案解决了上述的三个方面的问题,在安全性上得到了提高,同时又保证了效率。

3、有序多重数字签名方案

在本方案中,系统中有一个可信任的签名中心SC负责分配签名者的密钥,有n个签名者U1,U2,,Un按预定的次序参与多重签名过程。签名发起者将待签名的消息m和签名者的次序要求首先交给SC,再由SC负责管理整个有序多重签名流程和验证最后的多重签名。具体签名过程:首先SC将消息发给签名次序中的第一个签名者,第一个签名者签名后将消息和签名传给后面的签名者,后面签名者依次对消息签名,并按照签名次序将消息和签名向下一位传递,最后一位签名者将多重签名提交给SC,最后由SC对多重签名进行验证。

3.1 系统初始化

(1)SC产生签名参数。(1)选取N=p'q',p′=2p′′+1,q′=2q′′+1,其中p′、q′、p′′、q′′都是大素数。(2)选取一个大素数P,使其满足N|P-1。(3)g是阶为n的G F(P)的本原元,即gN=gp'q'=1modP,以及gp'≠1modP,g q'≠1modP。(4)选取一个碰撞自由的单向hash函数H:GF(N)-->GF(N)。(5)重发次数t。

(2)SC给自己和每一位签名者Ui(i=1,2,,n)分配R S A和ElGamal两类密钥。(1)任选xs∈[1,N-1]作为SC在ElGamal中的私钥,计算ys=gxsmod P作为公钥。(2)选择SC在RSA中的公钥es,保证gcd(φ(N),es)=1并且1

(3)SC将P,N,g,H,t,ys,es,yi(i=1,2,,n)和ei(i=1,2,,n)放入公共文件中,每一位签名者都得到上述参数。

3.2 预处理

(1)每一位签名者Ui(i=1,2,,n)随机选取参数ki∈[1,N-1],计算ri=(gkimodP)modN,将ri发送给SC。SC收到所有的ri后,计算,,R'=RdsmodN然后将R′发送给所有的签名者Ui(i=1,2,,n)。

(2)SC设定签名的起始时间标志T,要求签名者Ui(i=1,2,,n-1)必须在△Ti时间内签名并将其发送给下一个人签名者,Un必须在△Tn时间内完成签名并将其发送SC。SC给签名者Ui(i=2,3,,n)发送(T,△Ti-1)。所有的签名者Ui(i=2,3,,n)计算Ti-1=T+△Ti-1,SC计算Tn=T+△Tn。时间关系如图1所示。

3.3 签名产生过程

(1)SC将m传送给第一位签名者U1。

(2)U1收到SC送来的m后进行如下操作:

3.4 签名验证过程

(1)SC进行如下操作:(1)若在Tn前收到Un送来的(m,(s'n,Rn)),则继续下面的步骤,否则认为签名失败。(2)若R=Rn且m是正确的消息则继续下面的步骤,否则认为签名失败。

(3)验证是否成立,若成立就认为U1,U2,,Un对m的多重签名(sn′,R′)有效,若不成立且Un的重发次数小于t次时就要求Un重发,若不成立且Un的重发次数超过t次时就认为签名失败。

3.5 正确性证明

(1)签名者Ui(i=2,,n)能通过

综上所述,可知该有序多重数字方案是正确的。

4、优点和比较

(1)李子臣方案只是基于离散对数问题的安全性,而本方案是同时基于因式分解问题和离散对数问题的安全性的,只要因式分解问题和离散对数问题没有同时被攻破就能保证方案的安全性,而这两类难题被同时攻破的可能性是很低的。所以本方案的安全性比较高。

(2)本方案中各位签名者的密钥由签名中心集中统一分配,可以有效的避免文献[4]中的攻击方法。

(3)通过签名验证公式易知,本文第2节第3点所提出来的攻击方法对本方案攻击无效。

(4)本方案引入重发机制以提高效率,这样可以避免一些多重签名方案中因为网络故障超时或者传输途中数据信号受到干扰造成的签名失败。同时对签名中心和每一位签名者的重发次数都进行了限制,这样做有效地限制了攻击者的尝试次数,增强了系统的稳定性和安全性。

(5)一些多重签名方案不能抵抗重放攻击。本方案在签名文件中加入了时间标志T,可以有效地抵抗重放攻击。同时对每一位签名者都设定了签名的时间限制△Ti,防止签名超时,增加了攻击者攻击成功的难度。

(6)为了研究本方案的改进后的效率,下面将本方案与李子臣方案的计算量作对比,分别见表1所示。表中的各符号的意义如下:Th代表模N的单向哈希运算,Tm代表乘法运算,Te代表幂运算,TR代表RSA加密或解密运算。

预处理过程是在服务器端预先计算的一种优化,它不会占用客户端的计算时间,因此预处理的计算量不会影响用户的签名或验证的速度。下面只比较两种算法方案中签名产生过程和验证过程的计算量来评价优劣。通过两种方案的对比可以发现,本有序多重签名方案的签名产生过程和验证过程的计算量与李子臣方案相比要少一些。因此,新方案并没有因为基于两种数学难题而降低运行效率。

5、结语

本文为多方签字的应用设计了基于两种难题的有序多重签名方案。通过上述分析可知,新方案与现有的一些方案相比,在安全性上得到增强,同时在运算效率方面也有所改进。未来研究将主要集中在算法效率的改进上,借此来提高多方签字的速度。

参考文献

[1]李子臣,杨义先.ElGamal多重数字签名方案[J].北京邮电大学学报,1999,22(2):30-34.

[2]杜海涛,张青坡,钮心忻,杨义先.一个新的离散对数有序多重签名方案.计算机工程与应用[J],2007,43(2):148-150.

[3]韩小西,王贵林,鲍丰,任奎.针对基于离散对数多重签名方案的一种攻击[J].计算机学报,2004,27(8):1147-1152.

多重签名 第4篇

自1999年,联合国经济社会理事会已把信息化改进发展中国家的政府组织、重组公共管理、最终实现信息资源的共享作为了工作重点。电子政务发展的信息化、开发性也给其安全性带来了威胁,例如:破坏数据的完整性、冒充合法用户等将给电子政务中数据的完整性、保密性、参与者的真实身份都带来了损害和破坏。数字签名技术是电子政务安全的保障之一,完善数字签名技术、针对电子政务中特殊的工作流方式、提出适合电子政务发展的数字签名技术尤为重要。

1. 数字签名技术

在传统的办公方式中,文件都是根据亲笔签名或者印章来辨别真伪、真实性的,签名或印章就起到了核准和生效的作用。面对目前电子政务的发展形势,新的印证方式将代替传统方式。数字签名是0或1的字符串,是随消息的不同而不同的:接收方能够确认发送方的签名,但是不能模仿或伪造;发送方一旦发送消息给接收方,就不能够否认发送的消息;就可以作为仲裁的证据。

2. 电子政务中的数字签名技术

电子政务就是政府部门、机构利用现代信息科技和网络技术,实现高校,透明,规范化的电子化内部办公,协同办公和对外服务的程序、系统、过程或界面。电子政务办公新方式的产生在带来新的改革的同时,电子政务的安全问题也凸显的更加重要。

在电子政务中,处理数字签名时,不仅有个人单独签名的需要,也需要多个用户对同一个文件进行签名确认。多个用户对同一消息进行签名为多重签名。多重签名与手写签名的最大的不同之处在于,手写签名的长度和签名的人数成正比,多重数字签名的长度与单独数字签名的长度是一致的。验证传统签名需要对每个用户的签名进行验证,而对多重数字签名的验证只需要验证最终的签名。

2.1 数字签名方案

根据工作流程的不同,多重数字签名方案分为3种,有序数字签名,无序数字签名,有序签名和无序签名的混合签名。

(1)有序的数字签名:消息的发送都是按照一定顺序进行的,消息由第一个发送者开始,依次发送给第二个、第三个第N个,除第一个发送者外,每个发送者在进行签名时,都要对上一个发送者的签名进行验证,如果正确,则会继续签名,发送到下一个发送者,否则,签名终止。当签名的验证者,收到最终的数字签名,验证有效,否则,无效。

(2)无序的数字签名:消息发送者发送给每个签名者对消息进行签名,然后签名者将已经签过名的消息发送给消息的收集者,收集者对签名的消息进行整理、发送给消息的验证者进行验证。

(3)混合数字签名方案:有序数字签名和无序数字签名的结合。在电子工作流中,有以下两种情况产生:

1、先无序签名,后有序签名;有一份采购单,是为生产部门准备的生产材料,需要生产部经理和采购部经理的确认,总经理、采购部经理和生产部经理签名才能有效;当然,首先要采购部经理和生产部经理共同签字确认后,再拿给总经理审批,到此,本套签名审批程序结束。

2、先有序签名,后无序签名;同样是采购部门采购生产资料,采购部又分为原材料部和半成品部,那么两种原材料都需要进行采购,因此,需部门经理批准后,原材料部和半成品部的部门经理也要签字确认,这样才能生成采购单。那么,在他们签名确认的过程中就有先后顺序的问题。采购部部门经理原材料部门经理、半成品部门经理。

2.2 混合数字签名举例

对于上述这两种情况,单独地使用有序的数字签名方案显然是不合适的,因为生产部经理和采购部经理之间的签名是不需要顺序的;那么使用无序的数字签名方案显然也不合适。因此,混合的数字签名方案就是要将有序签名方案和无序签名方案结合在一起,形成一个合适的、高效率的混合数字签名方案。

假设有4个人需要同时对一份文件进行签署,分别为A、B、C、D,并且四人之间既存在无序的关系,也存在有序的关系:A为第一位签名者,B和C为第二、三位签名者,其中B和C签名顺序不定,D为最后一位签名者。

实现方案举例:

首先,A对这份文件计算一个散列值SA,并用其私钥进行加密,并将SA和公钥Ai然传给B和C;

当B和C收到A发来的文件,首先验证A的签名是否正确,即用A的公钥进行解密,与自己计算机散列值相同,则证明该消息没有被篡改过,然后对该文件进行二次签名然后将密钥和签名后的文件传给D,否则,结束;

B和C分别将二次签名的文件传送给D, D再对该文件的签名进行验证,首先要验证B个C的签名是否正确,如果正确,结束,否则停止签名。

D在对B和C进行签名验证的时候,就不要再对A进行二次验证,只需比较B和C验证后的文件是否一致即可,同时也保证了A的正确性;而D在对B和C进行验证时,减少了一次解密的过程。

3. 结论

本文给出了基于电子政务的数字签名方案,在有序数字签名和无序数字签名算法的基础上,提出了更适合复杂工作流的数字签名方案混合数字签名方案。

参考文献

[1]Mambo M, Usuda K, Okamoto E.Proxy signature:delegation ofthepower to sign messages[J].IEICE Transactions on Fundamentals, 1996, E792A (9) :1338~1353

[2]关振胜:《电子签名法》与数字签名的技术实现[J].电子商务, 2006.1:36-43

[3]Axelsson S.Intrusion detection systems:a survey and taxonomy, No99-15[R].Dept of ComputerEngineering, Chalmers UniversityofTechnology, 2000~03

[4]Au Wai-Ho, Chan K C C.FARM:a data mining system for discover-ing fuzzy association rules[C]//The1999Aug.1999, c1999, 33:1217~1222 IEEE International FuzzySystems Conference, FUZZ-IEEE'99, Seoul, South Korea, 22Aug.-25

[5]BaoHai-yong, Caozhen-fu, WangSheng-bao, Identity-bas无忧论文网http://www.51lunwen.com/computerapplication/2010/0318/lw201003181001072206-2.htmled threshold proxy signatures scheme withknown, signers[Z].TAMC, 2006

[6]电子政务, 百度百科

多重签名 第5篇

数字签名方案具有抗假冒、不可否认和不可伪造性, 即接受者能够验证签名者对报文的签名, 签名者无法否认自己的签名, 接受者无法伪造或篡改签名的报文。在现实生活中, 不仅需要单个人对某个消息进行签名, 有时还需要多人合作对某个消息进行签名。

多重数字签名[1,2]是多个成员合作对同一消息进行的签名, 签名的长度与签名的人数无关。在多重数字签名中, 每个成员利用自己的私钥对消息签名;签名的验证者只需利用群体唯一的公钥就可以验证签名的有效性。根据签名过程的不同, 多重数字签名可分为有序多重数字签名[3]和广播多重数字签名。有序多重签名是一种串行的签名, 它要求签名者按照一定的次序对消息进行签名, 每一个签名者收到上一签名后首先验证签名的有效性;如果签名有效, 则继续签名, 然后发送到下一个签名者;如果签名无效, 则拒绝对消息签名并终止整个签名。广播多重签名是并行的, 所有签名者可以同时对消息进行签名并发送给签名收集者, 然后由签名收集者将所有签名整理成一个多重签名。而结构化的多重数字签名[4,5,6]是指签名团体具有事先约定的签名结构, 这种结构可以是有序的或者广播的, 也可以两者结合。其结构比较灵活, 适用于现实应用, 因在实际过程中不同的签名者往往具有不同的权限, 因此每个签名者在签名结构中的不同位置也会影响签名的有效性。

基于椭圆曲线离散对数问题的密码体制具有密钥短小、运算速度快等优点, 并且椭圆曲线系统的参数规模要小得多, GF (2160) 上的椭圆曲线系统相当于1024bit的RSA系统。因此, 本文基于椭圆曲线的离散对数问题, 寻找一种合适的签名函数[7], 提出了一种基于椭圆曲线的结构化多重数字签名方案 (简称ECSMS) , 此方案具有较好的安全性和实用性。

1 结构化椭圆曲线多重数字签名

结构化的多重数字签名是指签名团体具有事先约定的签名结构, 这种结构可以是有序的或者广播的, 也可以两者结合, 比较灵活, 能够较好地适用于现实应用。结构化椭圆曲线多重数字签名结构如图1所示。

在图1中, U1, U2, , Ut是有序的结构, 而Ui, 1, Ui, 2, , Ui, l是广播的结构, 在此结构中, 所有签名者可以同时对消息进行签名并发送给集合节点Ui, 然后Ui将所有签名整理成自己的签名。

2 结构化椭圆曲线多重数字签名算法

2.1 ECSMS系统初始化

系统参数:GF (q) , E, G, n, h。其中GF (q) 是有限域, EGF (q) 上的椭圆曲线, GE上的一个有理点, 即基点, G的阶为n (n为素数) , h为一个Hash函数。每一个签名者Ui的私钥为di∈{1, 2, , n-1}, 公钥ei=diGmodn

对于签名中的有序部分, 消息发送者U预先设计一种签名顺序 (U1, U2, , Ut) , 并将这种签名顺序发送给每一位签名者Ui和签名验证者Uv

2.2 ECSMS有序签名结构

2.2.1 有序签名产生过程

U将消息m发送给第一个签名者U1, 设s0=0, 有序签名者按照消息发送者U事先预定的签名顺序 (U1, U2, , Ut) 依次签名。那么当Ui收到 (m, (si-1, Ri-1) ) 和Rj (j=1, 2, , i-1) 之后, 首先要对前i-1个签名者进行验证。

(1) Ui:有序签名结构的前面几个签名人为Uj (j=1, 2, , i-1) , 令vj=ejmodn

(2) Ui:计算R¯=j=1i-1Rjmodn= (x, y) , 取R=xmodn;计算Ηi=si-1G+j=1i-1 (h (m) -rj) vjmodn= (Xi, Yi) , 如果Hi=0拒绝;否则判断R?=Ximodn, 如果等式成立, Ui认为前i-1个签名有效, Ui继续产生多重签名;否则签名无效, 终止签名。

(3) Ui:随机选择ui∈{1, 2, , n-1}, 计算Ri=uiGmodn= (xi, yi) , ri=ximodn

(4) Ui:计算si=si-1+ui- (h (m) -ri) dimodn

(5) Ui:将 (m, (si, Ri) ) 发送给下一个签名者, 将Ri分别发送到以后的签名者及签名验证者。

定理1 签名人U1, U2, , Ui-1以及Ui都遵守协议, 则Ui总将接受前i-1个签名人的多重签名, 并将继续对消息进行签名。

证明:

由于R=Xmodn, 所以R=Ximodn成立, 前i-1个签名人的多重签名被签名者Ui接受。

2.2.2 有序签名验证过程

Ui要对前i-1个签名者的多重签名进行验证, Uv要对最终的签名进行验证, 那么验证者进行如下的操作:

(1) 若签名人为Ui (i=1, 2, , t) , 则令vi=eimodn

(2) Uv:R¯=i=1tRimodn= (x, y) , 取R=xmodn

计算Η=siG+i=1t (h (m) -ri) vimodn= (X, Y) , 如果H=0, 则拒绝这个签名, 否则, 判断R?=Xmodn, 如果成立则接受这个签名。

定理2 U1, U2, , Ut和签名验证者Uv都遵守协议, 则签名验证者Uv总是会接受多重签名。

证明:

Η= (X, Y) =siG+i=1t (h (m) -ri) vimodn=i=1t (uiG- (h (m) -ri) vi) modn+i=1t (h (m) -ri) vimodni=i=1tuiG=i=1tRi=R¯= (x, y)

由于R=xmodn, 因此R=Xmodn成立, 则多重签名将被验证者Uv接受。

2.3 ECSMS广播签名结构

2.3.1 广播签名生成过程

消息发送者U将消息m发送给每个签名者Ui, j (j=1, 2, , l) , 消息签名者Ui, j进行如下操作:

(1) Ui, j:随 机 选择ui, j∈{1, 2, , n-1} 计算:

Ri, j=ui, jGmodn= (xi, j, yi, j)

ri, j=xi, jmodn

(2) Ui, j:将Ri, j发送给集合者。

(3) Ui: 计算R¯=i=1lRi, jmodn= (x, y) , R=xmodn

(4) Ui:集合者UiRh (R) 发送给用户。

(5) Ui, j:

签名方程为:

si, j=ui, j- (h (m) -R) (di, j+h (R) ) modn

验证方程为:

Hi, j=si, jG+ (h (m) -R) vi, jmodn

其中vi, j= (ei, j+h (R) G) modn

(6) Ui, j:将 (m, si, j) 签名结果发送给集合者Ui

2.3.2 单用户签名验证过程

Ui收到 (m, si, j) 后进行以下操作:

(1) Ui:令Ri, j= (xi, j, yi, j) , 取ri, j=xi, jmodn

(2) Ui:验证消息签名 (m, si, j) 的有效性。

Hi, j=si, jG+ (h (m) -R) vi, jmodn。如果Hi, j=0拒绝, 否则判断ri, j?=Xi, jmodn, 如果等式成立, 签名有效, 继续产生多重签名, 否则签名无效, 终止签名。

2.3.3 多重签名产生过程

当结构化的多重签名退化到单纯的广播结构时, 集合节点作为收集者要求出最终的多重签名结果, Ui计算S=si, 1+si.2++si, l=j=1lsi, jmodn, (m, S) 即为消息的多重签名;否则它只是作为广播多重签名的验证者对单用户的签名进行验证, 此时它在有序结构中的一些参数不是由它自己产生, 而是由广播中的节点产生, 即集合节点Ui的私钥为di=di, 1+di, 2++di, j-1+di, l;公钥为ei=diGmodn , 集合节点Ui的随机数ui= (ui, 1+ui, 2++ui, j-1+ui, l) modn, Ri=uiGmodn= (xi, yi) , ri=ximodn

2.3.4 多重签名验证过程

Ui:计算:

V=j=1lei, jmodnΗ=SG+ (h (m) -R) V= (X, Y)

如果H=0, 则拒绝这个签名, 否则, 判断R?=Xmodn, 如果成立则接受这个签名。

3 算法的安全性分析

目前存在的针对多重数字签名的攻击主要有以下几种:伪造数字签名、否认自己的签名、合谋攻击、重法攻击、前向性攻击。下面就针对以上的几种攻击, 对算法的安全性进行分析:

(1) 签名的不可抵赖性 可有效防止签名实体内部有人提供不正确的签名, 因为签名收集者会验证每个签名的有效性, 即通过等式Hi=siG+ (h (m) -R) vimodn= (Xi, Yi) 进行验证。

(2) 抗合谋伪造签名 针对该安全性分析如下:

si, j=ui, j- (h (m) -R) (di, j+h (R) ) modn

j=1lsi, jj=m+1lsi, j

如果攻击团体Ui, 1, Ui, 2, , Ui, m选取私钥满足j=1mdi, j=0且随机数ui, j∈{1, 2, , n-1}满足j=1mui, j=0, 并计算Ri, j=ui, jGmodn= (xi, j, yi, j) , 把Ri发送给集合者后试图构造ui, j=ui, j+ (h (m) -R) h (R) 并产生签名si, j=ui, j- (h (m) -R) (di, j+h (R) ) modn, 则:

然而, 此签名无法通过签名验证方程:

Hi, j=si, jG+ (h (m) -R) vi, jmodn= (Xi, j, Yi, j)

如果攻击团体中的m-1个成员Ui, j (j=1, 2, , m-1) 选取j=1m-1ui, j=0, 并根据另外一个成员Ui, m选择的ui, j计算R¯=j=1lRi, jmodn=j=mlRi, jmodn= (x, y) , 然后构造ui, j=ui, j+ (h (m) -R) h (R) , 最后生成签名, 既满足S=0又能通过验证方程, 但是因为只有先公布Ri才能生成R¯, 并且攻击团体无法在公布Ri之前虚假构造ui, j=ui, j+ (h (m) -R) h (R) 。

因此, 本文提出的方案可以抵抗合谋攻击。

(3) 防止重放攻击 可以在消息中加入时间戳防止重放攻击。

(4) 抗前向攻击 我们可以使用先前的密钥生成新的密钥, 可以如Uij时段的私钥为dij, 则在j+1时段的私钥为dij+1=dijGmodn

4 结束语

本文是基于椭圆曲线的结构化多重数字签名, 相对于其它多重签名方案更具灵活性。本方案适用于各种复杂的签名结构, 且安全性高, 满足数字签名所要求的不可伪造性、不可抵赖性、抗合谋攻击、防止重发攻击、前向安全性等安全特性。同时本方案基于椭圆曲线离散对数问题的密码体制, 具有密钥短小、运算速度快等优点, 从而使该签名算法具有更高的抗攻击性和更具实用性。

摘要:基于椭圆曲线数字签名函数, 提出了一种广播和有序相结合的结构化多重数字签名方案, 并对算法进行安全性分析。该方案结构灵活, 适合于各种复杂多重数字签名且能满足数字签名所要求的不可伪造性、不可抵赖性、抗合谋攻击、防止重发攻击、前向安全性等安全特性。

关键词:椭圆曲线,多重签名,结构化

参考文献

[1]Harn L, Kiesler T.New digital signature based on discrete logarithm[J].Electronics Letters, 1994, 30 (5) :396-398.

[2]李子臣, 杨义先.ElGamal多重数字签名方案[J].北京邮电大学学报:自然科学版, 1999, 22 (2) :30-34.

[3]赵择茂, 刘凤玉, 徐慧.基于椭圆曲线密码体制的签名方程的构造方法[J].计算机工程, 2004, 30 (19) :96-97.

[4]Harn L, Lin C Y, Wu TC.Structured multi-signature algorithms IEEP-roc-Comput.Digit.Tech.2004, 151 (3) :231-234.

[5]朱南希, 李志斌.一种改进的结构化多重数字签名[J].计算机安全, 2006 (9) :13-15.

[6]卢鹏菲, 詹雄泉, 洪景新.基于椭圆曲线的有序多重数字签名方案[J].厦门大学学报:自然科学版, 2005, 44 (5) :341-343.

多重签名 第6篇

文献[1]在1984年提出了基于身份的密码体制,相比传统的基于证书的公钥密码体制,基于身份的密码体制将用户公开的身份信息(例如姓名、身份证号、E-mail地址等)作为用户的公钥,而用户私钥则由一个称为私钥生成中心PKG的可信方生成,大大简化了密钥的管理过程,使得公钥的获取更加简单,在实际应用中带来极大的便利。

文献[2,3]在1996年提出了代理签名的概念。在普通代理签名中,当代理签名人代理原始签名人签名时, 其有效的代理签名可被任何第三方验证。但是,在某些涉及隐私的特殊场合, 例如电子招标、电子投票、个人商业活动等场合,此时代理签名的消息比较隐私, 只有原始签名人指定的验证人[4]才能验证代理签名的有效性,任何第三方都无法验证。目前,已有的基于身份的指定验证人代理签名方案[5,6,7]大都是无条件信任PKG的。也就是说,一旦PKG不诚实,它就可以依据用户公开的身份信息计算出用户的私钥,从而伪造用户的签名;而且在已有的这些方案中,都是一个代理签名人代理一个原始签名人行使签名权。但在现实生活中的很多场合,有时可能需要让一个代理签名人能够同时代理多个原始签名人签名。 例如,某公司的多个部门需要同时委托一个代理人在一份文件上签名[8]的情况。为了解决上述问题,本文在已有方案[9,10]的基础上,使用双线性对[11,12],提出了一个基于身份无可信中心的指定验证人代理多重签名方案。在该方案中,由于私钥生成中心PKG是不可信的,用户的私钥由PKG和用户共同生成,因此新方案可避免不诚实的PKG对用户私钥的泄露,解决了在基于身份代理签名时需要无条件信任PKG的问题。利用该方案,不仅可以实现代理多重签名,还可以实现代理签名的定向,从而防止了代理签名权利的滥用。

1预备知识

1.1双线性对

G1是阶为q的循环加法群,G2是阶为q的循环乘法群, q是大素数,PG1的生成元。假设在G1和G2群中的离散对数问题都是难解的。定义两群之间的双线性映射e:G1G1G2满足以下性质:

(1) 双线性性:对∀a,bZq*P,QG1,e(aP,bQ)=e(P,Q)ab;

(2) 非退化性:∃P,QG1,满足e(P,Q)≠1;

(3) 可计算性:对所有的P,QG1,存在有效算法可以计算出e(P,Q)。

1.2计算困难性问题

(1) 椭圆曲线离散对数问题(ECDLP):给定P,QG,找一整数n,使得Q=nP成立;

(2) 计算Diffie-Hellma问题(CDHP):对∀a,bRZ*q,给定<P,aP,bP>,计算abP;

(3) 判定Diffie-Hellma问题(DDHP):对∀a,b,cRZ*q,给定<P,aP,bP,cP>,判断c=abmodq是否成立;

(4) 双线性Diffie-Hellma问题(BDHP):对∀a,b,cRZ*q,给定<P,aP,bP,cP>,计算e(P,P)abc

2无可信中心的指定验证人代理多重签名方案

本方案假设PKG是不可信的。方案的参与者包括:私钥生成中心PKG、原始签名人团体、代理签名人和指定验证人。该方案由以下五个过程组成:系统设置过程、密钥提取过程、代理授权过程、代理多重签名过程和签名验证过程。

2.1系统设置

G1是阶为q的循环加法群,G2是阶为q的循环乘法群,q是大素数,PG1的生成元。定义一个双线性映射e:G1G1G2和四个单向哈希函数H1:{0,1}*G1G1,H2 :{ 0,1} *Zq*G1 G2 G1 G1 ,H3:{0,1}*G1,H4 :G1 Zq*。最后,PKG选择sRZq*,计算Ppub=sP, 将s秘密保存,并公开系统参数: params={G1,G2,e,q,P,Ppub,H1,H2,H3,H4}。

2.2密钥提取

假设t表示原始签名人的个数,Ai表示第i(1it)个原始签名人,其身份为IDi(1it);B表示代理签名人,其身份为IDB;C表示指定验证人,其身份为IDCAiBC分别秘密选取ri(1it)、rBrCRZq*,并计算Ri=riP(1it)、RB=rBPRC=rCP,然后分别将(Ri,IDi,Ti)(1it)、(RB,IDB,TB)、(RC,IDC,TC)提交给PKG。其中,Ti(1it)、TBTC分别表示ri(1it)、rBrC的使用期限。PKG计算Qi=H1(IDiTi,Ri)(1it)、QB=H1(IDBTB,RB)、QC=H1(IDCTC,RC),并将Qi(1it)、QBQC分别作为Ai(1it)、BC的公钥,而将si=sQi(1it)、sB=sQBsC=sQC分别作为Ai(1it)、BC的部分私钥,并通过安全信道分别传送给Ai(1it)、BC。最后Ai(1it)、BC分别将(si,ri)(1it)、(sB,rB)、(sC,rC)作为各自的私钥。

2.3代理授权

所有Ai(1it)协商建立一个授权信息mw,主要内容包括原始签名团体、代理签名人和指定验证人的身份信息,同时也明确了代理权限以及代理签名的有效期等信息。授权过程如下:

每个Ai(1it)计算σi=riH3(mw)+H4(mw)si,并将(σi,mw,Ti,Ri)发送给BB验证等式 e(σi,P)=e(H3(mw),Ri)e(Qi,Ppub)H4(mw)是否成立。如果等式都成立, 则说明授权合法。B则计算代理签名密钥sp=i=1tσi+Η4(mw)sB,其中,1it

2.4代理多重签名

对于待签名的消息m, 若TC在有效期内,则B选取u,rRZ*q,并计算X=rP,Y=e¯(RC,Ρpub)r,V=Η2(m,u,X,Y,i=1tRi+RB+RC),S=usp+rBV,其中,1it。最后B输出(u,X,S,mw,T1,,Tt,TB,R1,,Rt,RB)作为对消息m的代理多重签名。

2.5签名验证

C收到签名信息(u,X,S,mw,T1,,Tt,TB,R1,,Rt,RB)后,若Ti(1it)和TB在有效期内,则首先计算Qi=H1(IDiTi,Ri), QB=H1(IDBTB,RB),Y*=e(X,Ppub)rC其中,1it。然后验证等式e(S,Ρ)=e(Η3(mw),i=1tRi)ue(i=1tQi+QB,Ρpub)uΗ4(mw)e(Η2(m,u,X,Y*,i=1tRi+RB+RC),RB)是否成立,若成立则接受签名,否则拒绝。

3安全性分析

3.1正确性

签名验证等式的正确性:

3.2验证的指定性

在签名验证过程中,必须要用到验证人的私钥,而在本方案中,除了原始签名人指定的验证人C,其他任何第三方都不能验证代理多重签名是否有效。这是因为签名验证等式:

e(S,Ρ)=e(Η3(mw),i=1tRi)ue(i=1tQi+QB,Ρpub)uΗ4(mw)e(Η2(m,u,X,Y*,i=1tRi+RB+RC),RB)

其中包含Y*,而Y*=e¯(X,Ρpub)rC,显然,只有知道自己部分私钥rC的指定验证人C可以计算出Y*。因此,只有原始签名人指定的验证人可以验证代理多重签名的有效性。

3.3不可伪造性

(1) 普通攻击者无法伪造代理多重签名

除了合法的代理签名人B,普通攻击者不能伪造对消息m的代理多重签名。这是因为当普通攻击者试图冒充合法代理签名人B进行代理签名时,必须知道代理签名密钥sp,而sp是由Ai(1it)的部分私钥si(1it)和B的部分私钥sB构成的。由于普通攻击者不知道si(1it)和sB,因此普通攻击者无法伪造对消息m的代理多重签名。

(2) 内部攻击者无法伪造代理多重签名

对原始签名人Ai(1it)而言,即使他们相互合作试图伪造代理多重签名,但在不知道代理签名人B部分私钥sB的情况下,他们也无法计算出代理签名密钥sp,因此也就无法伪造代理多重签名。类似的,指定验证人C也无法伪造代理多重签名。

对不诚实的PKG而言,即使PKG获取了原始签名人Ai(1it)和代理签名人B的部分私钥si(1it)和sB,但在计算代理签名密钥sp时,需要知道Ai的另一部分私钥ri(1it),由于ri(1it)是Ai(1it)秘密选取的,在不知道ri(1it)的情况下,PKG无法计算出sp,因此也就无法伪造对消息m的代理多重签名。

3.4不可否认性

在签名验证过程中要用到授权信息mw和代理签名人B的公钥QB,而且mw中包含代理签名人的身份信息。因此,只要代理签名人B完成了一次代理签名,他就不能否认其代理人身份。类似的,只要原始签名人Ai(1it)授予了代理签名人代理签名的权限,他(们)也不能否认其授权人身份。

4结语

针对已有的基于身份的指定验证人代理签名方案大都是无条件信任PKG的问题,本文提出了一个基于身份无可信中心的指定验证人代理多重签名方案。新方案避免了不诚实的PKG对用户私钥的泄露,解决了在基于身份代理签名时需要无条件信任PKG的问题。利用该方案,不仅可以实现代理多重签名,还可以实现签名的定向,从而防止了代理签名权利的滥用。

参考文献

[1]Shamir A.Identity-based cryptosystems and signature schemes[C]//Advances in Cryptology:CRYPTO1984,LNCS196.Berlin:Springer,1984:47-53.

[2]Mambo M,Usuda K,Okamoto E.Proxy Signatures for Delegating Sig-ning Operation[C]//Proceedings of3rd ACM Conference on Computer and Communications Security.New York:ACM Press,1996:48-57.

[3]Mambo M,Usuda K,Okamoto E.Proxy signatures:Delegation of the Power to Sign Messages[J].IEICE Trans Fundam,1996,E79-A(9):1338-1354.

[4]Dai J Z,Yang X H,Dong J X.Designated-Receiver Proxy Signature Scheme for Electronic Commerce[C]//Proceedings of IEEE Interna-tional Conference on Systems,Man and Cybernetics.New York:IEEE Press,2003:384-389.

[5]Wang Q,Cao Z F.Identity-Based Strong Designated Verifier Proxy Sig-nature Scheme[J].Wuhan University Journal of Natural Sciences,2006(11):1633-1635.

[6]Lal S,Verma V.Identity Based Strong Designated Verifier Proxy Sig-nature Schemes[EB/OL].http://eprint.iacr.org/2006/394.pdf.

[7]Cao T,Lin D,Xue R.ID-based designated-verifier proxy signatures[J].IEEE Proceedings-Communications,2005,152(6):989-994.

[8]左为平,王彩芬,杨晓亚.具有消息恢复的指定验证人代理多重签名方案[J].武汉大学学报:理学版,2008,54(5):561-564.

[9]Liao J,Xiao J F,Qi Y H,et al.ID-based signature scheme without trus-ted PKG[C]//CISC2005,LNCS3822.Berlin:Springer,2005:53-62.

[10]左为平,王彩芬,樊睿.基于身份无可信中心的指定验证人代理签名方案[J].计算机工程与应用,2008,44(4):138-140.

[11]Boneh D,Franklin M.Identity-based encryption from the Weil pairing[C]//Advances in Cryptology:CRYPTO2001,LNCS2139.Berlin:Springer,2001:213-229.

多重签名范文

多重签名范文(精选6篇)多重签名 第1篇数字签名是一种电子模拟传统的手写签名, 电子文档的签名识别方法已被广泛应用到许多领域, 包括电...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部