2. 达州智能制造产业技术研究院, 达州 635000
Institute of Dazhou Intelligent Manufacturing Technology, Dazhou 635000, China
数字签名的概念首先由Diffie和Hellman[1]提出, 可用于合同、证书文件等的证明, 也可作为复杂安全协议的组成部分. 随着研究的深入, 许多具有特殊性质的数字签名方案相继被提出, 如盲签名[2]、代理签名[3], 或两种技术相结合的代理盲签名方案, 所有的数字签名方案中都需要安全地保存签名密钥, 因为一旦签名密钥泄露, 由这个签名密钥所签署的所有签名都将变得无效, 为了解决这个问题, 前向安全[4]技术被提出, 前向安全技术在很大程度上解决了因签名密钥泄露而带来的严重危害, 如在文献[5,6]中分别给出了安全的方案. 肖红光等人提出首个前向安全代理盲签名方案[7], 但该方案的前向安全性仅限于代理私钥, 而签名并不具备前向安全性, 文献[8]进一步指出该方案不能抵抗原始签名人的伪造攻击, 同时通过对代理授权方式和盲签名过程的改进提出了一个新的方案. 张席等提出了一种新的前向安全代理盲签名方案[9], 但该方案不能抵抗伪造攻击, 不具备不可伪造性. Manoj等设计了一个前向安全的代理盲签名方案[10], 文献[11]中发现该方案在代理授权和代理盲签名阶段均存在伪造攻击, 并基于离散对数给出了改进的前向安全代理盲签名方案, 改进后方案的特点是在代理授权阶段将单向散列函数嵌入到签名中, 并对签名阶段进行了改进. 周萍等人基于二次剩余难题, 提出两种前向安全的代理盲签名方案[12], 随后在其博士论文中[13]对其进行了改进, 经分析发现无论是原方案还是改进后的方案, 都存在信息拥有者对信息进行否认的问题, 因为整个方案中没有信息拥有者的私钥信息, 信息拥有者可以否认签名所用的信息是自己提供的, 针对周萍等人方案(以下简称ZP方案)存在的安全问题, 本文提出一种改进方案, 改进的方案中信息拥有者无法否认自己提供的信息, 信息拥有者参与了签名的过程, 改进的方案既保持了原方案的优点, 又能防止信息拥有者否认, 从而使方案具有更好的实用性.
1 ZP方案ZP方案回顾, 方案的参与者包括: 原始签名者A, 代理签名者B、信息拥有者C, mw是授权证书, 内容包含A和B的身份、授权代理签名的权限、范围和代理签名有效期等信息, 将有效周期划分为T个时间段.
1.1 系统参数选择一个q阶的元
$\begin{array}{l}{H_1}:Z_n^* \times {\left\{ {0,1} \right\}^*} \to Z_q^*\\{H_2}:Z_{T + 1}^* \times Z_n^* \times {\left\{ {0,1} \right\}^*} \times {\left\{ {0,1} \right\}^*} \to Z_q^*\end{array}$ |
原始签名者A任意选择一个xA作为自己的私钥,
代理签名者B任意选择一个xB作为自己的初始私钥,
信息拥有者C任意选择一个xC作为自己的私钥,
原始签名者A公开系统的参数
(1) 原始签名者A任意选取kA,
(2) 代理签名者B收到原始签名者A发送来的
在
设C拥有信息m, 需要B代表A对m进行签名, A, B, C三者共同通过以下步骤完成对m的代理盲签名.
(1) 代理签名者B任意选择两个数
(2) 信息拥有者C任意选择三个随机数
(3) 代理签名者B收到e'后, 计算:
(4) 信息拥有者C收到s'后, 计算:
任何人都可以验证盲签名
(1) 验证人首先根据授权信息mw检查签名授权信息是否正确, 如m是否在授权签名信息的有效范围内、代理签名权是否过期、代理权限是否在有效范围内等, 如果签名授权信息mw不正确, 则否认签名.
(2) 在验证授权信息mw正确后, 计算:
对ZP方案的正确性、强盲性、前向安全性以及代理签名安全性的分析请参见文献[10], 此处只对不可否认性从三个方面进行分析.
(1) 原始签名人不能否认自己对代理签名人的授权, 即不能否认自己的签名授权, 在代理授权阶段,
(2) 代理签名人不能否认自己的代理签名, 即代理签名人不能对自己的代理签名进行否认, 在代理盲签名生成阶段,
(3) 信息拥有者C能对签名进行否认, 即信息拥有者C否认提供信息m用于签名, 因为在整个签名过程中没有用到信息拥有者C的私钥.
通过分析发现, ZP方案中原始签名者无法否认自己的签名授权, 代理签名人不能对自己的代理签名进行否认, 但信息拥有者可以对签名的信息进行否认, 否认自己提供过信息m用于签名.
3 ZP方案的改进针对ZP方案中存在的安全问题, 提出一种改进方案, 改进方案中的系统参数、代理授权、更新代理密钥与原方案相同.
3.1 代理盲签名生成A, B, C三者共同通过以下步骤完成对m的代理盲签名.
(1) 代理签名者B任意选择两个数
(2) 信息拥有者C任意选择三个随机数
(3) 代理签名者B收到e'后, 计算:
(4) 信息拥有者C收到s'后, 计算:
新方案的强盲性、前向安全性以及代理签名安全性的分析请参见文献[10], 此处只对正确性和信息拥有者C的不可否认性进行分析.
4.1 正确性分析证明: 因为:
$\begin{array}{l}{x_{{B_i}}} = x_{{B_{i - 1}}}^2\left( {od q} \right){\rm{ = }}x_{{B_{i - 2}}}^{{2^2}}\left( {od q} \right)\\\quad\quad\!\!\!\!\!{\rm{ = }}x_{{B_{i - 3}}}^{{2^3}}\left( {od q} \right){\rm{ = }} \cdots = x_{{B_0}}^{{2^i}}\left( {od q} \right)\end{array}$ |
所以:
$\begin{array}{l}x_{{B_i}}^{{2^{T + 1 - i}}}\left( {od q} \right) = x_{{B_0}}^{{2^{T + 1}}}\left( {od q} \right)\\{y_B} = x_{{B_0}}^{{2^{T + 1}}}{\rm{ = }}x_{{B_i}}^{{2^{T + 1 - i}}}od n\end{array}$ |
代理签名者B收到原始签名者A发送来的
${g^{{\sigma '}}} = {g^{h{x_A} + {k_A}}} = {g^{h{x_A}}} \cdot {g^{{k_A}}} = y_A^h \cdot {r_A} = y_A^{{H_1}\left( {{r_A},{m_w}} \right)}{r_A}\left( {od n} \right)$ |
所以等式成立.
${g^\sigma } = {g^{{\sigma '} + x_B'}} = {g^{{\sigma '}}} \cdot {g^{x_B'}} = y_A^h \cdot {r_A} \cdot y_B'\left( {od n} \right)$ |
由签名过程知:
$\begin{aligned}s & = {s'} + \alpha \cdot {2^{T + 1 - i}} + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}\left( {od q} \right)\\ &={2^{T + 1 - i}} \cdot u \cdot {r_A} + {k_B} - {e'}\sigma + \alpha \cdot {2^{T + 1 - i}} + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}\left( {od q} \right)\\ & = {2^{T + 1 - i}} \cdot u \cdot {r_A} + {k_B} - \left( {e - {x_C}\beta } \right)\sigma + \alpha \cdot {2^{T + 1 - i}} + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}\left( {od q} \right)\\ &={2^{T + 1 - i}} \cdot u \cdot {r_A} + {k_B} - e\sigma + {x_C}\beta \sigma + \alpha \cdot {2^{T + 1 - i}} + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}\left( {od q} \right)\\ &={2^{T + 1 - i}} \cdot u \cdot {r_A} + {k_B} + \alpha \cdot {2^{T + 1 - i}} + {x_C}\beta \sigma - e\sigma + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}\left( {od q} \right)\end{aligned}$ |
又因为:
$\begin{aligned}{r_c} & = {r_B}{g^{\alpha \cdot {2^{T + 1 - i}}}}{\left( {y_A^h{r_A}y_B'} \right)^{{x_C}\beta }}\left( {od n} \right)\\ &\quad\!\!\!\!\!\!\!{\rm{ = }}{g^{{k_B} + \alpha \cdot {2^{T + 1 - i}}}} \cdot {g^{{x_C}\beta \sigma }}\left( {od n} \right)\\ & = {g^{{k_B} + \alpha \cdot {2^{T + 1 - i}} + {x_C}\beta \sigma }}\left( {od n} \right)\end{aligned}$ |
所以:
$\begin{aligned}{g^s} & = {g^{{2^{T + 1 - i}} \cdot u \cdot {r_A} + {k_B} + \alpha \cdot {2^{T + 1 - i}} + {x_C}\beta \sigma - e\sigma + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}}}\left( {od n} \right)\\ & = {g^{{2^{T + 1 - i}} \cdot u \cdot {r_A} + \eta \cdot {2^{T + 1 - i}} \cdot {r_A}}} \cdot {g^{ - e\sigma }} \cdot {g^{{k_B} + \alpha \cdot {2^{T + 1 - i}} + {x_C}\beta \sigma }}\left( {od n} \right)\\ & = {g^{\left( {u + \eta } \right){2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\\ & = {\left( {{g^u} \cdot {g^\eta }} \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\\ & = {\left( {wx_{{B_i}}^{ - 1} \cdot {g^\eta }} \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\\ & = {\left( {Wx_{{B_i}}^{ - 1}} \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\end{aligned}$ |
即得到:
${g^s} = {\left( {Wx_{{B_i}}^{ - 1}} \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)$ |
根据式子求rC:
$\begin{array}{l}{g^s}x_{{B_i}}^{{2^{T + 1 - i}} \cdot {r_A}} = {\left( W \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\\{g^s}{\left( {x_{{B_i}}^{{2^{T + 1 - i}}}} \right)^{{r_A}}} = {\left( W \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\\{g^s}y_B^{{r_A}} = {\left( W \right)^{{2^{T + 1 - i}} \cdot {r_A}}} \cdot {\left( {{g^\sigma }} \right)^{ - e}} \cdot {r_C}\left( {od n} \right)\end{array}$ |
所以:
$\begin{aligned}{r_C} & = {g^s}y_B^{{r_A}}{\left( {{W^{ - {2^{T + 1 - i}}}}} \right)^{{r_A}}} \cdot {\left( {{g^\sigma }} \right)^e}\left( {od n} \right)\\ & = {\left( {{W^{ - {2^{T + 1 - i}}}}{y_B}} \right)^{{r_A}}}{g^s} \cdot {\left( {y_A^h \cdot {r_A} \cdot y_B'} \right)^e}\left( {od n} \right)\end{aligned}$ |
即可得到:
在签名形成过程中, 信息拥有者C任意选择三个随机数
文章分析了ZP等人提出的前向安全代理盲签名方案, 并给出了改进方案, 经安全分析表明, 改进后的方案不仅保留了原方案的优点, 而且解决了信息拥有者可以对信息进行否认的问题, 可实现特殊应用领域的要求, 应用领域较广.
[1] |
Diffie W, Hellman ME. New directions in cryptography. IEEE Transactions on Information Theory, 1976, 22(6): 644-654. DOI:10.1109/TIT.1976.1055638 |
[2] |
Chaum D. Blind signatures for untraceable payments. In: Chaum D, Rivest RL, Sherman AT, eds. Advances in Cryptology. New York. Plenum Press. 1983. 199–233.
|
[3] |
Mambo M, Usuda K, Okamoto E. Proxy signatures for delegating signing operation. Proceedings of the 3rd ACM Conference on Computer and Communications Security. New Delhi, India. 1996. 48–57.
|
[4] |
Anderson R. Two remarks on public key cryptology. Invited Lecture, 4th Annual Conference on Computer and Communications Security. New York, NY, USA. 1997.
|
[5] |
李运发, 邹德清, 韩宗芬, 等. 基于前向安全的组签名体制研究. 计算机研究与发展, 2006, 43(12): 2069-2075. |
[6] |
曹正军, 刘丽华. 两个指定验证人签名方案的安全性分析. 软件学报, 2008, 19(7): 1753-1757. |
[7] |
肖红光, 谭作文, 王键. 一种前向安全的代理盲签名方案. 通信技术, 2009, 42(5): 193-196. |
[8] |
何滨, 杜伟章. 前向安全代理盲签名方案的分析及改进. 计算机工程与应用, 2015, 51(18): 104-108, 164. DOI:10.3778/j.issn.1002-8331.1310-0066 |
[9] |
张席, 杭欢花. 前向安全的代理盲签名方案. 计算机工程与应用, 2010, 46(24): 101-103, 145. DOI:10.3778/j.issn.1002-8331.2010.24.030 |
[10] |
Manoj KC, Balwant ST. An improved proxy blind signature scheme with forward security. International Journal of Computer Applications, 2014, 85(15): 1-4. DOI:10.5120/14914-3321 |
[11] |
刘二根, 王霞. 前向安全代理盲签名方案的分析与改进. 华东交通大学学报, 2015, 32(6): 110-114. |
[12] |
周萍, 何大可. 两种具有前向安全性质的代理盲签名方案. 计算机工程与应用, 2012, 48(5): 51-53, 155. |
[13] |
周萍. 特殊数字签名体制的研究[博士学位论文]. 成都: 西南交通大学, 2013. 111–116.
|