一种基于活跃量子游走的多级安全信息完整性认证方法

文档序号:35349823发布日期:2023-09-07 21:48阅读:26来源:国知局
一种基于活跃量子游走的多级安全信息完整性认证方法

本发明具体涉及一种基于活跃量子游走的多级安全信息完整性认证方法,属于网络安全。


背景技术:

1、密码哈希函数(以下简称哈希函数)作为现代密码学中最重要的原语之一用来保证数据在传输过程中的完整性,除此之外它被认为是几乎所有加密方案和许多安全应用的关键组成部分。在经典背景中,哈希函数可以将任意长度的消息映像到固定大小的输出,具有良好的初值敏感性、抗原像攻击性、抗二次原像攻击性以及抗碰撞性。消息认证码(mac)是带密钥的哈希函数,不仅能实现数据的完整性校验,也能实现对数据源的身份验证和标识。消息认证码接受两个输入:一条消息和一个密钥,并返回一个哈希值作为输出。消息认证码要求在不知道密钥的情况下,难以找到两个不同消息具有相同的输出,它可以基于哈希函数或分组密码构造。由于基于哈希函数的消息验证码比基于分组密码的快得多,因此现在消息验证码通常基于哈希函数构造,例如hamc等。

2、一般来说,通常有两种类型的经典哈希函数。一种是具有可安全规约证明的抗碰撞哈希函数,另一种是基于迭代构造压缩函数的专用哈希函数。近年来,针对专用哈希函数中的内部压缩函数以及迭代结构的密码分析攻击已经取得了不小的进展,同时,随着量子计算技术和方法的发展,一部分基于数学困难问题的哈希函数也面临着严峻的挑战。

3、量子计算是一种计算类型,其操作可以利用量子力学的现象,例如叠加,干涉和纠缠。由于量子态的叠加性原理使得量子计算具有很强的并行性,因此量子计算机可以解决传统计算机无法解决的复杂问题。采用量子计算方法设计量子哈希函数是一种新颖的思路。

4、量子哈希函数的相关研究可以分为两类,第一类是基于量子计算方法的经典输入-经典输出量子哈希函数,第二类是基于量子单向函数的经典输入-量子输出量子哈希函数。在当前已有量子哈希函数模型中,一般基于量子单向函数或量子计算方法实现。这类方法的特点以及其中主要存在的问题如下:

5、(1)经典输入-量子输出的量子哈希函数

6、利用量子单向函数可以将经典消息映像到量子态,将量子比较方法swap-test的误差率定义为量子哈希函数的碰撞。经典输入-量子输出的量子单向函数的安全性主要由量子不可克隆原理和holevo界保证。但此类方法存在的主要问题是输出量子态长度与输入消息长度成正比而非定长,其次它并不满足经典哈希函数所要求的确定性,这些性质限制了其作为哈希函数这一原语在量子密码学中应用。

7、(2)经典输入-经典输出的量子哈希函数

8、此类量子哈希函数共有两条研究路线,一条是基于一种通用的量子计算方法——量子游走方法,另一条路线基于玻色采样。

9、基于量子游走的量子哈希函数的研究主要围绕在采用不同底层量子游走方法。这类方案通常只考虑控制不同的硬币算子来构造量子哈希函数,对于其他算子的有效性探索并不充分,另外,大部分基于可控交替量子游走的量子哈希函数无法直接生成任意长度哈希值,比如nist规定的224比特、256比特、384比特、512比特长度的哈希值,缺少灵活性。

10、基于玻色采样的量子哈希函数采用分组粗粒度玻色采样技术的实现抗碰撞性。但是此类量子哈希函数只能通过线性光网络进行高效计算,过高的时间复杂度使其难以在经典计算机上使用。

11、基于上述问题,本发明采用活跃量子游走方法,通过对活跃度参数进行参数化来控制附加的远程移动能力的大小。不同的活跃度系数、环的大小以及初始量子态均可能影响活跃量子游走的性质。该方法较离散时间量子游走方法在每一步的演变中多了一个位移状态,使得在任意长度的环上,通过设置合适的参数就可以避免规律性的现象出现,这一性质使得本发明具有更高的安全性和灵活性。


技术实现思路

1、本发明的目的是针对现有的基于可控交替量子游走的量子哈希函数的不足,提供一种基于活跃量子游走的多级安全信息完整性认证方法,在此基础上构造消息校验码,实现多级安全信息完整性认证方法。本方法通过采用参数化方式控制模型,解决以往方案中缺少的灵活性和难以拓展的问题,实现不同安全级别需求的经典输入-经典输出的量子哈希函数,进而实现多级安全信息完整性认证。

2、本发明采取的技术方案是:一种基于活跃量子游走的多级安全信息完整性认证方法,其中,输入初始密钥以及经典信息,活跃量子游走方法每一步内部操作为根据密钥进行对应的酉变换,受控于消息比特位,通过构造带密钥量子哈希函数实现多级安全信息完整性认证。

3、本发明包含以下步骤:

4、步骤1:带密钥量子哈希函数的初始化

5、本发明多级安全信息完整性认证的参数集合为{n,c,τ1,τ2,a1,a2,a3,l,s},具体参数含义以及设置要求如下:n∈q,q为自然数,表示一维环的大小即环上顶点的个数,环上顶点x编号从0开始,按照字典序编号;c为硬币算子,一般选取grover算子τ1和τ2为活跃量子游走的活跃度系数,应满足表示向下取整函数;a1、a2和a3为初始量子态|ψ>start中每一个硬币态位的振幅系数,其中|·>为量子力学中的狄拉克符号,a1、a2和a3∈(0,1)满足|a1|2+|a2|2+|a3|2=1;参数l为概率扩大系数,s为取模系数,二者取值均为大于0的整数,由哈希函的安全等级决定,同时s与l,还需满足10l>>2s。其中硬币算子c和初始量子态|ψ>start中每一个硬币态位的振幅系数a1、a2和a3作为输入密钥。

6、具体的,带密钥量子哈希函数的初始化具体步骤如下:

7、s1.1安全等级选择

8、选择带密钥量子哈希函数的安全等级,即输出哈希值的二进制长度len,如296比特,256比特等,根据len确定活跃量子游走执行的环的大小n以及合适的取模系数s使得

9、s1.2输入消息预处理

10、给定明文消息m,m为文本或图像等经典信息的ascii码格式。首先将明文消息m按照ascii码格式按顺序排列,将其拼接并转化为二进制串msg。接着进行填充得到填充给定值,填充长度由实际需要的安全等级决定,填充的目的是为了避免短消息生成的哈希值具有规律性。具体的输入消息填充规则如下:如果msg的长度小于则将其不足位数使用0填充。

11、s1.3输入参数初始化

12、根据哈希函数输出的二进制长度len,选择受控交替活跃量子游走执行所需的关键参数。本发明的关键参数为受控交替活跃量子游走方法的两个活跃度系数和硬币算子,这三个参数决定了受控交替活跃量子游走方法的具体演变过程与性质。

13、首先确定受控交替活跃量子游走方法的硬币算子c和活跃度系数τ1和τ2,同时硬币算子和活跃度系数的选择应满足安全性需求以抵抗对哈希函数的伪造攻击。对哈希函数的伪造攻击可以定义为:对于一个哈希函数h(·),给定一个输入消息msg,一个多项式时间的敌手可以构造出另一个输入消息msg'使得

14、h(msg)=h(msg'),即产生哈希函数的碰撞。其中,为了实现足以抵抗伪造攻击带密钥量子哈希函数,受控交替活跃量子游走方法的两个活跃度系数τ1和τ2以及硬币算子c应当满足两个额外的约束条件:

15、(1)当n为偶数时,则选择受控交替活跃量子游走的两个活跃度系数τ1和τ2均为偶数。因为如果选取受控交替活跃量子游走的两个活跃度系数τ1和τ2均为奇数,此时受控交替活跃量子游走将出现周期性现象,即执行奇数步后,游走者在环上编号为奇数的顶点的概率值非零,而编号为偶数的顶点的概率值为零,这一性质将导致哈希值的分布不均匀且易于出现碰撞。因此,当n为偶数时应当选择偶数活跃度系数τ1和τ2。而当n为奇数时,活跃度系数τ1和τ2的奇偶性不变本实。本实施例中的环的大小n=37,因此活跃度系数的选取不受限制。本实施例中,当输入消息比特为0时,受控交替活跃量子游走方法执行活跃度系数τ1=0的活跃量子游走;当输入消息比特为1时,受控交替活跃量子游走方法执行活跃度系数τ2=2的活跃量子游走。

16、(2)活跃量子游走的硬币算子c需要谨慎选择。首先定义量子游走的周期,一个集合其中是自然数的集合,u是一个环上量子游走对应的演变算子,是一个单位矩阵。如果则环上量子游走的周期t被写成否则,对于的情况,环上的量子游走周期为∞,称为非周期量子游走。特别地,在一个环上量子游走的周期性意味着粒子在有限步数之后精确地返回到它的量子初始状态。

17、量子游走的周期性将导致伪造攻击的成功,具体来说,假设有一个环上执行的量子游走方法演变运算符u1(当消息位为1时执行)具有有限周期t。在这种情况下,u1t|ψ>start=i|ψ>start=|ψ>start,因此对于一个二进制消息msg=10…10,任意条nt,n∈{1,2,3…}消息比特串可以被插入到原始消息串中,此时碰撞会以下面的形式出现:因此为了避免伪造攻击,本发明采用在环的尺寸n>3的条件下不具备周期性的grover型矩阵作为硬币算子:

18、

19、最后选择带密钥量子哈希函数的游走者的初始位置态。将环上的各个顶点编码成位置空间中的量子态{0>,|1>,…,|n-1>}。选择初始量子态中位置态和硬币态的系数,初始位置态|x>从{|0>,|1>,…,|n-1}中选择,硬币态为|c>=a1|0>+a2|1>+a3|2>。所述步骤s1.3中,硬币算子c和受控交替活跃量子游走的游走者的初始位置态的每一个硬币态位的振幅系数a1、a2和a3作为带密钥量子哈希函数的密钥,由消息压缩方和消息验证方所共享。

20、步骤2:执行受控交替活跃量子游走方法

21、n长度环上活跃量子游走过程发生在希尔伯特空间中,其中表示位置空间,其正交基由n长度环上每个顶点的按字典序列排列的标签给出,定义为表示三维硬币空间,定义为游走者从初始量子态出发,在环上执行受控交替活跃量子游走方法,根据二进制消息的比特逐位控制每一步游走过程。每一步先抛硬币,游走者根据硬币态决定移动方向,该过程由酉变换描述,其中in为n维单位矩阵,s为移位算符,定义如下:

22、

23、zn为模为n的整数环,s受控于每一位消息比特;c为硬币算子,可以固定也可以受控于每一位消息比特,本步骤最终可获得最终量子态为结束时刻顶点x在硬币态c处的振幅系数。

24、步骤3:povm(对称信息完备)测量得到终止量子态顶点的概率分布

25、使用一组正交的计算基{|0>,|1>,…,|n-1>}对步骤2中的最终量子态|ψ>start的位置态|x>执行povm测量操作,得到量子游走者在环上各个顶点x的概率分布p=(p0,p1,p2,…pn-1),其中为游走者在环上每一个顶点的概率值,x∈zn为游走者在环上每一个顶点x的概率值。

26、步骤4:执行后处理方法计算哈希值

27、将概率分布p=(p0,p1,p2,…pn-1)进行放大,对p中的每一个px执行后处理方法即将各个顶点的概率值乘以10l,向下取整后执行模为2s的取模运算。接着将计算得到的每一个顶点对应的字符串hx按顺序拼接并转换为新的二进制字符串h0‖h1‖h2‖…‖hn-1,该值即为明文的哈希值h。

28、本发明与现有技术相比的优点在于:

29、(1)本发明提出了一种新型的可控交替量子游走方法,通过引入活跃量子游走,实现了一种参数化的受控交替活跃量子游走方法,基于该方法构建的带密钥量子哈希函数受控于可变的活跃度系数而非硬币算子,每次执行量子游走时存在一条附加的连接,这种新型的基于受控交替量子游走的带密钥量子哈希函数可以在任意大小的环上运行而不需要担心周期性概率分布的出现,通过调节参数可以生成满足不同安全等级的哈希值,具有更高的灵活性和实用性。

30、(2)本发明增强了基于量子游走的哈希函数的结构,通过引入更多的控制参数,提升了哈希函数的抗碰撞性、对明文消息的敏感性、扩散与混淆性以及明文消息映像的均匀性,此外,活跃度系数的引入也使哈希函数可以抵抗伪造攻击。同时,本发明采用的新型量子游走方法,基于原有的受控交替量子游走框架实现带密钥量子哈希函数,进而实现多级安全信息完整性认证方法,其安全性原理方面无任何变化,故本发明提出的基于受控交替量子游走的多级安全信息完整性认证方法继承了原有量子哈希函数的安全性,可以采用同样的分析方法评估其性能。

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