当前位置: 首页 > 专利查询>清华大学专利>正文

一种用于格公钥密码的错误采样方法技术

技术编号:21369427 阅读:49 留言:0更新日期:2019-06-15 11:08
本发明专利技术公开了一种用于格公钥密码的错误采样方法,其包括以下步骤:步骤一、接收输入参数k1,k2,表示采样算法的结果需要运行k1次二项分布采样模块和k2次整数均匀采样模块;步骤二、利用二项分布采样模块,通过输入的2比特随机源产生的随机数,输出服从二项分布的整数a;步骤三、重复二项分布采样模块k1次,计算二项分布采样模块k1次输出之和A;步骤四、利用整数均匀采样模块,通过输入的

An Error Sampling Method for Lattice Public Key Cryptography

The invention discloses an error sampling method for lattice public key cryptography, which includes the following steps: step 1, receiving input parameters K1 and k2, indicating that the results of sampling algorithm need to run K1 binomial distribution sampling module and K2 integer uniform sampling module; step 2, using binomial distribution sampling module, output binomial random number generated by input 2 bit random source, and obey binomial distribution sampling module. Step 3: Repeat the binomial distribution sampling module K1 times, calculate the sum of the output of the binomial distribution sampling module K1 times and A; Step 4: Use the integer uniform sampling module, through the input.

【技术实现步骤摘要】
一种用于格公钥密码的错误采样方法
本专利技术涉及密码学
,尤其涉及一种用于格公钥密码的错误采样方法。
技术介绍
随着量子计算技术的快速发展,现有的密码体制的安全性受到了较大威胁。研究可抵抗量子计算攻击的密码算法体制受到了广泛关注,在众多具有潜在抗量子能力的算法设计中,基于格困难问题的密码算法是最具有竞争力的一类算法。在基于格困难问题的密码算法设计中,离散错误采样器是其中一个核心组件。离散错误采样器在输入一组系统参数后,通过运行采样算法输出任意数量的采样样本。这些采样样本的分布以及输出效率由系统参数以及采样算法所决定,当分布能够满足特定的条件时,可保证算法的安全性。因此,离散错误采样器中所采用的采样算法直接关系到格密码体制的效率以及安全性。在现有的基于格困难问题的密码算法设计中,离散错误采样器的采样算法主要可分为三类:1、近似离散高斯分布采样算法;2、二项分布采样算法;3、取整采样算法。值得一提的是,前两类采样算法需要一个随机数生成器作为随机源,在一般情况下,随机数生成器产生随机数的效率(比特/秒)稳定,因此,前两类算法输出样本时的随机数利用率(比特/样本)决定了采样算法的效率。第三类算法与前两类算法的不同之处在于其不需要随机源,而需要一个额外的输入x∈Zq,输出则计算x乘p/q的取整,即因此对于输入x,第三类算法的输出是确定的而非随机的,在随机假设下,其输出分布可认为与[-q/(2p),q/(2p)]上的均匀整数采样相当。衡量离散错误采样器的采样算法输出分布是否安全主要考虑两个指标,其一是输出分布的标准差;其二是输出分布在其特征函数下的等效标准差(以下简记为等效标准差)。标准差和等效标准差分别对应其抵抗搜索攻击和区分攻击的能力,标准差和等效标准差越大意味着安全性越高,由于短板效应,标准差和等效标准差中的较小者主要决定了安全性。对上述三类已知算法采样算法,其效率以及安全性对比如下:效率标准差等效标准差近似离散高斯分布可变可变可变二项分布2k\sqrt{k/2}>\sqrt{k/2}均匀整数分布f×2^f/3^k\sqrt{2k/3}<\sqrt{2k/3}其中,近似离散高斯分布采样方式多种多样,在任意设定的效率下,标准差变化范围极大,但过大的标准差会导致等效标准差过小,使得安全性降低,目前并没有有效的选取规则来实现两者的平衡;二项分布采样中标准差与等效标准差之间的大小关系清晰,可以保证最后的安全性,同时采样效率也可以直接由标准差导出,但缺点是k仅能取整数,采样参数选取范围窄,难以满足密码方案设计的安全性需求;对于均匀整数分布采样,其效率较二项分布随k的不同各有高低,其标准差与同效率下的二项分布相比更大,但等效标准差更小,使得其安全性在在同等条件下的低于二项分布。
技术实现思路
针对上述现有技术中存在的不足之处,本专利技术提供一种用于格公钥密码的错误采样方法,将两种不同的采样算法相互结合,当参数k1与k2选取适当时,可以达到效率和安全性的良好平衡,同时具有较大的灵活性。该用于格公钥密码的错误采样方法包括以下步骤:步骤一、接收输入参数k1,k2,表示采样算法的结果需要运行k1次二项分布采样模块与和k2次整数均匀采样模块;步骤二、利用二项分布采样模块,通过输入的2比特随机源产生的随机数,输出服从二项分布的整数a;步骤三、重复二项分布采样模块k1次,计算二项分布采样模块k1次输出之和A;步骤四、利用整数均匀采样模块,通过输入的比特随机源产生的随机数,输出服从k2次整数均匀采样的结构B;步骤五、输出采样结果S=A+Bmodq。进一步地,步骤四中如果以二进制表示的随机数的数值大于3^k2,则再次输入f比特随机源产生的随机数,直到产生以二进制表示的随机数的数值不大于3^k2的情况,根据该f比特随机源产生的随机数输出服从k2次整数均匀采样的结构B。进一步地,当满足k1不小于k2时,可保证所述错误采样方法的标准差及等效标准差不小于\sqrt{1/2×k1+2/3×k2},从而保障所述错误采样方法的安全性优于同等条件下的二项分布采样。进一步地,当满足f×2^f/3^k2小于2k2时,可保证所述错误采样方法的效率达到2k1+f×2^f/3^k2,从而保障该错误采样方法的效率优于同等条件下的二项分布采样。本专利技术的用于格公钥密码的错误采样方法将两种不同的采样算法相互结合,当参数k1与k2选取适当时,可以达到效率和安全性的良好平衡,同时具有较大的灵活性;在保证安全强度的前提下,效率更高,参数选取范围更广,安全性计算(即标准差与等效标准差中的较小值)更加明确。附图说明图1为本专利技术实施例提供的用于格公钥密码的错误采样方法的流程图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,本实施例提供一种用于格公钥密码的错误采样方法,该错误采样方法包括以下步骤:步骤一、接收输入的参数k1,k2,表示采样算法的结果需要运行k1次二项分布采样模块与k2次整数均匀采样模块;步骤二、利用二项分布采样模块,通过输入的2比特随机源产生的随机数,输出服从二项分布的整数a,例如:随机数输入分别为00/01/10/11时,输出分别为a=-1/0/0/1;步骤三、重复二项分布采样模块k1次,计算二项分布采样模块k1次输出之和A,例如:第i(i=1,…,k1)次调用二项分布采样模块输出为ai,计算A=a1+a2+…+ak1;步骤四、利用整数均匀采样模块,通过输入的比特随机源产生的随机数,如果以二进制表示的随机数的数值大于3^k2,则再次输入f比特随机源产生的随机数,直到产生以二进制表示的随机数的数值不大于3^k2的情况,根据该f比特随机源产生的随机数输出服从k2次整数均匀采样的结构B,例如:将上述随机数表示为k2个三进制的字串,统计其中0与2的个数分别为b0,b2,输出B=b2-b0;步骤五、输出采样结果S=A+Bmodq。在上述错误采样方法的输入选取时,当满足k1不小于k2时,可保证标准差及等效标准差不小于\sqrt{1/2×k1+2/3×k2},从而保障安全性优于同等条件下(k=k1+k2)的二项分布采样;当满足f×2^f/3^k2小于2k2时可保证效率达到2k1+f×2^f/3^k2,从而保障效率优于同等条件下(k=k1+k2)的二项分布采样;此外,通过组合满足上述条件参数的k1和k2,可获得多种满足不同安全性和效率要求的采样算法,从而在效率、安全性及灵活性上均超过同等条件的二项分布采样与均匀整数分布采样。本实施例的用于格公钥密码的错误采样方法将两种不同的采样算法相互结合,当参数k1与k2选取适当时,可以达到效率和安全性的良好平衡,同时具有较大的灵活性;在保证安全强度的前提下,效率更高,参数选取范围更广,安全性计算(即标准差与等效标准差中的较小值)更加明确。此外,需要说明的是,本专利技术实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得本文档来自技高网
...

【技术保护点】
1.一种用于格公钥密码的错误采样方法,其特征在于,所述用于格公钥密码的错误采样方法包括以下步骤:步骤一、接收输入参数k1,k2,表示采样算法的结果需要运行k1次二项分布采样模块和k2次整数均匀采样模块;步骤二、利用二项分布采样模块,通过输入的2比特随机源产生的随机数,输出服从二项分布的整数a;步骤三、重复二项分布采样模块k1次,计算二项分布采样模块k1次输出之和A;步骤四、利用整数均匀采样模块,通过输入的

【技术特征摘要】
1.一种用于格公钥密码的错误采样方法,其特征在于,所述用于格公钥密码的错误采样方法包括以下步骤:步骤一、接收输入参数k1,k2,表示采样算法的结果需要运行k1次二项分布采样模块和k2次整数均匀采样模块;步骤二、利用二项分布采样模块,通过输入的2比特随机源产生的随机数,输出服从二项分布的整数a;步骤三、重复二项分布采样模块k1次,计算二项分布采样模块k1次输出之和A;步骤四、利用整数均匀采样模块,通过输入的比特随机源产生的随机数,输出服从k2次整数均匀采样的结构B;步骤五、输出采样结果S=A+Bmodq。2.如权利要求1所述的用于格公钥密码的错误采样方法,其特征在于,步骤四中如果以二进制表示的随机数的数值大于3^k2...

【专利技术属性】
技术研发人员:王小云郑中翔赵春欢孙悦
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1