一种基于簇态的量子代理盲签名方法及系统与流程

文档序号:18522871发布日期:2019-08-24 09:58阅读:108来源:国知局

本发明涉及量子保密通信领域,具体涉及一种基于簇态的量子代理盲签名方法及系统。



背景技术:

与手写签名相对,数字签名也是一种安全的签名方法,经典数字签名被广泛的用在电子政务、电子商务、电子通信等诸多领域,但是,基于经典密码的数字签名方案的安全性大多是依赖于一些数学问题的计算复杂性,现有技术还提供了量子签名方法,量子签名方法能够有效克服且解决经典数字签名的一些安全性问题,其中量子代理盲签名是量子签名方法中安全性更高的一种签名方法,量子代理盲签名是指代理签名和盲签名的结合,既具有代理签名的特性,又具有盲签名的特性。

现有技术提出了一种结合量子盲签名和代理签名优点的量子代理盲签名方法,该方案可应用于电子商务系统中,现有技术还提出一种可应用于银行内部,用于电子支付的量子代理盲签名方法。在实际应用中频繁出现的量子签名协议往往使用ghz态和w态作为签名载体,但是安全性不高。



技术实现要素:

本发明的目的在于提供一种基于簇态的量子代理盲签名方法及系统,用以解决现有技术中的量子代理盲签名方法安全性不高的问题。

为了实现上述任务,本发明采用以下技术方案:

一种基于簇态的量子代理盲签名方法,所述的方法中包括5个通信方,分别是存储有待签名信息的消息所有者alice、无法正常签名的初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie,所述的方法按照以下步骤执行:

步骤1、通信方获得密钥:初始签名方bob通过四粒子ghz态序列将密钥分发给消息所有者alice和初始签名方bob,消息所有者alice获得密钥ka,初始签名方bob获得密钥kb;

代理签名方bob1以及代理签名方bob2通过量子密钥分发协议获得密钥

步骤2、可信接收者charlie生成四粒子簇态序列后,消息所有者alice利用四粒子簇态序列对待签名信息盲化后加密:

步骤2.1、可信接收者charlie准备一串二进制随机数序列rc,可信接收者charlie根据所述的一串二进制随机数序列rc生成一串四粒子簇态序列后,将所述的四粒子簇态序列划分为四个簇态子序列{s'a、s'c、s'b1、s'b2};

可信接收者charlie将簇态子序列s'a发送给消息所有者alice;

可信接收者charlie将簇态子序列s'c保留;

步骤2.2、消息所有者alice对获得的簇态子序列s'a进行测量,获得簇态子序列s'a的测量结果|m>,根据测量结果|m>以及待签名信息进行盲目信息转换,消息所有者alice获得盲消息m';

步骤2.3、消息所有者alice利用步骤1获得的密钥ka对所述的盲消息m'加密,消息所有者alice获得加密盲消息m';

步骤3、代理签名方授权:初始签名方bob向代理签名方bob1以及代理签名方bob2授权,代理签名方bob1获得密钥代理签名方bob2获得密钥

步骤4、可信接收者charlie对簇态子序列更新后发送给代理签名方签名:

步骤4.1、可信接收者charlie生成二进制随机数序列以及二进制随机数序列所述随机数序列的长度、随机数序列的长度、簇态子序列s'b1的长度以及簇态子序列s'b2长度均相同;

步骤4.2、重复本步骤根据随机数序列以及随机数序列对簇态子序列s'b1中每个粒子以及簇态子序列s'b2中每个粒子进行更新操作,获得新的簇态子序列s”b1以及新的簇态子序列s”b2,具体包括:

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中,σz=|1><0|+|0><1|,n=1,2,…,n,n为序列中二进制数的总个数;

若序列中第n个二进制数为1且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中i=|0><0|+|1><1|;

若序列中第n个二进制数为0且序列中第n个二进制数为1,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

步骤4.3、可信接收者charlie将新的簇态子序列s”b1发送给代理签名方bob1;可信接收者charlie将新的簇态子序列s”b2发送给代理签名方bob2;

步骤5、代理签名方签名:代理签名方bob1利用步骤1中获得的密钥对步骤4.3获得的新的簇态子序列s”b1进行测量后,再利用步骤3获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

代理签名方bob2利用步骤1中获得的密钥对步骤4.3获得的新的簇态子序列s”b2进行测量后,再利用步骤3获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

步骤6、可信接收者charlie验证签名是否成功:

步骤6.1、初始签名方bob将密钥kb发送给可信接收者charlie;

消息所有者alice将加密盲消息m'以及密钥ka发送给可信接收者charlie;

代理签名方bob1将签名信息发送给可信接收者charlie;

代理签名方bob2将签名信息发送给可信接收者charlie;

步骤6.2、可信接收者charlie判断密钥ka、密钥kb、密钥以及密钥是否满足若满足,则执行步骤6.3,否则当前通信不安全,签名失败,结束;

步骤6.3、可信接收者charlie利用密钥ka解密加密盲消息m′后测量,获得测量结果|m>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b1>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果b2>;

可信接收者charlie对步骤2.1获得的簇态子序列s′c进行测量,获得测量结果|c>;

步骤6.4、可信接收者charlie对所述的测量结果|m>、测量结果|b1>、测量结果|b2>以及测量结果|c>按照以下规则进行判断:

当测量结果|m>中第j位与测量结果|c>中第j位均为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位相同时,签名成功;

其中j为正整数;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|0>或|1>时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|+>且测量结果|b2>中第j位为|->时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|->且测量结果|b2>中第j位为|+>时,签名成功;

当测量结果|m>中第j位为|1>、测量结果|c>中第j位为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位不相同时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|+>或|->时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|0>且测量结果|b2>中第j位为|1>,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|1>且测量结果|b2>中第j位为|0>,签名成功;

否则,签名失败,结束。

一种基于簇态的量子代理盲签名系统,系统包括存储有待签名信息的消息所有者alice、无法正常签名的初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie,所述的消息所有者alice、初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie用于实现以下功能:

(i)初始签名方bob通过四粒子ghz态序列将密钥分发给消息所有者alice和初始签名方bob,消息所有者alice获得密钥ka,初始签名方bob获得密钥kb;

代理签名方bob1以及代理签名方bob2通过量子密钥分发协议获得密钥

(ii)可信接收者charlie生成四粒子簇态序列后,消息所有者alice利用四粒子簇态序列对待签名信息盲化后加密:

可信接收者charlie准备一串二进制随机数序列rc,可信接收者charlie根据所述的一串二进制随机数序列rc生成一串四粒子簇态序列后,将所述的四粒子簇态序列划分为四个簇态子序列{s'a、s'c、s'b1、s'b2};

可信接收者charlie将簇态子序列s'a发送给消息所有者alice;

可信接收者charlie将簇态子序列s'c保留;

消息所有者alice对获得的簇态子序列s'a进行测量,获得簇态子序列s'a的测量结果|m>,根据测量结果|m>以及待签名信息进行盲目信息转换,获得盲消息m';

消息所有者alice利用获得的密钥ka对所述的盲消息m'加密,获得加密盲消息m';

(iii)代理签名方授权:初始签名方bob向代理签名方bob1以及代理签名方bob2授权,代理签名方bob1获得密钥代理签名方bob2获得密钥

(iv)可信接收者charlie对簇态子序列更新后发送给代理签名方签名:

可信接收者charlie生成两串二进制随机数序列以及随机数序列所述随机数序列的长度、随机数序列的长度、簇态子序列s'b1的长度以及簇态子序列s'b2长度均相同;

可信接收者charlie根据随机数序列以及随机数序列对簇态子序列s'b1中每个粒子以及簇态子序列s'b2中每个粒子进行更新操作,获得新的簇态子序列s”b1以及新的簇态子序列s”b2,具体包括:

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中,σz=|1><0|+|0><1|,n=1,2,…,n,n为序列中二进制数的总个数;

若序列中第n个二进制数为1且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中i=|0><0|+|1><1|;

若序列中第n个二进制数为0且序列中第n个二进制数为1,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

可信接收者charlie将新的簇态子序列s”b1发送给代理签名方bob1;

可信接收者charlie将新的簇态子序列s”b2发送给代理签名方bob2;

(v)代理签名方签名:代理签名方bob1利用获得的密钥对获得的新的簇态子序列s”b1进行测量后,再利用获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

代理签名方bob2利用中获得的密钥对获得的新的簇态子序列s”b2进行测量后,再利用获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

(vi)可信接收者charlie验证签名是否成功:

初始签名方bob将密钥kb发送给可信接收者charlie;

消息所有者alice将加密盲消息m'以及密钥ka发送给可信接收者charlie;

代理签名方bob1将签名信息发送给可信接收者charlie;

代理签名方bob2将签名信息发送给可信接收者charlie;

可信接收者charlie判断密钥ka、密钥kb、密钥以及密钥是否满足若不满足,则当前通信不安全,签名失败,结束;

否则可信接收者charlie利用密钥ka解密加密盲消息m'后测量,获得测量结果|m>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b1>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b2>;

可信接收者charlie对获得的簇态子序列s'c进行测量,获得测量结果|c>;

可信接收者charlie对所述的测量结果|m>、测量结果|b1>、测量结果|b2>以及测量结果|c>按照以下规则进行判断:

当测量结果|m>中第j位与测量结果|c>中第j位均为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位相同时,签名成功;

其中j为正整数;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|0>或|1>时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|+>且测量结果|b2>中第j位为|->时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|->且测量结果|b2>中第j位为|+>时,签名成功;

当测量结果|m>中第j位为|1>、测量结果|c>中第j位为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位不相同时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|+>或|->时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|0>且测量结果|b2>中第j位为|1>,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|1>且测量结果|b2>中第j位为|0>,签名成功;

否则,签名失败,结束。

本发明与现有技术相比具有以下技术效果:

本发明提供了一种基于簇态的量子代理盲签名方法及系统采用了簇态作为量子盲签名的载体,采用ghz态仅作为密钥分发使用,簇态在保持ghz态和w态的特性的基础上,具有更大的纠缠持续性,安全性更高;经安全性分析证明,本发明提供的基于簇态的量子代理盲签名方法具有盲性,可验证性,不可伪造性和不可否认性的特征。

具体实施方式

本发明提供了一种基于簇态的量子代理盲签名方法及系统可以应用在电子现金支付、电子选举等领域,解决通信中会出现的信息受到攻击干扰的问题,以保证通信过程的安全性,进一步地保证了财产安全。

实施例一

在本实施例中公开了一种基于簇态的量子代理盲签名方法,方法中包括5个通信方,分别是持有待签名信息的消息所有者alice、无法正常签名的初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie。

本发明提供的量子代理盲签名方案中包括5个合法通信方。alice为消息所有者,她的文件需要由初始签名人bob签名。但是,alice希望bob对她的文件内容一无所知,即实现签名方案的盲性。如bob此时由于某种原因无法完成对alice初始信息的签名,bob可授权代理签名人群组(bob1和bob2),在bob缺席期间代表他执行签名。两位代理签名人bob1和bob2从bob处获取代理凭证。只有当bob1和bob2合作时,才能代表bob生成签名。charlie是一个授权可信的接收者,他接收alice的文件并验证文件上的签名是否由两个代理签名者合作完成。

在本方案中,两个代理签名人bob1和bob2在初始签名人bob缺席期间代替其合作完成对初始信息的签名。两个代理签名人bob1和bob2只负责对待签名信息执行签名,却无法知晓初始信息的具体内容。

现有量子签名协议往往使用ghz态和w态作为签名信息载体,表现出优异的特性。簇态不仅具有ghz态和w态的特性,而且具有很大的纠缠持续性。也就是说,簇态比ghz态更难被酉操作算子分解,在实际应用中具有更高的安全性,因此在本发明中选用簇态作为盲签名的载体。

所述的方法按照以下步骤执行:

步骤1、通信方获得密钥:初始签名方bob通过四粒子ghz态序列将密钥分发给消息所有者alice和初始签名方bob,消息所有者alice获得密钥ka,初始签名方bob获得密钥kb;

代理签名方bob1以及代理签名方bob2通过量子密钥分发协议获得密钥

在本步骤中,初始签名方bob准备执行通信所需的四粒子ghz态序列,该序列共包括n个ghz态粒子,其中每个ghz态都处于相同的状态:

bob将该序列划分成四个子序列,将其中一个子序列发送给消息所有者alice,剩下的三个子序列自己保留。消息所有者alice和初始签名方bob对收到粒子序列中的每个粒子测量,根据得到的测量结果获得密钥ka和密钥kb。

而代理签名方bob1以及代理签名方bob2通过量子密钥分发协议,共享密钥

其中量子密钥分发协议可以是bb84协议。

可选地,初始签名方bob和消息所有者alice获得密钥的过程具体包括:

步骤1.1、初始签名方bob准备一串四粒子ghz态序列后将所述的四粒子ghz态序列划分为四个ghz态子序列{sa、sb、sb1、sb2},初始签名方bob将三个ghz态子序列{sb、sb1、sb2}留下后,将剩下的一个ghz态子序列sa发送给消息所有者alice;

在本步骤中,初始签名方bob准备一组包含n个四粒子ghz态的序列,其中每个ghz态处于相同的状态这n个ghz态可具体表示为:

[(p1(b),p1(b1),p1(b2),p1(a)),(p2(b),p2(b1),p2(b2),p2(a)),...,(pi(b),pi(b1),pi(b2),pi(a)),...,(pn(b),pn(b1),pn(b2),pn(a))]

其中下标表示ghz态序列的顺序。初始签名方bob将该序列划分成四个子组sl=[p1(l),p2(l),...,pn(l)],其中l∈{b,b1,b2,a}。初始签名方bob保留ghz态子序列sb,而将ghz态子序列sa分发给消息所有者alice。

步骤1.2、消息所有者alice获得ghz态子序列sa;

初始签名方bob获得ghz态子序列sb、ghz态子序列sb1以及ghz态子序列sb2;

步骤1.3、消息所有者alice以及初始签名方bob分别对获得的ghz态子序列sa以及ghz态子序列sb进行测量,获得密钥ka以及密钥kb。

可选地,所述的步骤1.3中消息所有者alice以及初始签名方bob分别对获得的ghz态子序列sa以及ghz态子序列sb沿着x基方向进行测量,获得密钥ka以及密钥kb。

在本步骤中,初始签名方bob沿着x基方向测量序列sb中的粒子,从而根据测量结果得到初始签名方bob的密钥kb。具体的方法为,测量结果|+>表示经典比特“0”,测量结果|->表示经典比特“1”。类似的,alice沿着x基方向测量ghz态子序列sa中的粒子,从而根据测量结果得到密钥ka。

步骤2、对消息所有者alice的待签名信息盲化后加密:

步骤2.1、可信接收者charlie准备一串二进制随机数序列rc,可信接收者charlie根据所述的一串二进制随机数序列rc生成一串四粒子簇态序列后,将所述的四粒子簇态序列划分为四个簇态子序列{s'a、s'c、s'b1、s'b2};

在本步骤中,可信接收者charlie生成一串二进制随机数序列rc∈{0,1}n,可信接收者charlie准备n个簇态粒子,其中每个簇态粒子处于态,根据随机数序列rc中的每一位随机数的数值,决定每个簇态的状态。

具体的,随机数序列rc中第p位为0,则四粒子簇态序列中第p个簇态为

随机数序列rc中第p位为1,则四粒子簇态序列中第p个簇态为

根据以上的规则,可信接收者charlie生成一串四粒子簇态序列,之后他将这个簇态序列分成四个簇态子序列sk=[p1(k),p2(k),...,pn(k)],其中k∈{c′,a′,b′1,b′2}。

可信接收者charlie将簇态子序列s'a发送给消息所有者alice;

可信接收者charlie将簇态子序列s'c保留;

步骤2.2、消息所有者alice对获得的簇态子序列s'a进行测量,获得子序列s'a的测量结果|m>,根据测量结果|m>以及待签名信息进行盲目信息转换,获得盲消息m';

可选地,所述的步骤2.2中消息所有者alice对获得的簇态子序列s'a进行测量,获得簇态子序列s'a的测量结果,根据测量结果|m>以及待签名信息进行盲目信息转换,获得盲消息m',其中待签名信息m={m(1),m(2),...,m(n),...,m(n)},n∈n,n为正整数,具体包括:

步骤2.2.1、消息所有者alice对获得的簇态子序列s'a沿着z基方向进行测量,获得簇态子序列s'a的测量结果|m>={|m(1)>,|m(2)>,...,|m(n)>,...,|m(n)>},其中|m(n)>∈{|0>,|1>},所述子序列s'a的测量结果的长度与待签名信息的长度相同;

步骤2.2.2、重复本步骤对待签名信息m的每一位进行盲目信息转换,获得盲消息m':

若待签名信息中第n位m(n)为0且测量结果中第n位|m(n)>为|0>,则将待签名信息中第n位转换为11;

若待签名信息中第n位m(n)为0且测量结果中第n位|m(n)>为|1>,则将待签名信息中第n位转换为01;

若待签名信息中第n位m(n)为1且测量结果中第n位|m(n)>为|0>,则将待签名信息中第n位转换为10;

若待签名信息中第n位m(n)为1且测量结果中第n位|m(n)>为|1>,则将待签名信息中第n位转换为00。

在本步骤中,消息所有者alice准备n比特二进制消息,m={m(1),m(2),...,m(n),...,m(n)}。消息所有者alice沿着z基方向对簇态子序列sa′中的例子执行测量,并将测量结果记录为|m>={|m(1)>,|m(2)>,...,|m(n)>},其中|m(i)>∈{|0>,|1>}。当m(i)=0和|m(i)>=|0>,消息所有者alice设置盲目信息为m′(i)=11。其他类似的转换如表2所示。

表2盲信息转化规则

步骤2.3、消息所有者alice利用步骤1.3获得的密钥ka对所述的盲消息m'加密,获得加密盲消息m';

在本步骤中,消息所有者alice利用密钥ka加密m′创建秘密盲消息消息所有者alice随后将盲消息m′发送给charlie并要求代理签名方对盲消息m′进行盲签名。

步骤3、代理签名方授权:初始签名方bob向代理签名方bob1以及代理签名方bob2授权,代理签名方bob1以及代理签名方bob2分别获得密钥以及密钥

可选地,所述的步骤3具体包括:

初始签名方bob将步骤1中获得的ghz态子序列sb1以及ghz态子序列sb2发送给代理签名方bob1以及代理签名方bob2,代理签名方bob1以及代理签名方bob2分别测量ghz态子序列sb1以及ghz态子序列sb2,获得密钥以及密钥

在本步骤中,初始签名方bob将粒子序列和授权证书分别通过量子信道和经典信道发送给代理签名方bob1以及代理签名方bob2,收到粒子序列后,代理签名方bob1以及代理签名方bob2分别沿着x基方向测量各自序列中的粒子,以获得相应的密钥,并将获得密钥与charlie共享,具体包括:

步骤3.1、如果初始签名方bob同意代理签名方bob1以及代理签名方bob2作为他的代理签名者,初始签名方bob将分别通过认证安全的量子信道和经典信道将ghz态子序列和证书发送给代理签名方bob1,同时将ghz态子序列和证书发送给代理签名方bob2。授权证书是由初始签名人和代理签名人提前协商确定的,所包括的信息有委托期限,代理人的身份信息以及权限范围。

步骤3.2、代理签名方bob1收到初始签名方bob发送的ghz态子序列和授权证书后,代理签名方bob1将授权证书临时存储在他的数据库中,并沿着x基方向测量ghz态子序列中的粒子以获得密钥类似的,代理签名方bob2收到初始签名方bob发送ghz态子序列和授权证书后,代理签名方bob2存储证书并沿着x基方向测量ghz态子序列中的粒子以获得密钥随后,代理签名方bob1以及代理签名方bob2将各自获取的密钥分别发送给可信接收者charlie。

步骤4、可信接收者charlie对簇态子序列更新后发送给代理签名方签名:

步骤4.1、可信接收者charlie生成两串二进制随机数序列以及随机数序列所述随机数序列的长度、随机数序列的长度、簇态子序列s'b1的长度以及簇态子序列s'b2长度均相同;

步骤4.2、重复本步骤根据随机数序列以及随机数序列对簇态子序列s'b1中每个粒子以及簇态子序列s'b2中每个粒子进行更新操作,获得新的子序列s”b1以及新的子序列s”b2,具体包括:

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中,σz=|1><0|+|0><1|,n=1,2,…,n,n为序列中二进制数的总个数;

若序列中第n个二进制数为1且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中i=|0><0|+|1><1|;

若序列中第n个二进制数为0且序列中第n个二进制数为1,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

在本步骤中,可信接收者charlie生成二进制随机数序列以及随机数序列然后,可信接收者charlie根据这两个随机比特串分别对簇态子序列和簇态子序列中的粒子进行相应的操作。以第i个粒子为例,charlie对两个光子{pi(b′1),pi(b′2)}执行操作其中π0=|0><0|+|1><1|=i和π1=|1><0|+|0><1|=σz,如表1所示。

表1charlie执行的相应操作

步骤4.3、可信接收者charlie将新的簇态子序列s”b1发送给代理签名方bob1;可信接收者charlie将新的簇态子序列s”b2发送给代理签名方bob2;

步骤5、代理签名方签名:代理签名方bob1利用步骤1中获得的密钥对步骤4.3获得的新的簇态子序列s”b1进行测量后,再利用步骤3获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

代理签名方bob2利用步骤1中获得的密钥对步骤4.3获得的新的簇态子序列s”b2进行测量后,再利用步骤3获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

在本步骤完成代理签名方bob1以及代理签名方bob2对盲消息m′的盲签名。

可选地,所述的步骤5中代理签名方bob1以及代理签名方bob2根据步骤1中获得的密钥对步骤4.3获得的新的簇态子序列s”b1以及新的簇态子序列s”b2进行测量,具体包括:

所述的步骤5中若密钥为0,则代理签名方bob1对步骤4.3获得的新的簇态子序列s”b1沿z基方向进行测量;否则代理签名方bob1对步骤4.3获得的新的簇态子序列s”b1沿x基方向进行测量;

所述的步骤5中,若密钥为0,则代理签名方bob2对步骤4.3获得的新的簇态子序列s”b2沿z基方向进行测量;否则代理签名方bob2对步骤4.3获得的新的簇态子序列s”b2沿x基方向进行测量。

可选地,所述的步骤5中采用量子一次加密算法利用步骤3获得的密钥以及密钥对测量结果加密,获得代理签名方bob1的签名信息以及代理签名方bob1的签名信息

步骤6、可信接收者charlie验证签名是否成功:

在本步骤中,可信接收者charlie验证签名的真实性。可信接收者charlie收到各个参与方发送的密钥后,判断密钥之间是否满足验证等式。可信接收者charlie将收到的盲信息转化为初始信息,并解密两个代理签名人发送的签名信息获得各个参与方的测量结果,验证测量结果之间的关系是否正确。

步骤6.1、初始签名方bob将密钥kb发送给可信接收者charlie;

消息所有者alice将加密盲消息m'以及密钥ka发送给可信接收者charlie;

代理签名方bob1将签名信息发送给可信接收者charlie;

代理签名方bob2将签名信息发送给可信接收者charlie;

步骤6.2、可信接收者charlie判断密钥ka、密钥kb、密钥以及密钥是否满足若满足,则执行步骤6.3,否则当前通信不安全,签名失败,结束;

在本步骤中,在收到其他通信方发送的密钥后,可信接收者charlie检测收到的密钥之间是否满足等式如果不满足这个条件,可信接收者charlie认为其中的某些密钥在传输途中发生错误,因此终止本次通信。

步骤6.3、可信接收者charlie利用密钥ka解密加密盲消息m'后测量,获得测量结果|m>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b1>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b2>;

可信接收者charlie对步骤2.1获得的簇态子序列s′c进行测量,获得测量结果|c>;

步骤6.4、可信接收者charlie对所述的测量结果|m>、测量结果|b1>、测量结果|b2>以及测量结果|c>按照以下规则进行判断:

当测量结果|m>中第j位与测量结果|c>中第j位均为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位相同时,签名成功;

其中j为正整数;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|0>或|1>时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|+>且测量结果|b2>中第j位为|->时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|->且测量结果|b2>中第j位为|+>时,签名成功;

当测量结果|m>中第j位为|1>、测量结果|c>中第j位为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位不相同时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|+>或|->时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|0>且测量结果|b2>中第j位为|1>,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|1>且测量结果|b2>中第j位为|0>,签名成功;

否则,签名失败,结束。

在本步骤中,可信接收者charlie利用密钥ka解密m′获得盲消息m′,然后再通过表2的反向编码规则将盲信息m′转化为原始消息m。举例说明,如果盲信息m′={00011011},可信接收者charlie通过标的反向规则推断出m={1010}和|m>={|1>,|1>,|0>,|0>}。恢复出后,可信接收者charlie分别利用密钥解密由此获得代理签名方bob1以及代理签名方bob2的测量结果|b1>和|b2>。可信接收者charlie检查四个通信方的测量结果{|m>,|b1>,|b2>,|c>}是否符合表3中的验证规则,若符合则说明签名成功,否则签名失败。

表3协议的验证准则

本发明提供了一种基于簇态的量子代理盲签名方法采用了簇态作为量子盲签名的载体,采用ghz态仅作为密钥分发使用,簇态在保持ghz态和w态的特性的基础上,具有更大的纠缠持续性,安全性更高;经安全性分析证明,所提出的量子签名方案具有盲性,可验证性,不可伪造性和不可否认性的特征。

实施例二

基于实施例一中的方法,在本实施例中公开了用于实现实施例一中方法的一种基于簇态的量子代理盲签名系统,系统包括存储有待签名信息的消息所有者alice、无法正常签名的初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie。

所述的消息所有者alice、初始签名方bob、代理签名方bob1、代理签名方bob2以及可信接收者charlie用于实现以下功能:

(i)初始签名方bob通过四粒子ghz态序列将密钥分发给消息所有者alice和初始签名方bob,消息所有者alice获得密钥ka,初始签名方bob获得密钥kb;

代理签名方bob1以及代理签名方bob2通过量子密钥分发协议获得密钥

可选地,所述的初始签名方bob通过四粒子ghz态序列将密钥分发给消息所有者alice和初始签名方bob,消息所有者alice获得密钥ka,初始签名方bob获得密钥kb,具体包括:

初始签名方bob准备一串四粒子ghz态序列后将所述的四粒子ghz态序列划分为四个ghz态子序列{sa、sb、sb1、sb2},初始签名方bob将三个ghz态子序列{sb、sb1、sb2}留下后,将剩下的一个ghz态子序列sa发送给消息所有者alice;

消息所有者alice获得ghz态子序列sa;

初始签名方bob获得ghz态子序列sb、ghz态子序列sb1以及ghz态子序列sb2;

消息所有者alice以及初始签名方bob分别对获得的ghz态子序列sa以及ghz态子序列sb沿着x基方向进行测量,获得密钥ka以及密钥kb。

(ii)可信接收者charlie生成四粒子簇态序列后,消息所有者alice利用四粒子簇态序列对待签名信息盲化后加密:

可信接收者charlie准备一串二进制随机数序列rc,可信接收者charlie根据所述的一串二进制随机数序列rc生成一串四粒子簇态序列后,将所述的四粒子簇态序列划分为四个簇态子序列{s'a、s'c、s'b1、s'b2};

可信接收者charlie将簇态子序列s'a发送给消息所有者alice;

可信接收者charlie将簇态子序列s'c保留;

消息所有者alice对获得的簇态子序列s'a进行测量,获得簇态子序列s'a的测量结果|m>,根据测量结果|m>以及待签名信息进行盲目信息转换,获得盲消息m';

可选地,所述的消息所有者alice对获得的簇态子序列s'a进行测量,获得簇态子序列s'a的测量结果|m>,根据测量结果|m>以及待签名信息进行盲目信息转换,获得盲消息m',其中待签名信息m={m(1),m(2),...,m(n),...,m(n)},n∈n,n为正整数,具体包括:

消息所有者alice对获得的簇态子序列s'a沿着z基方向进行测量,获得簇态子序列s'a的测量结果|m>={|m(1)>,|m(2)>,...,|m(n)>,...,|m(n)>},其中|m(n)>∈{|0>,|1>},所述簇态子序列s'a的测量结果的长度与待签名信息的长度相同;

消息所有者alice对待签名信息m的每一位进行盲目信息转换,获得盲消息m':

若待签名信息中第n位m(n)为0且测量结果中第n位|m(n)>为|0>,则将待签名信息中第n位转换为11;

若待签名信息中第n位m(n)为0且测量结果中第n位|m(n)>为|1>,则将待签名信息中第n位转换为01;

若待签名信息中第n位m(n)为1且测量结果中第n位|m(n)>为|0>,则将待签名信息中第n位转换为10;

若待签名信息中第n位m(n)为1且测量结果中第n位|m(n)>为|1>,则将待签名信息中第n位转换为00。

消息所有者alice利用获得的密钥ka对所述的盲消息m'加密,获得加密盲消息m';

(iii)代理签名方授权:初始签名方bob向代理签名方bob1以及代理签名方bob2授权,代理签名方bob1以及代理签名方bob2分别获得密钥以及密钥

可选地,所述的初始签名方bob向代理签名方bob1以及代理签名方bob2授权,代理签名方bob1以及代理签名方bob2分别获得密钥以及密钥具体包括:

初始签名方bob将获得的ghz态子序列sb1发送给代理签名方bob1;

初始签名方bob将获得的ghz态子序列sb2发送给代理签名方bob2;

代理签名方bob1测量ghz态子序列sb1获得密钥

代理签名方bob2测量ghz态子序列sb2,获得密钥

(iv)可信接收者charlie对簇态子序列更新后发送给代理签名方签名:

可信接收者charlie生成两串二进制随机数序列以及随机数序列所述随机数序列的长度、随机数序列的长度、簇态子序列s'b1的长度以及簇态子序列s'b2长度均相同;

可信接收者charlie根据随机数序列以及随机数序列对簇态子序列s'b1中每个粒子以及簇态子序列s'b2中每个粒子进行更新操作,获得新的簇态子序列s”b1以及新的簇态子序列s”b2,具体包括:

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中,σz=|1><0|+|0><1|,n=1,2,…,n,n为序列中二进制数的总个数;

若序列中第n个二进制数为1且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作,其中i=|0><0|+|1><1|;

若序列中第n个二进制数为0且序列中第n个二进制数为1,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

若序列中第n个二进制数为0且序列中第n个二进制数为0,则对簇态子序列s'b1中第n个粒子以及簇态子序列s'b2中第n个粒子分别进行操作;

可信接收者charlie将新的簇态子序列s”b1发送给代理签名方bob1;

可信接收者charlie将新的簇态子序列s”b2发送给代理签名方bob2;

(v)代理签名方签名:代理签名方bob1利用获得的密钥对获得的新的簇态子序列s”b1进行测量后,再利用获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

代理签名方bob2利用中获得的密钥对获得的新的簇态子序列s”b2进行测量后,再利用获得的密钥对测量结果加密,获得代理签名方bob1的签名信息

可选地,若密钥为0,则代理签名方bob1对获得的新的簇态子序列s”b1沿z基方向进行测量;否则代理签名方bob1对获得的新的簇态子序列s”b1沿x基方向进行测量;

若密钥为0,则代理签名方bob2对获得的新的簇态子序列s”b2沿z基方向进行测量;否则代理签名方bob2对获得的新的簇态子序列s”b2沿x基方向进行测量。

(vi)可信接收者charlie验证签名是否成功:

初始签名方bob将密钥kb发送给可信接收者charlie;

消息所有者alice将加密盲消息m'以及密钥ka发送给可信接收者charlie;

代理签名方bob1将签名信息发送给可信接收者charlie;

代理签名方bob2将签名信息发送给可信接收者charlie;

可信接收者charlie判断密钥ka、密钥kb、密钥以及密钥是否满足若不满足,则当前通信不安全,签名失败,结束;

否则可信接收者charlie利用密钥ka解密加密盲消息m'后测量,获得测量结果|m>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b1>;

可信接收者charlie利用密钥解密签名信息后测量,获得测量结果|b2>;

可信接收者charlie对获得的簇态子序列s'c进行测量,获得测量结果|c>;

可信接收者charlie对所述的测量结果|m>、测量结果|b1>、测量结果|b2>以及测量结果|c>按照以下规则进行判断:

当测量结果|m>中第j位与测量结果|c>中第j位均为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位相同时,签名成功;

其中j为正整数;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|0>或|1>时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|+>且测量结果|b2>中第j位为|->时,签名成功;

当测量结果|m>中第j位与测量结果|c>中第j位均为|1>、测量结果|b1>中第j位为|->且测量结果|b2>中第j位为|+>时,签名成功;

当测量结果|m>中第j位为|1>、测量结果|c>中第j位为|0>且测量结果|b1>中第j位与测量结果|b2>中第j位不相同时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>且测量结果|b1>中第j位与测量结果|b2>中第j位均为|+>或|->时,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|0>且测量结果|b2>中第j位为|1>,签名成功;

当测量结果|m>中第j位为|0>、测量结果|c>中第j位为|1>、测量结果|b1>中第j位为|1>且测量结果|b2>中第j位为|0>,签名成功;

否则,签名失败,结束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1