-
1976年, Diffie与Hellmann[1]引入了数字签名的概念. 在公钥密码系统中, 数字签名具有公开验证的属性. 也就是说, 给定一个签名, 任何人都可以验证它的有效性. 这就意味着任何人都可通过数字签名验证所收到消息的完整性以及其原始的消息来源.
然而, 在某些情况下, 这种可公开验证性并不适用. 有时候, 签名者希望只有指定的签名接收者才能验证签名的有效性. 例如, 在项目投标过程中, 为保护投标者的经济利益, 一些投标者希望只有那些可信的机构才能验证投标者对文件的签名[2]. 在一些投票系统中, 投票者希望只有可信的机构才能验证投票者的实名签名投票[3,4]. 研究发现, 指定验证者签名也适用于可否认系统的应用[5,6]. 因此, 基于这种指定验证的属性, 研究者提出很多指定验证签名方案(SDVS) [2,7-9]. 一般而言, SDVS应满足如下属性[8,9]:
1) 正确性. 利用签名算法所产生的签名, 必然能够通过验证算法来证实其有效性. 一旦签名通过验证, 指定的签名验证者(DV)应该接受该签名为有效签名.
2) 不可传递性. DV不能向任何第三方证明所接收的签名的真实来源.
3) 信源隐藏性. 给定一个签名, 即使签名者和DV公开他们的密钥, 任何人无法判断该签名是由签名者产生, 还是由DV仿真产生.
4) 不可伪造性. 任何外部敌手都无法有效伪造签名者的签名.
尽管人们提出了许多SDVS, 但多数SDVS是传统的数字签名[2,7-11]. 它们的安全性依赖于一些尚未得到证明的数学困难假设, 如离散对数问题和大数分解问题. 研究发现, 这些数学困难问题并不能抵抗量子敌手的攻击[12]. 为应对量子敌手对数字签名的安全威胁, Gottesman和Chuang[13]引入了量子签名的概念. 量子签名不同于传统的数字签名, 其具有物理的安全属性. 即量子签名的安全性主要依赖于一些基本量子力学原理, 如非正交量子态的不可区分性, 未知量子态的不可克隆性等. 量子签名的这种安全属性引起了研究者的浓厚兴趣, 人们提出了大量的量子签名方案[14-24]. 按照构造方式, 量子签名方案可分为基于离散变量的量子签名方案[14-22]和基于连续变量相干态的量子签名方案[23,24].
为使得SDVS可以抵抗量子敌手, Shi等[25,26]提出两类指定验证者量子签名(QSDV). Shi等的QSDV方案具有传统的SDVS的属性. 需要注意的是, QSDV方案本身是一种量子加密方案. 而安全的量子加密方案应在理论上具备信息安全属性(information-theoretical security)—量子密文不可区分性[27-29]. 然而, 文献[25,26]的量子密文的不可区分性并不能从理论上得到有效证明. 另外, 在文献[25,26]中, 需要使用量子单向函数, 验证者需要进行量子态比较算法来比较两个量子态是否相同. 需要注意的是, 量子态比较算法的输出具有一定的错误率. 因此, 需要进行执行大量的量子态比较测试才能验证两个量子态是否相同. 因此, 这将会影响文献[25,26]的执行和计算效率. 最近, 利用基于身份的密码系统的优点, Xin等[30]提出了一个基于身份的QSDV. 文献[30]的方案可以简化签名系统的密钥管理. 然而, 类似于文献[25,26], 文献[30]的量子密文不可区分性也没有从理论上得到证明. 并且, 在文献[30]中, 量子签名是一个加密的Bell态序列. 而在实践中, Bell态的制备相对于非纠缠态单光子来说较为麻烦.
本文提出一个新的QSDV. 在本文的QSDV方案中, 签名者无需执行量子态比较算法. 在签名算法的步骤中, 签名者无需制备纠缠态或发送纠缠态粒子给DV. 并且, 新方案的量子比特效率可达到100%. 新方案不仅具备传统的指定验证属性, 而且具有较强的安全属性, 即其理论上的量子密文不可区分性可以得到证明. 该方案可以抵抗重放攻击, 冒充攻击和木马攻击. 并且, 与类似方案相比, 本文方案中的密钥生成中心不必完全可信. 因此, 与类似方案相比, 新方案相对具有较好的安全属性和效率.
本文安排如下, 第2节简要回顾一次一密加密算法(OTP); 第3节给出新的QSDV; 第4节给出QSDV的安全分析; 第5节对类似的方案进行安全和效率比较; 最后, 给出本文的结论.
-
OTP是一种对称加密算法. 其具有无条件安全性[31]. 在该算法中, 消息发送者Amy和消息接收者Jack共享随机的密码本r(长度为n的比特串). 为将长度为n的消息比特串α秘密发送给Jack, Amy利用r将α加密为
$\beta = \alpha \oplus r$ . 这里的“$ \oplus $ ”代表XOR操作. 一旦Jack收到β, 其只需计算$\alpha = \beta \oplus r$ 便可得到相应的消息α. -
在方案中, Amy为签名者, 而Jack和TC分别为DV和密钥生成中心. 方案包括四个算法: 初始化算法, 密钥生成算法, QSDV生成算法和验证算法.
-
步骤1 通过执行量子密钥分配协议(QKDP)[32,33], TC与Amy共享二进制密钥比特串x = (x1, x2, ···, xn). 并且, TC与Jack共享二进制密钥比特串
$ y \!=\! (y_1, y_2,\cdots, y_n) $ . 类似地, 通过执行QKDP[32,33], Amy和Jack共享密钥${c^1} \!=\! (c_1^1, c_2^1, \cdots, c_n^1) \in \{ 0, \;1\} ^n$ 和${c^2} = \left( {c_1^2, c_2^2, \cdots, c_n^2} \right) \in {\{ 0, \;1\} ^n}$ . 然后, TC随机选取r = (r1, r2, ···, rn)∈{0, 1}n并计算u = (u1, u2, ···, un)和v = (v1, v2, ···, vn), 其中$ {u_i} = {y_i} \oplus {r_i},\;{v_i} = {x_i} \oplus {r_i},\;i = 1,\; 2, \cdots,n. $ 利用确定性量子直接通信[34-36], TC与Amy秘密地共享u. 类似地, 利用确定性量子直接通信[34-36], TC与Jack秘密地共享v.
步骤2 TC制备n个Bell态
$\left\{ \left| {{\phi _1}} \right\rangle, \left| {{\phi _2}} \right\rangle, \cdots, \left| {{\phi _n}} \right\rangle \right\}$ , 其中$ \left| {{\phi _i}} \right\rangle = \frac{1}{{\sqrt 2 }}\left( {\left| {{0_{{{\rm{a}}_i}}}{0_{{{\rm{b}}_i}}}} \right\rangle + \left| {{1_{{{\rm{a}}_i}}}{1_{{{\rm{b}}_i}}}} \right\rangle } \right),\;i = 1,\;2, \cdots,n. $ 根据
$\left\{ {\left| {{\phi _1}} \right\rangle, \left| {{\phi _2}} \right\rangle, \cdots, \left| {{\phi _n}} \right\rangle } \right\}$ , TC构建两个粒子序列${\phi _{\rm{a}}} = \left\{ {{\phi _{{{\rm{a}}_1}}}, {\phi _{{{\rm{a}}_2}}}, \cdots, {\phi _{{{\rm{a}}_n}}}} \right\}$ 和${\phi _{\rm{b}}} = \left\{ {{\phi _{{{\rm{b}}_1}}}, {\phi _{{{\rm{b}}_2}}}, \cdots, {\phi _{{{\rm{b}}_n}}}} \right\}$ . 其中,${\phi _{{{\rm{a}}_i}}}$ 代表$\left| {{\phi _i}} \right\rangle $ 的第一个粒子, 而${\phi _{{{\rm{b}}_i}}}$ 代表$\left| {{\phi _i}} \right\rangle $ 的第二个粒子, i = 1, 2, ···, n. 最后, TC分别将序列${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ 发送给Amy和Jack. 为防止敌手对量子态序列${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ 的窃听和干扰, 可采用GLLP公式[37]和诱骗态方法[38-40], 根据不同强度相干态的计数率和误码率检测敌手的窃听行为.步骤3 为安全接收量子态序列
${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ , Amy和Jack采用GLLP公式[37]和诱骗态方法[38-40]分别对量子信道进行窃听检测. 若不存在窃听行为, 则Amy和Jack分别保存好量子态序列${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ ; 否则, 重新执行初始化算法. -
假定
$H = \left( {\left| 0 \right\rangle \left\langle 0 \right|+\left| 1 \right\rangle \left\langle 0 \right| + \left| 0 \right\rangle \left\langle 1 \right| - \left| 1 \right\rangle \left\langle 1 \right|} \right)/\sqrt 2 $ 为Hadamard算子. 令$ Y = \left| 0 \right\rangle \left\langle 1 \right| - \left| 1 \right\rangle \left\langle 0 \right|, $ $ {Y^ + } = \left| 1 \right\rangle \left\langle 0 \right| - \left| 0 \right\rangle \left\langle 1 \right|, $ $ \left| + \right\rangle = \left( {\left| 0 \right\rangle + \left| 1 \right\rangle } \right)/\sqrt 2, $ $ \left| - \right\rangle = \left( {\left| 0 \right\rangle - \left| 1 \right\rangle } \right)/\sqrt 2 . $ 定义H0 = Y0 = I, 其中I为单位算子. 假定Amy需要对消息
$m = \left( {{m_1}, {m_2}, \cdots, {m_n}} \right) \in {\{ 0, \;1\} ^n}$ 产生QSDV. 步骤如下:步骤1 根据u, x, c1和c2, Amy计算
$k = \left( {{k_1}, {k_2}, \cdots, {k_n}} \right)$ 和$w = \left( {{w_1}, {w_2}, \cdots, {w_n}} \right)$ , 其中$\begin{split} & {k_i} = {x_i} \oplus {u_i} \oplus c_i^1 \oplus {m_i},\;{w_i} = c_i^2 \oplus {m_i} \\ & ~~~~~~~~\left( {i = 1,{\rm{ }}2,{\rm{ }} \ldots,n} \right). \end{split}$ 然后, 其对每个
$\left| {{m_i}} \right\rangle $ 执行操作${H^{{k_i}}}{Y^{{w_i}}}$ 而得到量子态:$\left| {{s_i}} \right\rangle = {H^{{k_i}}}{Y^{{w_i}}}\left| {{m_i}} \right\rangle,$ 令
$\left| s \right\rangle = \otimes _{i = 1}^n\left| {{s_i}} \right\rangle $ .步骤2 针对每个
$\left| {{s_i}} \right\rangle $ (i = 1, 2, ···, n), Amy利用粒子${\phi _{{{\rm{a}}_i}}}$ 和受控Y操作对$\left| {{s_i}} \right\rangle $ 进行加密, 其中,${\phi _{{{\rm{a}}_i}}}$ 为受控粒子, 而si为目标粒子. 也就是说, 若${\phi _{{{\rm{a}}_i}}}$ 的状态为$\left| 0 \right\rangle $ , Amy对$\left| {{s_i}} \right\rangle $ 执行I操作; 否则, Amy对$\left| {{s_i}} \right\rangle $ 执行Y操作. 因此,$\left| {{s_i}} \right\rangle $ 被加密为$| {{s'_i}} \rangle$ , 其中含有子系统${\phi _{{{\rm{a}}_i}}}$ ,${\phi _{{{\rm{b}}_i}}}$ 和si的系统的量子态为$\left| {\chi _i^{{{\rm{a}}_i},{{\rm{b}}_i},{s_i}}} \right\rangle = \frac{1}{{\sqrt 2 }}\left( {\left| {{0_{{{\rm{a}}_i}}}{0_{{{\rm{b}}_i}}}} \right\rangle \otimes \left| {{s_i}} \right\rangle + \left| {{1_{{{\rm{a}}_i}}}{1_{{{\rm{b}}_i}}}} \right\rangle \otimes Y\left| {{s_i}} \right\rangle } \right). $ Amy将量子签名
$\left| {s'} \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle,\left| {{s'_2}} \right\rangle, \cdots,\left| {{s'_n}} \right\rangle } \right\}, $ 和消息m发送给Jack.
图1简要给出了初始化和QSDV的生成过程.
-
步骤1 当收到消息m和相应的量子签名
$\left| {s'} \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle } \right\}$ 后, Jack针对每个$\left| {{s'_i}} \right\rangle $ 执行受控Y+操作. 其中,${\phi _{{{\rm{b}}_i}}}$ 用作受控粒子, 而${s'_i}$ 用作目标粒子. 也就是说, 若${\phi _{{{\rm{b}}_i}}}$ 的状态为$\left| 0 \right\rangle $ , 则Jack针对$\left| {{s'_i}} \right\rangle $ 执行I操作; 否则, Jack针对$\left| {{s'_i}} \right\rangle $ 执行Y+操作. 这样, Jack解密$\left| {{s'_i}} \right\rangle $ 而得到$\left| {{s_i}} \right\rangle $ . 则Jack得到序列$\left| s \right\rangle = \otimes _{i = 1}^n\left| {{s_i}} \right\rangle $ .步骤2 根据m, v, y, c1和c2, Jack计算
$k = \left( {{k_1}, {k_2}, \cdots, {k_n}} \right)$ 和$w = \left( {{w_1}, {w_2}, \cdots, {w_n}} \right)$ , 其中$\begin{split} &{k_i} = {y_i} \oplus {v_i} \oplus c_i^1 \oplus {m_i},\;{w_i} = c_i^2 \oplus {m_i} \\ &~~~~~~~~~~~~\left( {i = 1,{\rm{ }}2,{\rm{ }} \cdots,n} \right). \end{split} $ 然后, 针对每个
$\left| {{s_i}} \right\rangle $ , Jack对$\left| {{s_i}} \right\rangle $ 执行操作${\left( {{Y^ + }} \right)^{{w_i}}}{H^{{k_i}}}$ 而得到量子态:$\left| {{m'_i}} \right\rangle = {\left( {{Y^ + }} \right)^{{w_i}}}{H^{{k_i}}}\left| {{s_i}} \right\rangle .$ 步骤3 Jack利用计算基
$\left\{ {\left| 0 \right\rangle, \left| 1 \right\rangle } \right\}$ 测量每个$\left| {{{m'}_i}} \right\rangle $ . 若测量结果为$\left| 0 \right\rangle $ , 则其设${m'_i} = 0$ . 否则, 其设${m'_i} = 1$ . 令$m' = \left( {{m'_1}, {m'_2}, \cdots, {m'_n}} \right)$ . Jack验证是否m’ = m. 若相等, 则Jack接受$\left| {s'} \right\rangle = \left\{ \left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle \right\}$ 为有效的QSDV. 否则, Jack拒绝该签名. -
为保证QSDV的不可传递性, 使得Jack具备仿真Amy的QSDV的能力. 也就是说, Jack能够产生QSDV使得其与Amy产生的QSDV一样. 这样, 给定一个QSDV, Jack无法向任何第三方证明谁是真正的签名者, 这是因为Amy和Jack皆可产生同样的QSDV. 在本节, 演示Jack如何仿真Amy的QSDV.
步骤1 根据m, v, y, c1和c2, Jack计算
$k = \left( {{k_1}, {k_2}, \cdots, {k_n}} \right)$ 和$w = \left( {{w_1}, {w_2}, \cdots, {w_n}} \right)$ , 其中${k_i} = {y_i} \oplus {v_i} \oplus c_i^1 \oplus {m_i}$ 和${w_i} = c_i^2 \oplus {m_i}$ (i = 1, 2, ···, n). Jack对每个$\left| {{m_i}} \right\rangle $ 执行操作${H^{{k_i}}}{Y^{{w_i}}}$ 得到$\left| s \right\rangle = \otimes _{i = 1}^n\left| {{s_i}} \right\rangle $ , 其中$\left| {{s_i}} \right\rangle = {H^{{k_i}}}{Y^{{w_i}}}\left| {{m_i}} \right\rangle $ .步骤2 针对每个
$\left| {{s_i}} \right\rangle $ , Jack利用受控Y操作和粒子${\phi _{{{\rm{b}}_i}}}$ 加密$\left| {{s_i}} \right\rangle $ , 其中${\phi _{{{\rm{b}}_i}}}$ 用作受控粒子, 而si用作目标粒子. 即若${\phi _{{{\rm{b}}_i}}}$ 的状态为$\left| 0 \right\rangle $ , Jack对$\left| {{s_i}} \right\rangle $ 执行I操作; 否则, Jack对$\left| {{s_i}} \right\rangle $ 执行Y操作. 因此,$\left| {{s_i}} \right\rangle $ 被加密为$\left| {{s'_i}} \right\rangle$ . 这样, 包含子系统${\phi _{{{\rm{a}}_i}}}$ ,${\phi _{{{\rm{b}}_i}}}$ 和si的系统的状态为$\big| {\chi _i^{a, b, {s_i}}} \big\rangle$ , 其满足(5)式. 消息m的QSDV为$\left| s' \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle } \right\}$ . -
由(1)式、(3)式、(7)式、签名算法的步骤1和验证算法的步骤2, 可知:
$ {k_i} = {x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i},\;i = 1,{\rm{ }}2,{\rm{ }} \ldots,n. $ 由(4)式和(8)式, 易知若
$\left| {s'} \right\rangle = \left\{ \left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle \right\}$ 为有效的QSDV, 则m' = m. -
方案为一个QSDV方案. 在方案的验证算法中, 为验证所收到的QSDV的有效性, 需要使用粒子序列
${\phi _{\rm{b}}}$ , 密钥y, c1, c2和v. 需要注意的是, 只有Jack拥有${\phi _{\rm{b}}}$ . 同时, 只有Jack具有y, c1, c2和v. 因此, 只有Jack能够验证QSDV. 虽然TC也具有y和v, 但其不拥有c1, c以及粒子序列${\phi _{\rm{b}}}$ . 因此, 即使TC也无法验证QSDV. 因此, 方案具有指定验证的属性. -
根据(3)式、(7)式和(9)式, 可知Amy和Jack都可计算k和w. 因此, 他们都可对
$\left| {{m_i}} \right\rangle $ 执行操作${H^{{k_i}}}{Y^{{w_i}}}$ 而得到$\left| {{s_i}} \right\rangle $ . 同时, 根据(2)式, 可知Amy和Jack分别掌握${\phi _{{{\rm{a}}_i}}}$ 和${\phi _{{{\rm{b}}_i}}}$ . 因此, Amy和Jack都可对$\left| {{\phi _i}} \right\rangle $ 和$\left| {{s_i}} \right\rangle $ 执行受控Y操作. 因此, 给定m, Amy和Jack能产生同样的QSDV, 这使得Jack所仿真的QSDV与Amy所生成的QSDV无法相互区分. 因此, 本文所给出的QSDV满足不可传递性. -
在方案中, 签名者和验证者可以产生同样的QSDV. 这使得即使密钥x, y, c1和c2遭到泄露, 包括TC在内的任何第三方都无法判断究竟Amy是签名者还是Jack为签名者. 因此, 方案具有信源隐藏的特性.
-
事实上, QSDV是消息m的量子密文. 因此, 方案可视为消息m的量子加密方案(QES). 而一个QES的理论上的信息安全属性是根据选择明文攻击下的量子密文的不可区分性来定义的[27-29].
定义1[28,29] 一个QES方案E具备理论上的信息安全属性, 如果不存在量子多项式敌手Ad使得Ad能够以优势1/p(n)有效区分量子密文
${E_{L\left( {{1^n}} \right)}}\left( x \right)$ 和${E_{L\left( {{1^n}} \right)}}\left( y \right)$ , 其中n为安全参数, x和y为所有的不同的明文, p(n)为关于n的任意多项式, 而L为E内部的一个随机抛掷硬币算法.由定义1可知, 具有理论上信息安全属性的E应该满足
$ \begin{split} & \big| {\rm{Pr}}\left[ {{\rm{Ad}}\left( {{E_{L\left( {{1^n}} \right)}}\left( x \right)} \right)\; = \;1} \right]\; \\ & - {\rm{ Pr}}\left[ {{\rm{Ad}}\left( {{E_{L\left( {{1^n}} \right)}}\left( y \right)} \right)\; = \;1} \right]\; \big| < 1/p\left( n \right). \end{split} $ 根据(10)式, Yang等[29]进一步证明, 理论上QES的信息安全属性依赖于x和y的量子密文对应的密度算子之间的迹距离. 相关结论如下.
定理1[29] 一个QES方案E具备理论上的信息安全属性, 如果其在选择明文攻击下密度算子ρx和ρy满足:
$\begin{split} & D({\rho _x},{\rho _y}) < 1/p(n), \end{split} $ 其中ρx和ρy分别是量子密文E(x)和E(y)对应的密度算子.
关于定理1的详细证明, 请参考文献[29]. 利用定理1, 可以证明方案具备理论上的信息安全属性.
定理2 QSDV方案具备理论上的信息安全属性.
证明 令
$\left| {s'} \right\rangle $ 为消息m对应的QSDV, 而$\left| {{{s'}^ * }} \right\rangle $ 为消息m*对应的QSDV. 由定理1可知, 要想证明方案的理论上的信息安全属性, 需要计算$\left| {s'} \right\rangle $ 和$\left| {{{s'}^ * }} \right\rangle $ 对应的密度算子. 令${\rho _{s', m}}$ 和${\rho _{{{s'}^ * }, {m^ * }}}$ 分别表示$\left| {s'} \right\rangle $ 和$\left| {{{s'}^ * }} \right\rangle $ 对应的密度算子. 由(3)—(6)式和(9)式, 可得$ \begin{split} \,&{\rho _{s',m}} = \frac{1}{{{2^{5n}}}}\sum\limits_{x,y,{c^1},{c^2},r \in {{\{ 0,1\} }^n}} { \otimes _{i = 1}^n\left( {\left| {{s_i}} \right\rangle \left\langle {{s_i}} \right| + Y\left| {{s_i}} \right\rangle \left\langle {{s_i}} \right|{Y^ + }} \right)/2} \\ =\,& \frac{1}{{{2^{6n}}}} \otimes _{i = 1}^n\sum\limits_{{x_i},{y_i},c_i^1,c_i^2,{r_i} \in \{ 0,1\} } {\left( \begin{array}{l} {H^{{x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle \left\langle {{m_i}} \right|{\left( {{Y^ + }} \right)^{c_i^2 \oplus {m_i}}}{H^{{x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i}}} + \\ Y{H^{{x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle \left\langle {{m_i}} \right|{\left( {{Y^ + }} \right)^{c_i^2 \oplus {m_i}}}{H^{{x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i}}}{Y^ + } \end{array} \right)} = \dfrac{I}{2^n}. \end{split} $ 类似地, 可得
${\rho _{{{s'}^ * }, {m^ * }}} = I/{2^n}$ . 因此, 迹距离$D({\rho _{s', m}}, {\rho _{{{s'}^ * }, {m^ * }}}) = 0$ . 根据定理1, 可知QSDV具备理论上的信息安全属性. -
假定存在一个伪造者Ad, 其目标是伪造Amy的一个QSDV. 需要注意的是, 对于Ad而言, 为对消息m伪造一个有效的QSDV, 其不得不计算(4)式和(5)式, 而在(4)式和(5)式中需要使用密钥x, y, c1, c2以及受控粒子序列
${\phi _{\rm{a}}}$ 或${\phi _{\rm{b}}}$ . 然而, 由初始化算法可知, TC通过执行QKDP[32,33]与Amy和Jack分别共享密钥x和y. 类似地, 利用QKDP[32,33], Amy和Jack共享密钥c1和c2. 需要注意的, 文献[32,33]的QKDP具有无条件安全性. 因此, 密钥x, y, c1和c2也是无条件安全的. 因此, Ad无法得到x, y, c1和c2. 需要注意的是, 在初始化阶段, TC与Amy利用量子直接通信[34-36]秘密地共享u. 类似地, TC与Jack利用确定性量子直接通信[34-36]秘密地共享v. 而文献[34-36]的量子直接通信协议具有无条件安全性[41-43], 因此Ad无法得到u和v. 另外, u(或v)为y(或x)的OTP密文. 即使Ad能够获得u(或v), 根据OTP的无条件安全性[31], 可知Ad仍无法由u(或v)获得密钥y(或x). 根据(3)式和(7)式, 可知在不知道x, y, u, v和c1的情况下, Ad无法计算秘密参数k. 更进一步, 若不知k和c2, Ad无法生成量子态$\left| s \right\rangle = {H^k}{Y^{{c^2} \oplus m}}\left| m \right\rangle $ . 而且, 在不具备粒子序列${\phi _{\rm{a}}}$ 或${\phi _{\rm{b}}}$ 的情况下, Ad无法实现对目标量子态$\left| s \right\rangle $ 的加密. 因此, Ad对消息m伪造一个有效的QSDV粒子序列$\left| {s'} \right\rangle = \left\{ \left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle \right\}$ 是不可行的. 因此, Ad无法伪造一个有效的签名. 另外, 虽然TC可以计算k, 但其不知道c1和c2. 同时, TC不掌握受控粒子序列${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ . 因此, 即使TC也无法伪造消息m的QSDV. -
首先, 在方案中, TC将序列
${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ 分别发送给Amy和Jack. 敌手Ad可能试图截获、测量这些序列并替换它们的状态. 需要注意的是, TC, Amy和Jack采用GLLP公式和诱骗态方法来检测量子信道上敌手的窃听行为. TC, Amy和Jack可根据不同强度相干态的计数率和误码率检测出敌手的窃听行为. 因此, 在初始化算法步骤3中, Ad对序列的截获重放攻击将会被Amy和Jack通过窃听检测发现.其次, 在验证QSDV的时候, 敌手Ad可能会截获量子签名
$\left| {s'} \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle } \right\}$ 并将其替换为另外一个序列$\left| {{s^*}} \right\rangle = \left\{ {\left| {s_1^*} \right\rangle, \left| {s_2^*} \right\rangle, \cdots, \left| {s_n^*} \right\rangle } \right\}$ , 并企图使得$\left| {{s^*}} \right\rangle $ 能通过DV的验证. 然而, 由4.6节的不可伪造分析可知, Ad伪造QSDV签名$\left| {{s^*}} \right\rangle $ 使得其通过验证是不可行的. 因此, Ad的这种截获重放攻击是不可行的.最后, 根据(4)式和(5)式, Ad可得到
$\left| {{s'_i}} \right\rangle$ 具备状态${\rho _{{{s'}_i}}} = \dfrac{1}{2}\left( {\left| 0 \right\rangle \left\langle 0 \right| + \left| 1 \right\rangle \left\langle 1 \right|} \right)$ . 而且, 由定理2可知, QSDV具备理论上的信息安全属性. 因此, QSDV$\left| {s'} \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle } \right\}$ 对于敌手来说具备量子密文不可区分性. 这意味着敌手Ad(包括TC)无法从$\left| {s'} \right\rangle $ 中得到任何有用信息. -
在初始化算法步骤2中, 一个恶意的TC可能会在每个
$\left| {{\phi _i}} \right\rangle $ 中插入不可见光子以便窃听Amy和Jack所共享的密钥c1和c2.TC制备不可见光子序列
${D_{\rm{T}}} = \left\{ {\left| 0 \right\rangle _i^{\rm{T}}} \right\} \left( {1 \leqslant i \leqslant n} \right)$ 并通过受控非门操作使其与序列$\left\{ {\left| {{\phi _1}} \right\rangle, \left| {{\phi _2}} \right\rangle, \cdots, \left| {{\phi _n}} \right\rangle } \right\}$ 中的粒子纠缠而得到一个新的序列$\left\{ {\left| {\phi _1^{\rm{T}}} \right\rangle, \left| {\phi _2^{\rm{T}}} \right\rangle, \cdots, \left| {\phi _n^{\rm{T}}} \right\rangle } \right\}$ , 其中$ \begin{split} & \left| {\phi _i^{\rm{T}}} \right\rangle = \frac{1}{{\sqrt 2 }}\left( {\left| {{0_{{{\rm{a}}_i}}}(0_i^{\rm{T}}){0_{{{\rm{b}}_i}}}} \right\rangle + \left| {{1_{{{\rm{a}}_i}}}(1_i^{\rm{T}}){1_{{{\rm{b}}_i}}}} \right\rangle } \right),\\ & i = 1,2, \cdots,n. \end{split} $ 根据
$\left\{ {\left| {\phi _1^{\rm{T}}} \right\rangle, \left| {\phi _2^{\rm{T}}} \right\rangle, \cdots, \left| {\phi _n^{\rm{T}}} \right\rangle } \right\}$ , 在初始化算法步骤2和步骤3中, TC将粒子序列$\phi _{\rm{a}}^{\rm{T}} = \left\{ {\phi _{{{\rm{a}}_1}}^{\rm{T}}, \phi _{{{\rm{a}}_2}}^{\rm{T}}, \cdots, \phi _{{{\rm{a}}_n}}^{\rm{T}}} \right\}$ 发送给Amy. 则在签名算法的步骤1中, Amy产生的序列$\left| s \right\rangle $ 将和不可见光子序列DT相关. 这导致量子签名$\left| {{{s'}_i}} \right\rangle $ 的状态满足:$\left| {\chi _i^{{\rm{a}},{\rm{b}},{s_i}}} \right\rangle \!=\! \frac{1}{{\sqrt 2 }}\left( {\left| {{0_{{{\rm{a}}_i}}}0_i^{\rm{T}}{0_{{{\rm{b}}_i}}}} \right\rangle \otimes \left| {{s_i}} \right\rangle \!+\! \left| {{1_{{{\rm{a}}_i}}}1_i^{\rm{T}}{1_{{{\rm{b}}_i}}}} \right\rangle \otimes Y\left| {{s_i}} \right\rangle } \right). $ TC截获Amy发送给Jack的量子签名
$\left| {{{s'}_i}} \right\rangle $ 并用测量基$\left\{ {\left| 0 \right\rangle _i^{\rm{T}}, \left| 1 \right\rangle _i^{\rm{T}}} \right\}$ 对不可见光子序列进行测量. 这样, TC可得到序列$\left| s \right\rangle = \otimes _{i = 1}^n\left| {{s_i}} \right\rangle $ , 其中$\left| {{s_i}} \right\rangle = {H^{{x_i} \oplus {y_i} \oplus {r_i} \oplus c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle$ . 需要注意的是, TC掌握着xi, yi, ri和mi. 因此, 通过对$\left| {{s_i}} \right\rangle $ 执行操作${H^{{x_i} \oplus {y_i} \oplus {r_i}}}$ , TC可得到:$\left| {{{s''}_i}} \right\rangle = {H^{c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle,\;i = 1,2, \cdots,n.$ 于是, TC可得
$\left| {s''} \right\rangle = \otimes _{i = 1}^n\left| {{{s''}_i}} \right\rangle $ . 下面, 证明$\left| {s''} \right\rangle $ 具备理论上的信息安全属性, 从而TC无法从$\left| {s''} \right\rangle $ 中获得关于密钥c1和c2的任何有用信息.定理3 量子密文
$\left| {s''} \right\rangle $ 具备理论上的信息安全属性.证明 假定
$\left| {s''} \right\rangle $ 和$\left| {{{s''}^*}} \right\rangle $ 分别是消息m和m*的量子密文. 根据(14)式, 可计算$\left| {s''} \right\rangle $ 的密度算子如下:$ \begin{split} {\rho _{s'',m}} =\,& \frac{1}{{{2^{2n}}}}\sum\limits_{{c^1},{c^2} \in {{\{ 0,1\} }^n}} { \otimes _{i = 1}^n\left| {{{s''}_i}} \right\rangle \left\langle {s''} \right|} \\ = \,&\frac{1}{{{2^{2n}}}}\sum\limits_{{c^1},{c^2} \in {{\{ 0,1\} }^n}} \otimes _{i = 1}^n{H^{c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle \\ & \times \left\langle {{m_i}} \right|{{\left( {{Y^ + }} \right)}^{c_i^2 \oplus {m_i}}}{H^{c_i^1 \oplus {m_i}}}\\ =\,& \frac{1}{{{2^{2n}}}} \otimes _{i = 1}^n\sum\limits_{c_i^1,c_i^2 \in \{ 0,1\} } {H^{c_i^1 \oplus {m_i}}}{Y^{c_i^2 \oplus {m_i}}}\left| {{m_i}} \right\rangle \\ & \times\left\langle {{m_i}} \right|{{\left( {{Y^ + }} \right)}^{c_i^2 \oplus {m_i}}}{H^{c_i^1 \oplus {m_i}}} \\ =\,& I/{2^n}. \end{split} $ 类似地, 可得
$\left| {{{s''}^*}} \right\rangle $ 的密度算子${\rho _{{{s''}^ * }, {m^ * }}} = I/{2^n}$ . 因此, 迹距离$D({\rho _{s'', m}}, {\rho _{{{s''}^ * }, {m^ * }}}) = 0$ . 由定理1可知, 量子密文$\left| {s''} \right\rangle $ 具备理论上的信息安全属性. 证毕.由定理3可知, 由于
$\left| {s''} \right\rangle $ 具有量子密文不可区分性, 从而TC无法从$\left| {s''} \right\rangle $ 获得关于密钥c1和c2的任何有用信息. 因此, QSDV可以抵抗木马攻击. -
在初始化算法阶段, 签名生成阶段和签名验证阶段, 敌手Ad企图冒充合作伙伴.
首先, 在初始化算法阶段, Amy和Jack可在步骤3中通过诱骗态方法检测敌手对量子信道的窃听和冒充干扰. 因此, Ad冒充TC的行为是不可行的. 类似地, Ad冒充Amy和Jack也是不可行的.
其次, 在签名生成阶段, 敌手Ad企图冒充Amy产生有效的QSDV. 根据4.6节分析, 可知QSDV具有不可伪造性. 因此, 敌手Ad企图冒充Amy产生有效的QSDV是不可行的.
最后, 在签名的验证阶段, 敌手Ad企图冒充Jack来对QSDV进行验证. 根据4.2节的分析, 可知QSDV具有指定验证的属性. 因此, 敌手Ad冒充Jack来验证QSDV的合法性是不可行的.
-
首先, 分析方案的效率. 在文献[44-46]中, 量子比特效率ηq定义为ηq = δ1/δ2, 其中δ2表示量子信道所传递的量子比特总数, 而δ1表示得到经典比特数目(检测窃听攻击的量子比特和经典比特, 以及执行量子密钥分配协议所传递和共享的经典比特和量子比特忽略不计). 根据文献[44-46]可知, 量子协议或签名系统的初始化阶段只是为了在签名阶段和验证阶段的量子编码和信息的传递. 特别地, 对于签名系统, 系统的初始化只执行一次. 初始化阶段一旦完成, 系统在以后运行中, 仅仅执行量子签名算法和验证算法(即系统在以后对所有不同的消息进行量子签名时, 只需执行量子签名算法和验证算法). 所以, 一般在计算量子比特效率ηq时, 只考虑在量子签名算法和验证算法中量子比特的使用效率. 而在本文的量子签名生成阶段, Amy将n个量子比特QSDV
$\left| {s'} \right\rangle = \left\{ \left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle \right\}$ 发送给Jack, 即δ2 = n. 在量子签名的验证阶段, Jack通过量子比特序列$\left| {s'} \right\rangle $ 解码获得n比特的经典信息m', 即δ1 = n. 也就是说, 量子比特序列QSDV$\left| {s'} \right\rangle = \left\{ {\left| {{s'_1}} \right\rangle, \left| {{s'_2}} \right\rangle, \cdots, \left| {{s'_n}} \right\rangle } \right\}$ 承载了n比特的经典信息量. 类似于文献[44-46]的计算, 可得量子比特的利用效率ηq = δ1/δ2=100%. 本文主要讨论的是QSDV方案分析与比较. 文献[15]中给出一种仲裁量子签名方案, 其量子比特的利用效率也达到100%. 然而, 文献[15]所研究的为普通的仲裁量子签名, 其并不具备QSDV方案所要求的特征(如, 指定验证、不可传递和信源隐藏等), 安全属性和要求显然与本文的研究不同.其次, 在本文的方案中, 合作伙伴之间无需使用量子单向函数. 而在文献[25,26]中, 需要使用量子单向函数, 这无疑会增加QSDV方案的复杂性.
第三, 在我们的QSDV方案中, 无需使用量子态比较算法. 而在文献[25,26]中, 为验证QSDV的有效性, DV不得不执行量子态比较算法. 需要注意的是, 量子态比较算法的输出具有一定的错误概率. 因此, 在文献[25,26]中, 验证者需要进行大量的量子态比较测试才能确定QSDV的有效性. 这无疑会影响文献[25,26]方案的执行效率. 另外, 在文献[30]中, 为对消息签名, 签名者需要制备Bell态序列并将其发送给验证者. 需要注意的是, 在目前的条件下, 签名者制备非纠缠态相对更容易些.
最后, 进行类似方案的安全性比较. 需要注意的是, 所有的量子签名方案都是量子加密方案, 其应该具备理论上的信息安全属性[27-29]. 在类似QSDV文献[25,26,30]中, 主要讨论了QSDV的指定验证、不可传递、信源隐藏、不可伪造等安全属性. 然而, 文献[25,26,30]中方案的理论上的信息安全属性并未得到证实. 本文所给出的指定验证者量子签名不仅具有指定验证、不可传递、信源隐藏、不可伪造等安全属性, 而且其量子签名密文具有较强的不可区分度(量子签名密文迹距离为零), 从而满足文献[27-29]所要求的理论上的信息安全属性(见定理1和定理2). 另外, 在文献[25,26,30]中, 要求TC必须是可信的(因为他们掌握着签名者的密钥, 并具备伪造签名者签名的能力), 即假定TC不会冒充签名者伪造量子签名. 这是一个非常强的安全假设. 因为在虚拟的网络世界中, 完全可信的实体并不存在. 本文的方案可弱化这一安全假设. 即在本文的方案中, TC不必完全可信. 注意到虽然TC可以计算k, 但其不知道c1和c2. 同时, TC不掌握受控粒子序列
${\phi _{\rm{a}}}$ 和${\phi _{\rm{b}}}$ . 因此, 即使TC也无法伪造消息m的QSDV. 因此, 可假设TC为半可信的, 其可以诚实地协助系统其他参与者完成系统的初始化, 但其并不能伪造签名者的量子签名. 因此, 相对类似方案而言, 本文所给的方案具有较强的安全性.表1给出了类似的QSDV方案的安全和效率比较. 由以上分析和比较可知, 相对于类似方案, 本文所提出的QSDV方案具有较好的安全性和效率.
-
第一, 本文给出一种新的QSDV方案, 其可以抵抗伪造攻击、截获重发攻击、冒充攻击和木马攻击, 并具备指定验证、不可传递和信源隐藏等安全属性. 方案理论上的信息安全属性可得到证明. 可以弱化对TC的安全假设, 即TC无需完全可信. 而其他类似的QSDV方案不具备这样的强安全属性.
第二, 本文的方案无需使用量子单向函数, 可以简化方案的复杂性.
第三, 签名者生成QSDV时无需制备纠缠态序列; DV验证签名时无需执行大量的量子态比较操作. 这些有利于提高方案的执行效率.
第四, 量子比特效率达到100%.
因此, 与类似方案相比, 本文的方案相对而言有较好的安全性和效率.
-
多数传统的指定验证者签名方案无法抵抗量子计算机的攻击. 本文给出一种具有强安全性的指定验证者量子签名方案. 在方案中, 参与方利用量子密钥分配协议和量子直接通信协议共享密钥. 密钥生成中心制备Bell态序列并将其分配给签名者和指定验证者. 签名者利用其密钥和受控量子态对消息进行签名. 同时, 指定的验证者可以利用对称的签名步骤对量子签名进行仿真. 而验证者仿真的量子签名与签名者产生的量子签名完全一样. 这使得量子签名具有不可传递的属性. 本文所给出的签名方案可以抵抗伪造攻击, 截获重放攻击和木马攻击. 并且, 其理论上的信息安全属性可以得到证明. 同时, 密钥生成中心无需完全可信. 方案无需使用量子单向函数. 当产生量子签名时, 签名者无需制备纠缠态序列. 当验证签名时, 验证者无需执行量子态比较算法. 方案的量子比特效率达到100%. 因此, 与类似方案相比, 本文所给的方案具有较好的安全性和效率.
-
引用本文: |
Citation: |
计量
- 文章访问数: 679
- PDF下载量: 11
- 被引次数: 0