一种基于bell基的两方量子信息对比方法与流程

文档序号:15566975发布日期:2018-09-29 03:34阅读:226来源:国知局

本发明涉及信息安全技术领域,具体地说是一种基于bell基的两方量子信息对比方法。



背景技术:

安全多方计算是分布式密码学的理论基础,也是分布式计算研究的一个基本问题。自姚启智院士上世纪80年代提出安全多方计算的概念以来,该领域已经成为现代密码学的重要研究内容之一。随着量子算法的诞生,基于计算复杂性的经典密码的安全性受到了威胁。作为安全多方量子计算的重要分支之一的量子双方计算也引起了众多学者的关注。许多具有特殊用途的安全两方量子计算协议出现了。

安全两方量子信息对比协议是一种具有特殊应用功能的方案。利用量子力学的理论设计一种方案,使得参与的双方在不公布秘密信息的前提下进行对比,对比结果选择公开或保密。常见的方案大多属于半诚实模型,即存在一个半诚实的第三方(thirdparty,tp)协助协议完成。半诚实是指tp忠实地执行协议,并记录所有的中间计算结果,但他可能会尝试从记录中窃取信息。但是,现有的基于半诚实的第三方协议存在一些缺陷,首先在实际情况下,tp会通过各种攻击方式尝试窃听参与者的秘密。其次,tp的存在给协议的实现增加了困难,降低了效率。



技术实现要素:

本发明的目的就是提供一种基于bell基的两方量子信息对比方法,该方法可在没有tp存在的情况下实现对双方的量子秘密信息进行对比,安全可靠且效率较高。

本发明的目的是这样实现的:一种基于bell基的两方量子信息对比方法,包括如下步骤:

a、alice具有秘密信息x,bob具有秘密信息y;alice和bob两者约定一个哈希函数h,并分别计算各自秘密信息的哈希值,得到

b、alice和bob将各自秘密信息的哈希值分为个组,前组中每组m个元素,最后一组中k个元素,m≤n,k≤m;

c、根据第一组中的哈希值,比对alice和bob的秘密信息;

根据第一组中的m个哈希值,比对alice和bob的秘密信息,具体包括如下步骤:

c1、alice(bob)制备m个bell态,每个bell态为alice(bob)记录其所制备的m个bell态为sa(sb);将sa(sb)中每个bell态的首个粒子组成的序列记为将sa(sb)中每个bell态的剩余粒子组成的序列记为

c2、alice(bob)制备单光子态作为诱骗态插入到中形成新的序列并将新序列发送给bob(alice);单光子态为

c3、当确认bob(alice)接收到序列后,alice(bob)告知对方诱骗态的位置和测量基;bob(alice)从序列中提取诱骗态并将测量结果发送至alice(bob),alice(bob)比较测量结果和初始状态,并计算错误率;若错误率低于设定的门限值,则表明不存在攻击者,执行步骤c4;否则,表明存在攻击者,返回步骤c1重新开始;

c4、bob(alice)将接收到的粒子序列中的诱骗态去除,得到序列并根据其第一组中的m个哈希值,对粒子序列中的m个粒子分别执行幺正变换;若则对相应的粒子执行z变换,z=|1><0|+|0><1|;若则对相应的粒子执行i变换,i=|0><0|+|1><1|;是bob秘密信息哈希值第一组中的第i个哈希值,是alice秘密信息哈希值第一组中的第i个哈希值,i=1、2、……、m;执行完幺正变换后得到序列

c5、bob(alice)制备单光子态作为诱骗态插入到序列中形成新的序列并将序列发送给alice(bob);单光子态为

c6、当确认alice(bob)接收到序列后,bob(alice)告知对方诱骗态的位置和测量基;alice(bob)从序列中提取诱骗态并将测量结果发送至bob(alice),bob(alice)比较测量结果和初始状态,并计算错误率;若错误率低于设定的门限值,则表明不存在攻击者,执行步骤c7;否则,则表明存在攻击者,返回步骤c1重新开始;

c7、alice(bob)将接收到的粒子序列中的诱骗态去除,得到序列并根据其第一组中的m个哈希值,对序列中的m个粒子分别执行幺正变换;若则对相应的粒子执行z变换,z=|1><0|+|0><1|;若则对相应的粒子执行i变换,i=|0><0|+|1><1|;是alice秘密信息哈希值第一组中的第i个哈希值,是bob秘密信息哈希值第一组中的第i个哈希值,i=1、2、……、m;执行完幺正变换后得到序列

c8、alice(bob)根据序列和序列得到态sa′(sb′);alice(bob)将态sa′(sb′)与态sa(sb)进行比较,若sa′=sa(sb′=sb),则认为根据第一组中的哈希值比对结果相等,执行步骤d;否则则认为根据第一组中的哈希值比对结果不相等,执行步骤e;

d、按照步骤c中方法,依序根据第二组、第三组、……、第组中的哈希值,分别比对alice和bob的秘密信息;若在根据任一组中哈希值比对结果不相等时,直接执行步骤e;若根据所有组中哈希值比对结果均相等时,则得出alice和bob两者的秘密信息相等的结果;

e、得出alice和bob两者的秘密信息不相等的结果。

本发明在对alice的秘密信息x和bob的秘密信息y进行对比时,首先使两者共享一个哈希函数h,并分别计算各自秘密信息的哈希值;将各自秘密信息的哈希值进行分组;之后根据每一组中的哈希值,比对alice和bob的秘密信息;若根据任一组中的哈希值比对两者的秘密信息不等,则认为alice和bob的秘密信息不等;若根据所有组中的哈希值比对两者的秘密信息均相等,则认为alice和bob的秘密信息相等。比对过程中通过插入诱骗态,可侦测到是否存在攻击者,使得比对过程安全可靠。而且,本发明是一种高效的量子秘密信息对比方法,其运算主要是光粒子的测量和旋转操作,使得计算的效率较高。

本发明是一种基于量子物理原理设计的两方量子信息对比方法,其安全性能主要基于量子态的纠缠性,能抵御外部攻击和不诚实的内部攻击。另外,本发明只含有量子物理中常见的bell态和单光子态,这些运算在实验上和商业应用中已经实现,所以该发明可在现有的量子设备上来运行。

具体实施方式

本发明所提供的基于bell基的两方量子信息对比方法,其具体实现方法如下:

假设alice拥有一个秘密信息x,bob拥有一个秘密信息y。alice和bob两方按照如下步骤进行秘密信息的对比:

第一步:alice和bob两方约定一个——映射的哈希函数h:{0,1}n→{0,1}n;alice计算其秘密信息x的哈希值,得到bob计算其秘密信息y的哈希值,得到

第二步:alice将其秘密信息x的哈希值h(x)分为个组,前组中每组m个元素,最后一组中k个元素,m≤n,k≤m;alice秘密信息x的哈希值分组情况如下:

bob也将其秘密信息y的哈希值h(y)分为个组,前组中每组m个元素,最后一组中k个元素,m≤n,k≤m;bob秘密信息y的哈希值分组情况如下:

第三步:根据alice和bob第一组中的哈希值,比对alice和bob的秘密信息。

本步骤具体如下:

①、alice(bob)制备m个bell态作为初始态,每个bell态为alice(bob)记录其所制备的初始态为sa(sb);将sa(sb)中每个bell态的首个粒子组成的序列记为将sa(sb)中每个bell态中除首个粒子外剩余粒子组成的序列记为

②、alice(bob)制备单光子态作为诱骗态随机插入到中形成新的序列并将新序列发送给bob(alice)。单光子态是从中随机选择的。

③、当确认bob(alice)接收到序列后,alice(bob)通过经典信道告知bob(alice)步骤②中所插入的诱骗态的位置和测量基。bob(alice)从序列中提取诱骗态得到序列bob(alice)用正确的测量基去测量相应的诱骗光子,并将测量结果通过经典信道发送至alice(bob)。alice(bob)比较测量结果和诱骗光子的初始状态,并计算错误率;若错误率低于设定的门限值,则表明没有攻击者的存在,执行步骤④;否则,则表明有攻击者的存在,此时终止秘密信息的比较,返回步骤①重新开始。

④、bob(alice)根据其第一组y1(x1)中的m个哈希值,对粒子序列中的m个粒子分别执行幺正变换;若则对序列中的第i个粒子执行z变换,z=|1><0|+|0><1|;若则对序列中的第i个粒子执行i变换,i=|0><0|+|1><1|;是bob秘密信息y哈希值第一组y1中的第i个哈希值,是alice秘密信息x哈希值第一组x1中的第i个哈希值,i=1、2、……、m;对粒子序列执行完幺正变换后得到序列

⑤、bob(alice)制备单光子态作为诱骗态随机插入到序列中形成新的序列并将序列发送给alice(bob)。单光子态是从中随机选择的。

⑥、当确认alice(bob)接收到序列后,bob(alice)通过经典信道告知alice(bob)步骤⑤中所插入的诱骗态的位置和测量基。alice(bob)从序列中提取诱骗态得到序列alice(bob)用正确的测量基去测量相应的诱骗光子,并将测量结果通过经典信道发送至bob(alice)。bob(alice)比较测量结果和诱骗光子的初始状态,并计算错误率;若错误率低于设定的门限值,则表明没有攻击者的存在,执行步骤⑦;否则,则表明有攻击者的存在,此时终止秘密信息的比较,返回步骤①重新开始。

⑦、alice(bob)根据其第一组x1(y1)中的m个哈希值,对序列中的m个粒子分别执行幺正变换;若则对序列中的第i个粒子执行z变换,z=|1><0|+|0><1|;若则对序列中的第i个粒子执行i变换,i=|0><0|+|1><1|;是alice秘密信息x哈希值第一组x1中的第i个哈希值,是bob秘密信息y哈希值第一组y1中的第i个哈希值,i=1、2、……、m;对粒子序列执行完幺正变换后得到序列

⑧、alice(bob)根据序列和序列得到态sa′(sb′);alice(bob)将态sa′(sb′)与态sa(sb)进行bell态测量,若sa′=sa(sb′=sb),则认为根据第一组中的哈希值比对秘密信息的结果是相等的,之后继续根据第二组中的哈希值对秘密信息进行比对,即执行下面的第四步;若sa′≠sa(sb′≠sb),则认为根据第一组中的哈希值比对秘密信息的结果是不相等的,此时不用再进行后面的比对,直接给出alice和bob两方秘密信息不相等的结果,即直接执行第五步。

第四步:按照第三步中方法,根据第二组中的哈希值,比对alice和bob的秘密信息;若根据第二组中的哈希值,比对alice和bob的秘密信息是相等的,则接着根据第三组中的哈希值,比对alice和bob的秘密信息;以此类推。若在根据任一组中哈希值比对结果不相等时,直接执行第五步;若根据所有组中哈希值比对结果均相等时,则得出alice和bob两者的秘密信息相等的结果。

需要说明的是,由于秘密信息哈希值的最后一组中存在k个元素,因此,在根据最后一组中哈希值比较两方秘密信息时,在步骤①中制备bell态作为初始态时,应是制备k个bell态作为初始态。

第五步:得出alice和bob两者秘密信息不相等的结果。

下面以一个具体例子对本发明中的方法进行详细说明。

假设alice拥有一个秘密信息101,bob拥有一个秘密信息100。alice和bob两方按照如下步骤进行秘密信息的对比:

第一步:alice和bob两方约定一个基于进制转换的哈希函数;alice计算其秘密信息101的哈希值,得到h(101)=011;bob计算其秘密信息100的哈希值,得到h(100)=010。

第二步:alice和bob都将其秘密信息的哈希值分为一个组,每组中三个元素。

第三步:根据alice和bob第一组(也是唯一一组)中的哈希值,比对alice和bob的秘密信息,具体如下:

①、alice随机制备三个bell态作为初始态,alice所制备的三个bell态分别为|α+>、|β+>、|α+>,并记录为sa。bob随机制备三个bell态作为初始态,bob所制备的三个bell态分别为|β+>、|β+>、|β+>,并记录为sb。其中,alice将sa中每个bell态的首个粒子组成的序列记为将sa中每个bell态中除首个粒子外剩余粒子组成的序列记为bob将sb中每个bell态的首个粒子组成的序列记为将sb中每个bell态中除首个粒子外剩余粒子组成的序列记为

②、alice随机选择三个单光子态插入到序列中形成一个新的粒子序列在新粒子序列中的位置分别为第1位、第2位和第4位;alice将新粒子序列发送给bob。bob随机选择三个单光子态插入到序列中形成一个新的粒子序列在新粒子序列中的位置分别为第2位、第4位和第5位;bob将新粒子序列发送给alice。

③、当alice和bob分别通过经典信道宣布已经收到对方发送的粒子序列后,根据对方公布的诱骗态的位置和测量基,恢复出没有插入诱骗态的粒子序列。alice和bob分别侦测是否有攻击者的存在;如果没有攻击者,则继续执行下一步骤;否则返回到步骤①重新开始。

④、alice根据其第一组中的三个哈希值对其接收到的恢复后(即去除了诱骗态)的粒子序列中的粒子依次执行i,z,z运算;bob根据其第一组中的三个哈希值对恢复后(即去除了诱骗态)的粒子序列中的粒子依次执行i,z,i运算。z=|1><0|+|0><1|,i=|0><0|+|1><1|。

⑤、alice和bob再次分别随机选择三个单光子诱骗态插入到量子粒子序列中,并发送给对方。

⑥、当alice和bob分别通过经典信道宣布已经收到对方发送的粒子序列后,根据对方公布的诱骗态的位置和测量基,恢复出没有插入诱骗态的粒子序列。alice和bob分别侦测是否有攻击者的存在;如果没有攻击者,则继续执行下一步骤;否则返回到步骤①重新开始。

⑦、alice再次对收到的粒子序列执行i,z,z幺正变换得到|α+>,|β+>,|β+>。经过测量并跟原始记录对比发现不相等,于是alice宣布两方秘密信息对比结果不相等。另外bob对收到的粒子序列执行i,z,i幺正变换得到|β+>,|β+>,|α+>。经过测量并跟原始记录对比发现不相等,于是bob宣布两方秘密信息对比结果不相等。

本说明书未详细描述的内容属于本专业技术人员公知的现有技术。

以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

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