跳到内容
BY 4.0许可 开放式访问 发布人:德古意特出版社 2020年6月14日

描述过度扩展的NTRU攻击

  • 加布里埃尔·德米凯利 电子邮件徽标 , 纳迪娅·亨宁格 巴拉克·沙尼

摘要

超拉伸NTRU是具有较大模量的NTRU的变体。最近的格子域和子环攻击破坏了几个方案的建议参数。文献中有许多相互矛盾的说法,在哪种攻击具有最佳性能方面。这些说法通常基于实验而非分析。在本文中,我们认为比较应该集中在攻击中使用的晶格维度上。我们通过分析和实验证明,子环攻击可以找到更短的向量,因此对于相同的问题参数,与子场攻击相比,子环可以使用更小的维数格来成功,并且在格维数固定时,也可以使用较小的模数来成功。

MSC 2010年:初级11T71

1引言

NTRU是一种公钥密码系统[11]它是许多加密协议的基础(例如[9,10,14])并被认为在量子计算机的存在下仍然是安全的。查看调查[23]完整描述NTRU密码系统及其应用。在本文中,我们考虑过度拉伸分圆域中的NTRU变体K(K)= ℚ[x个]/(x个n个+1),带n个2的幂。R(右)= ℤ[x个]/(x个n个+1)是中的整数环K(K),并让R(右)q个= ℤq个[x个]/(x个n个+1)对于某些整数q个这是超多项式n个私钥由两个多项式组成(f),R(右)q个,使用(f)可逆的。公钥小时由定义小时:=(f)–1.系数(f)从给定分布中选择较小的,最常见的是{-1,0,1}上的均匀分布。(一般)NTRU密钥恢复问题是恢复,b条R(右)q个具有“足够小”的系数,以便小时=文学士–1.

NTRU的密码分析.铜匠和沙米尔[5]对NTRU进行了格攻击。晶格尺寸为2n个在本文中,攻击在整个领域都有效K(K)。此攻击的后续变体降低了晶格维数,从而为更大的参数提供了可行的计算。Albrecht等人独立给出了过度拉伸NTRU的首次密码分析[1]Cheon等人[4]. 这些作品存在子场攻击利用中的子字段K(K)。他们的主要结果是,如果q个指数大,维数可以小得多,攻击在多项式时间内运行。

基什内尔和福克[12]呈现了一个子环攻击对抗过度拉伸的NTRU。此攻击允许在选择不同(较大)维度时具有更大的灵活性。此外,他们证明,尽管维度更大,但“全域”攻击的性能并不比子域和子环攻击差。

从实验上看,子环和子域攻击比全域攻击快得多。[12]与中的实验进行比较[1]并得出结论,如果希望将n个q个那么子环攻击比子域攻击“性能更好”。Duong等人的后续工作[8]得出结论,对于不同的子域选择,子域攻击并不比子环攻击差。这些比较主要是实验性的,而不是分析性的。

然而,这些工作直接比较了不同维度的晶格,并观察到攻击在较小的模上成功q个对于给定的学位n个使用大尺寸网格。这种比较的好处值得怀疑,如下所示[12]具有最大尺寸的全场预计将在n个q个在所有这些格子攻击中。此外,子域和子环攻击的目的是降低维数,因此增加维数与攻击构造的目标相反。虽然格维数并不是影响格基归约算法运行时间或近似因子的唯一参数,但在我们所有的实验中,就像之前工作中报道的实验一样,格维数似乎在实际运行时间中起着至关重要的作用。

我们的结果。我们工作的主要目标是解决以前工作中相互冲突的主张。我们形式化地分析了相对性能,重点是晶格维度,并使用实验验证了我们的分析。我们对格维数的关注遵循了我们的主张,即这是用于比较的正确度量。

  1. 我们正式证明了五月的投影技术[17]梅和西尔弗曼[18],这是子环攻击的关键。我们形式化了它的必要条件,并解释了它与NTRU标准假设的关系。此分析填补了先前关于子环攻击的工作中的理论空白。

  2. 我们证明了子环格期望包含比子域格短的向量,这解决了以前工作中不相容的断言n个q个,子环攻击可以使用投影来丢弃更多的方程,并获得较低维度的晶格。因此,对于给定的程度n个在固定格维数的情况下,子环攻击有望在较小的模上成功q个.

主要结果(非正式)。考虑多项式次数的NTRU问题n个.L(左)是的子字段K(K)这样的话[K(K):L(左)] =第页,让n′ =无/无.然后,足够大的n个,我们有以下产品.

  1. 对于晶格尺寸2n个′,子环格预计包含的向量比子域格短,以及解决较小模量的NTRU问题。各向量的欧几里德范数之比约为2第页/(第页+1).如果这些是最短的向量,然后是每种攻击方法的最小可行模之比2作为第页增加.

  2. 对于模量q个,如果我们将晶格维数降低到以下2n个使用投影,与子场攻击相比,子环攻击有望解决BKZ算法的NTRU问题,其网格尺寸更小,块大小更小,通过求所需向量的非零整数倍.

我们的分析并没有表明这些期望向量是对应格中最短的向量。因此,我们的界限可能并不严格。我们提供的实验证据表明,这些界限是保守的。我们的结果更关注格的结构,而不是攻击的实际实现。特别地,我们固定了子场指数并分析了格中短向量长度的渐近性。攻击的实施将尝试根据字段的级别优化子字段的选择。对这种优化进行分析似乎具有挑战性。

2准备工作

我们用以下公式表示元素的环表示R(右),向量表示为Z轴q个n个.欧几里德规范||(f)||是由多项式系数组成的相应向量的范数,即||(f)||. 我们使用[x个]q个表示x个国防部q个.

数字字段是ℚ的有限域扩展。它的度为[K(K):ℚ].数字字段的整数环𝓞K(K)是包含在K(K)。对于任何字段K(K)和子字段L(左)属于K(K),我们定义第页= [K(K):L(左)]作为我们考虑的子字段的索引。如果n个′ = [L(左):ℚ]和n个= [K(K):ℚ],然后第页=n个/n个′.

ζ成为原始人第个团结的根源。第个分圆场K(K)= ℚ(ζ)、和2的幂。这个第个分圆多项式是x个n个+1,其中n个=ϕ()和ϕ是Euler的phi函数,并且K(K)≅ ℚ[x个]/(x个n个+ 1).

K(K)是数字字段,并且L(左)的子字段K(K)考虑一下地图:x个斧头,对于元素K(K)x个L(左).跟踪K(K),表示Tr公司K(K)/L(左)(),是的痕迹.的相对范数K(K),表示N个K(K)/L(左)(),是的行列式。跟踪是加法的,范数是乘法的。特别是,如果K(K)是ℚ的Galois扩展,我们定义G公司=女孩(K(K)/L(左)),然后Tr公司K(K)/L(左)() = ∑σG公司σ()和N个K(K)/L(左)() = ∏σG公司σ(). 预埋件σG公司置换或共轭x个K(K)在规范嵌入中。因此,∀σG公司, ||σ(x个)|| = ||x个||. K(K)是数字字段,并且L(左)索引的子字段第页。当我们枚举嵌入时,我们设置σ1=同上。为了防止混淆,当我们使用规范嵌入时,对系数取范数。

晶格是ℝ的离散加法子群n个。我们将代表n个-维度晶格作为n个×n个由基向量给出行的矩阵b条,然后写𝓛(B类)对于由基矩阵生成的格B类.

3 NTRU攻击特征

我们简要介绍了对NTRU的不同攻击。本文的完整版本中对攻击进行了全面描述[6].

3.1全场进攻

铜匠和沙米尔[5]考虑了以下2n个× 2n个矩阵

(f)单位=n个M(M)小时0q个n个,

哪里n个n个-维数单位矩阵与𝓜小时表示中的乘法R(右)通过公钥小时.由生成的晶格满的我们称之为𝓛(满的),包含矢量((f),) = ((f)0, …,(f)n个–1,0, …,n个–1),因为((f)0, …,(f)n个–1)𝓜小时(修订版q个) ≡ (0, …,n个–1). 向量((f),)具有相对较小的欧几里德范数,很可能是格𝓛中最小非零长度的向量(满的). 因此,NTRU问题可以简化为计算𝓛中的短向量(满的).

铜匠和沙米尔[5]注意,即使在以下情况下,也可以获得有用的信息来恢复密钥((f),)对于相对较小范数的倍数(但大于((f),)). 请参见[5]了解更多详细信息。事实上,人们可以专注于寻找(f),自给定α(f),是的小倍数可以通过计算找到αfh(飞行高度)=α。不同的攻击利用了这一事实,旨在恢复(的小倍数)N个K(K)/L(左)((f)),用于子字段L(左)K(K)可以证明它具有相对较小的欧几里德范数。

在以下描述中,我们使用术语“(f)部分“表示对应于单位矩阵的向量部分,以及”part”表示与乘法相对应的部分小时(或由N个K(K)/L(左)(小时)子场晶格中)。

子场攻击[1,4]这个规范攻击[1]使用由2行生成的晶格n个′ × 2n个'矩阵

单位b条(f)e(电子)d日=n个M(M)N个K(K)/L(左)(小时)0q个n个,

哪里n个'是子字段的度数L(左)M(M)N个K(K)/L(左)(小时)是一个n个′ ×n个'表示乘法的矩阵N个K(K)/L(左)(小时)英寸L(左)。此晶格包含短向量(N个K(K)/L(左)((f)),N个K(K)/L(左)()) = (∏σG公司σ((f)), ∏σG公司σ()).

追踪攻击[4]一个替代𝓜N个K(K)/L(左)(小时)带𝓜Tr公司K(K)/L(左)(小时),表示乘以的矩阵Tr公司K(K)/L(左)(小时)英寸L(左)。我们关注范数攻击,因为当多项式为平衡的(即多项式(f)具有大致相同数量的非零系数)。

子环攻击[12]子环攻击可以分为两个步骤。首先,考虑以下内容(n个′ +n个) × (n个′ +n个)矩阵

单位b条第页n个=n个M(M)小时0q个n个,

哪里M(M)小时是一个n个′ ×n个表示乘法的矩阵小时在里面L(左)。此晶格包含短向量(N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时) = ((f)σG公司∖{Id}σ((f)),σG公司{身份证}σ((f))).

尺寸n个′ +n个大于2n个′,子域攻击格维数。第二步“投影”晶格,即删除M(M)小时,以减小尺寸。我们表示投影向量(N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时). 为了进行严格的分析,应独立选择色谱柱。这种方法通过允许用户选择大于2的维度,提供了比子字段攻击更大的灵活性n个′.

以前的攻击对比.模数的大小q个导致应用程序和安全性之间的紧张关系。许多应用程序,例如完全同态加密,需要一个相对较大的模,但具有非常大模的NTRU可以在多项式时间内被破坏,即使受到Coppersmith-Shamir攻击。因此,分析q个n个当研究基于过度扩展NTRU的密码系统的安全性时。

在[1],实验结果侧重于寻找最小模量q个对于该问题,可以通过对固定的n个使用LLL算法。后续工作[8,12]遵循这种方法并直接与这些实验进行比较,两者都声称取得了“更好的结果”。此外[12,定理9]表明,在某些条件下,尽管维数增加,但在索引较小的子字段(包括全字段)上工作不会产生更差的结果(然而,与中的其他攻击相比,请参阅我们的全字段实验结果表2).

我们认为,格维数对攻击的运行时间有很大影响,应该是攻击比较的中心。这一点在以前的工作中被忽视了,因此不清楚不同的实验是否保持可比性。表1给出了一系列实验性的“改进”q个通过修改尺寸。我们给出了以前论文和我们自己实验的结果。我们使用这些攻击的实现来运行子场和子环攻击,并使用投影技术来降低晶格的维数。除了案例日志(n个)=12,当考虑维度时,这些比较没有结论。有关详细比较,请参阅本文的完整版本[6].

表1

子域攻击和子环攻击之间的实验比较。

攻击日志n个日志q个日志第页尺寸
子字段[1]111654256
子环[12]111154638
子字段[1]1195512
子环[12]1181856
子字段(我们的经验)11812856
子字段[8]117221024
子环[12]121574686
子环/子域(我们的经验)(失败)12157686

4主要成果

我们的主要贡献是对过度拉伸NTRU的各种攻击进行了全面的描述。第4.1节,我们详细分析了投影技术对NTRU晶格的适用性。在充分证明了子环攻击之后,我们将其与第4.2节

4.1投影技术

投影技术的关键是对应于(f)小时=假设是超定的,所以可以放弃一些方程。我们将此假设形式化,将其与NTRU的标准假设联系起来,并得出具体结果。其中一些细节在中缺失[12,第3.2节]。

在下面,让𝓛()是由上述任意攻击矩阵生成的格,𝓛′是维度的投影晶格n个′ +d日,以及的右上象限. The差异𝓓(Γ) [7,13]测量点序列的均匀分布程度Γ= {γ1, …,γn个}区间[0,1]是。正式定义,D类(Γ)=啜饮J[0,1]T型(J,n个)n个|J|,其中上确界覆盖所有子区间J第[0,1]页|J|是的长度J、和T型(J,n个)是点数γ在里面J对于1≤n个.设𝓣为ℤ中的元素序列n个使用点积。𝓣 Δ-均匀分布模q个如果有∈ ℤn个至少有一个坐标互质q个,的差异{[t吨]q个/q个}t吨∈𝓣最多是Δ。我们希望将𝓜的列视为𝓣中的一组元素。但是,此序列不是Δ-均匀分布模q个对于小型Δ:例如,当𝓜=𝓜时小时,小时(f)=不均匀分布。我们定义了以下较弱的概念。

定义1

(弱均匀分布)。单位∈ 𝓞,B类> 0,𝓣是中的元素序列n个.然后𝓣(B类,单位)-弱Δ-均匀分布模q个如果有∉ 𝓞单位这样的话|||| <B类,至少有一个坐标互质q个,序列的差异{[t吨]q个/q个}t吨∈𝓣最多是Δ.

定理1

对于(f),R(右)q个小时=克/英尺.假设𝓜小时(B类,(f))-Δ-均匀分布模q个.𝓛′做一个(n个+d日)-维度格如上所示。那么至少以概率1 – (2B类– 1)n个((2B类+ 1)/q个+Δ)d日𝓜小时,任意向量(x个,) ∈ 𝓛′标准时间. ||(x个,)|| <B类满足(x个, [X小时]q个) = (αf,αg)对一些人来说α∈ 𝓞.结果如下所示(n个′ +d日)-维子环格𝓛′假设被接管𝓞L(左):= 𝓞 ∩L(左).

证明

假设0≠(x个,)∈𝓛′和x个∉ 𝓞(f).让(X小时)表示第个系数[X小时]q个, 0 ≤<n个。假设||(x个,)|| <B类,所以|x个| <B类和|(X小时)| <B类.让P(P)=优先级[|(X小时)| <B类]对一些人来说.根据以下假设小时,P(P)<2B类+1q个+Δ. Thed日n个𝓛′中最右边的列对应于乘以的系数小时,所以Pr[|(X小时)| <B类对于𝓛′]中的所有相应列=P(P)d日< ((2B类+ 1)/q个+Δ)d日,用于d日独立选择的列。有(2个B类– 1)n个不同的可能性x个这样的话|x个| <B类,0≤<n个因此,所选列的概率为𝓜小时存在一个点阵点||(x个,)|| <B类具有x个∉ 𝓞(f)最多为(2B类– 1)n个P(P)d日< (2B类– 1)n个((2B类+ 1)/q个+Δ)d日.□

定理1考虑𝓜小时,因此也M(M)小时,因为这些是[12,17]分别是。然而,它可以推广到上述其他矩阵。一般来说,不知道𝓜小时是(B类,(f))-足够小的弱均匀分布B类.了解小时非常重要,因为它是NTRU安全的基础。一般来说,小时不均匀分布在R(右)q个从一个简单的信息理论论证中可以看出。因此,了解(f)–1对于了解小时银行和什帕林斯基[2]研究了如何“很好地传播”(f)–1也就是说,它们是否“看起来和表现得像随机多项式”。我们注意到小时可能是由于(f)–1,但此属性的格式不正确。

此外,标准的假设是小时=/(f)在中与随机无法区分R(右)q个,请参阅[14]. 我们注意到,这一假设与𝓜的弱均匀分布有很强的关系小时的确,如果后者不是真的,那么可以选择一组小多项式并分析{[t吨]q个/q个}t吨∈𝓜小时把它和随机的区别开来小时因此,在不可区分性假设下,这组多项式必须小到可以忽略不计。

我们用三元进行了实验(f),并验证了[(f)–1]q个公平分配q个还有那个𝓜小时是(B类,(f))-足够小的弱均匀分布B类在本文的其余部分,我们依赖以下假设。

假设1

列集合𝓜小时(B类,(f))-O(运行)(q个–1)-均匀分布模q个对于B类q个.

推论1

(f),R(右)q个小时=克/英尺为NTRU私钥和公钥。𝓛′是n维的投影NTRU晶格+d日,哪里d日≥ (n个日志(2B类+1)+1)/log(q个/(2B类+ 1)).低于假设1,任意向量(x个,) ∈ 𝓛′标准时间. ||(x个,)|| <B类满足(x个, [X小时]q个) = (αf,αg)对一些人来说α∈ 𝓞至少有可能1/2 +O(运行)(q个–1)在选定的列上𝓜小时.结果如下所示(n个′ +d日)-维子环格𝓛′假设被接管𝓞L(左):= 𝓞 ∩L(左).

证明

使用来自的符号定理1,存在格点的概率||(x个,)|| <B类具有x个∉ 𝓞(f)最多是(2B类+1)n个+d日q个d日+O(运行)(q个1)=2(n个+d日)(日志(2B类+1))2d日日志(q个)+O(运行)(q个1).设置d日≥ (n个日志(2B类+1)+1)/log(q个/(2B类+1))给出结果。

设置d日根据中的要求推论1,观察到𝓛′的尺寸为n个+d日≥ (n个日志(q个)+1)/(日志(q个/(2B类+ 1))). 这类似于中的子环晶格[12,定理6]。因此,推论1完成关于子环攻击有效性的缺失细节,以及[12,定理6],给出了子环攻击的完整分析假设1。我们在下面的定理中形式化了这个结果。现在,β表示BKZ中的块大小[21]算法。

定理2

(改编自[12]).(f),R(右)q个小时=/(f)满足NTRU私钥和公钥假设1.让B类= ||v(v)||哪里v(v)= ((f),)在全场,v(v)= (N个K(K)/L(左)((f)),N个K(K)/L(左)())在子字段中v(v)= (N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时)在子环中。然后β日志β=2n个日志q个日志(q个/B类)2一个人可以找到一个倍数αv对于非-α∈ 𝓞至少有可能1/2 +O(运行)(q个–1)在选定的列上𝓜.

4.2比较||N个K(K)/L(左)(g) ||和||N个K(K)/L(左)(f) 小时||

第3节,我们证明了子场格中的一个小向量是该向量(N个K(K)/L(左)((f)),N个K(K)/L(左)()),而在子环晶格中,向量(N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时)很小。这个(f)这些向量的一部分是相同的。因此,我们的兴趣在于部分。此外,我们知道N个K(K)/L(左)()n个′-维向量和N个K(K)/L(左)((f))小时n个-维向量。我们证明这两个元素具有相同的欧几里德范数。然后得出平均系数N个K(K)/L(左)()大于系数N个K(K)/L(左)((f))小时。当我们将后者截断为n个'坐标,其范数小于N个K(K)/L(左)(). 使用关于系数分布的假设N个K(K)/L(左)(),我们量化了大小差异。更准确地说,定理3在没有进一步假设的情况下,表明[K(K):L(左)]=2,系数的平均大小N个K(K)/L(左)()预计将2乘以N个K(K)/L(左)((f))小时.英寸定理4,我们将此结果推广到任何子字段[K(K):L(左)] =第页,并证明系数平均大小的预期比率为第页在下面假设2如下所示。我们的主要结果如下推论2.

权利要求1

(f),是从同一集合中随机选择系数的两个多项式。(f)= (单位1, …,单位)= (w个1, …,w个n个).然后,E[||(f)||2]=E[||||2]当且仅当系数平方的期望满足E类[单位2]=n个E类[w个2].

根据这一结果,我们的目的是表明||N个K(K)/L(左)()||和||N个K(K)/L(左)((f))小时||倾向于1为n个增加。然后,我们可以得出结论,维数为2的子环格n个'应包含比相同维的子场晶格更短的向量。我们使用随机游动来模拟两个多项式乘积的系数。第一种情况是多项式,其系数是从集合{–1,0,1}独立一致地绘制的。一维随机遍历从0开始,每一步都以相等的概率移动+1或-1。,用于= 1, …,n个,用均匀概率表示值为+1或-1的独立随机变量,并设w个0=0和w个n个==1n个.系列{w个n个}定义随机漫游n个步骤的顺序为n个.作为n个增加,系列的分布w个n个接近正态分布。第二种情况是系数由高斯分布得出的多项式:在高斯随机游走中,我们让遵循标准偏差的高斯分布σ平均值为零。之后的预期距离n个步骤的顺序是σn个有关更多背景信息,请参阅[15]. 我们现在考虑子字段的具体情况L(左)K(K)索引2的。

定理3

(f),R(右)q个是两个多项式,其系数是从{–1, 0, 1}.N个K(K)/L(左)() = (单位1, …,单位n个)σ2((f)) = (w个1, …,w个n个).然后电子[单位2|单位≠ 0] = 8n个/9 – 4/9E类[w个2] = 4n个/9.因此,作为n个将非-零系数N个K(K)/L(左)()σ2((f))倾向于2绝对值和预期欧几里德范数平方比E类[||N个K(K)/L(左)()||2]/E类[||σ2((f))||2]趋于1.

证明

我们首先比较N个K(K)/L(左)()对那些σ2((f)). ∈{-1,0,1}一致且独立随机,并考虑多项式=n个–1x个n个–1+n个–2x个n个–2+ … +1x个+0R(右)q个.然后σ2() = –n个–1x个n个–1+n个–2x个n个–2+ … –1x个+0.各系数单位k属于N个K(K)/L(左)() =σ2()是以下各项的总和n个条款。对于k奇数,单位k=0,因为每个术语j个在这个和中出现两次,符号相反。对于k甚至,单位k=2<j个,+j个k国防部n个±j个+k/22+(n个+k)/22,自每学期起j个具有j个出现两次类似的符号。然后,我们有E类[j个j个]=0,E类[2]=E类[4]=2/,和E[(j个)2]=4/9和k即使

E类[单位k2]=E类[(2<j个,+j个k国防部n个±j个+k/22+(n个+k)/22)2]=8n个/94/9

现在,让我们重复一个非常相似的论点σ2((f)),其中σ2((f))是形式的多项式σ2((f)) =b条n个–1x个n个–1+b条n个–2x个n个–2+ … +b条1x个+b条0,使用b条∈{-1,0,1}随机一致独立。同样,每个系数w个k属于σ2((f))是以下各项的总和n个条款。然而,与上面的情况不同,这个和中没有类似的项,我们有E[b条j个]=0和E[(b条j个)2] = 4/9. 如上所述,我们计算

E类[w个k2]=E类[(+j个k国防部n个b条j个)2]=+j个k国防部n个E类[(b条j个)2]=4n个/9.

因此,欧几里德范数的期望平方E类[||N个K(K)/L(左)()||2]=E类[单位2]=E类[单位2]=4n个2/92n个/9和E[||σ2((f))||2]=E[∑w个2] = 4n个2/9.□

我们想把这个结果推广到第页> 2. σ2()和σ2((f))可以表示为随机游动,因此遵循高斯分布,它们可能不独立。

假设2

对于第页> 1,的系数N个K(K)/L(左)(),N个K(K)/L(左)((f))N个K(K)/L(左)((f))小时表现得好像它们是从高斯分布中独立选择的.

这个假设似乎很自然,我们可以证明定理4,概括为定理3到任何第页> 0. 我们通过实验验证了n个增长时,标准的比率趋于1,如定理4,请参阅图1由此,我们直接得出平均系数的比值趋于第页,请参阅权利要求1.

图1实验验证了范数的比率收敛到1。
图1

实验验证了范数比收敛到1。

定理4

(f),R(右)q个小时=/(f)满足NTRU私钥和公钥假设2。对于子字段L(左)K(K),N个K(K)/L(左)() = (单位1, …,单位n个)N个K(K)/L(左)((f))小时= (w个1, …,w个n个).然后,作为n个将非-零系数N个K(K)/L(左)()N个K(K)/L(左)((f))小时倾向于第页绝对值。此外,期望平方欧几里德范数的比率E类[||N个K(K)/L(左)()||2]/E类[||N个K(K)/L(左)((f))小时||2]倾向于1为n个到无穷大.

证明

我们通过对索引的归纳给出了一个证明第页其中基本案例在定理3。假设索引的声明成立第页,我们证明它适用于[K(K):L(左)] = 2第页首先要注意的是,对于田地之塔L(左)E类K(K)我们有N个K(K)/L(左)() =N个E类/L(左)(N个K(K)/E类())对于每个K(K)(请参见[16,定理2.29])。考虑一下这个案例[K(K):E类] =第页, [E类:L(左)]=2,并表示G公司:=N个K(K)/E类()和F类:=N个K(K)/E类((f)). 然后,N个K(K)/L(左)() =N个E类/L(左)(G公司) =G公司σ2(G公司)和N个K(K)/L(左)((f))小时=N个E类/L(左)(F类)小时=F类σ2(F类)小时=G公司σ2(F类),其中σ2女孩(E/L公司)和G’=Fh(飞行高度)=N个K(K)/E类((f))小时.之前的施工案例,即[K(K):E类] =第页,表示每个(非零)系数F类,G公司G公司'遵循高斯分布。低于假设2可以认为系数是独立的。我们现在可以重复以下过程定理3.同时G公司′ ∈K(K),请注意F类,G公司E类所以他们有无/无非零系数。因此,类似于定理3,每个非零系数G公司σ2(G公司)约为2乘以高斯随机游走n个/2第页步长,而每个系数G公司σ2(F类)是随机行走无/无步骤。根据归纳假设G公司预计将大于系数G公司'乘以系数第页足够大的n个系数的结果来自于对随机游动的预期大小的评估,而对规范的要求来自于权利要求1.□

下面的推论比较了相同维的子域格和子环格中的小向量,而不使用子域格中的投影。

推论2

B类子字段= ||(N个K(K)/L(左)((f)),N个K(K)/L(左)())||哪里[K(K):L(左)] =第页=n个/n个′.B类单位b条第页n个第页第页o个j个=||(N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时¯)||投影保持的位置2n个协调。低于假设12,足够大的n个我们希望B类单位b条(f)e(电子)d日2B类单位b条第页n个第页第页o个j个22第页第页+1.此外,假设是这样B类子字段是子域格中最短向量的范数,表示为q个子字段q个子环子域和子域攻击中的模,分别地,BKZ算法可以求解具有固定块大小的NTRUβ.然后q个单位b条(f)e(电子)d日q个单位b条第页n个2第页第页+1.

证明

为了简化符号,我们编写了coeff((f))表示多项式系数的平均大小(f).我们有B类单位b条(f)e(电子)d日2= (n个/第页)(系数(N个K(K)/L(左)((f)))2+系数(N个K(K)/L(左)())2)、和B类单位b条第页n个第页第页o个j个2= (n个/第页)(系数(N个K(K)/L(左)((f)))2+系数(N个K(K)/L(左)((f))小时)2). 我们知道那个coeff(N个K(K)/L(左)((f)))2≈系数(N个K(K)/L(左)())2和来自定理4,我们也知道coeff(N个K(K)/L(左)())2第页系数(N个K(K)/L(左)((f))小时)2.BKZ保证输出以β2n个′/βλ1(𝓛)。第二个结果是将该值限定为q个在两个格子中。

因此,如果我们在两次攻击中采用相同的格维数,则子环格包含较小的向量。因此,可以使用较小的子环攻击来解决NTRU问题q个.如中所述[1,第6节],尚不清楚B类子字段是最短向量的范数(参见[12,定理5])。此外,我们在表2表明q个子字段q个子环与一起成长第页一种可能的解释是(N个K(K)/L(左)((f)),N个K(K)/L(左)((f))小时)是不平衡的(f)部件比部分。因此,如果存在该向量的整数倍,则会减小(f)并增加使向量变得平衡,可行值之间的比率q个s将增加。

表2

通过实验确定最小值q个每次攻击对于固定维,我们将子环攻击与不带投影的子域攻击进行比较,并注意攻击是否成功。在某些情况下,全场进攻只有通过投射才能成功;(384;512)意味着我们在这两个维度上进行了全面的攻击。

参数攻击
日志n个尺寸(完整/子字段)日志第页日志q个完整字段子环子字段
8(384;512)/256122是的;是的是的
8(384;512)/256121是的
9(768;1024)/512134是的;是的是的
9768/512132是的是的
9768/512131
91024/256240是的是的是的
91024/256238是的是的
91024/256237是的
91024/256236是的
102048/512252-是的是的
102048/512250-是的
102048/512249-
114096/51295-是的是的
114096/51292-是的
114096/51291-
114096/2564165-是的是的
114096/2564162-是的
114096/2564161-
124096/5124189-是的是的
124096/5124185-是的
124096/5124184-

如果从中给出的格导出的方程组推论2如果是超定的,我们可以投影并得到更小的格。自从子环格中的部分比子域格中的小,子环攻击系统比子域攻击系统更加确定。

以下推论表明,可以使用投影在子环攻击中丢弃更多方程,从而获得更低的维数。

推论3

符号来自定理2推论2,设置B类:=B类子字段.低于假设12,足够大的n个,我们可以找到倍数αv对于一些非-α∈ 𝓞使得使用具有块大小的BKZβ在格子上𝓛′尺寸n的′ +d日,我们有以下两种情况。如果𝓛′是子场晶格,然后n个+d日n个日志(q个)+1日志(q个/(2B类+1))n个d日β日志β=2n个日志q个(日志(q个/B类))2,如果𝓛′是子环格,然后n个+d日n个日志(q个)+1日志(q个第页/(2第页+2B类+第页)β日志β=2n个日志q个(日志(2第页q个/第页+1B类)2.

4.2.1实验结果

我们在Sage中实现了所有三种攻击,并使用Sage的默认LLL实现对它们进行了实验比较。我们实验中的一个成功是恢复向量v(v)这样的话||v(v)|| <q个3/4如所述[12],我们要么得到大小大致相同的向量q个,或大小的矢量q个这是私钥的短整数倍。首先,我们确定参数(n个,尺寸,第页)并比较最小模量q个使用LLL的三次攻击中的每一次都成功了。详细信息见表2注意,在这些实验中,我们没有将投影技术应用于子场攻击。无投影子场攻击的分析如所示推论2然后,我们通过修复来比较子环和子域攻击(n个,q个,第页)并比较使用LLL成功的最小维度。对于某些晶格,我们使用投影技术,删除最右边的列,直到达到所需的尺寸。差异大于我们的分析预测。详细信息见表3。对子场攻击的投影分析如所示推论3实验是在英特尔至强E5-2699 v3的单核上运行的,运行频率为2.30GHz,内存为128GB。

表3

通过实验确定每次攻击的最小维度.对于固定参数日志n个和日志q个,我们比较了应用于相同的维,在适用的情况下使用投影技术,并注意攻击是否成功。

参数攻击LLL减少时间(s)
日志n个日志q个日志第页尺寸子字段子环子字段子环
8221233是的是的715.4577.6
8221223是的454.5452.3
8221222456.5424.3
970122是的是的132.6121.1
970117是的116.2117
970116108.7108.9
101504124是的是的344.8325.3
101504120是的298.6304.1
101504119290.2286.5
111654254是的是的1533312423.7
111654249是的12708.712072
11165424812086.311722.8

确认

我们感谢石白的一些有益讨论。

本材料由国家科学基金会(批准号:CNS-1513671和CNS-1651344)以及ONR SynCrypt项目提供支持。我们感谢思科捐赠用于我们实验的思科UCS服务器。

工具书类

[1]M.Albrecht、S.Bai和L.Ducas。超拉伸NTRU假设的子域格攻击。密码2016.10.1007/978-3-662-53018-4_6在谷歌学者中搜索

[2]W.D.Banks和I.E.Shparlinski。多项式环中逆的分布。Indagationes数学, 12(3), 2001.10.1016/S0019-3577(01)80012-4在谷歌学者中搜索

[3]D.Boneh和R.Venkatesan。Diffie–Hellman和相关方案中计算密钥最重要位的难度。密码1996.10.1007/3-540-68697-5_11在谷歌学者中搜索

[4]J.H.Cheon、J.Jeong和C.Lee。一种用于NTRU问题的算法,以及无低级零编码的GGH多线性映射的密码分析。LMS计算与数学杂志,19(A):2016年。10.1112/S1461157016000371在谷歌学者中搜索

[5]D.Coppersmith和A.Shamir。对NTRU的格点攻击。1997年Eurocrypt.10.1007/3-540-69053-0_5在谷歌学者中搜索

[6]G.De Micheli、N.Heninger和B.Shani。描述过度扩张的NTRU攻击。电子打印2018/630在谷歌学者中搜索

[7]M.Drmota和R.Tichy。差异和应用.在谷歌学者中搜索

[8]D.H.Duong、M.Yasuda和T.Takagi。针对超伸缩NTRU的子场晶格攻击的参数选择。2017年信息安全.10.1007/978-3-319-69659-1_5在谷歌学者中搜索

[9]S.Garg、C.Gentry和S.Halevi。理想格的候选多线性映射。2013年欧洲密码.10.1007/978-3-642-38348-9_1在谷歌学者中搜索

[10]J.Hoffstein、N.Howgrave-Graham、J.Pipher、J.H.Silverman和W.Whyte。NTRUSign:使用NTRU格的数字签名。CT-RSA 2003年.2007年10月1日-3-540-36563-X_9在谷歌学者中搜索

[11]J.Hoffstein、J.Pipher和J.H.Silverman。NTRU:一种基于环的公钥密码系统。算法数论1998.2007年10月10日/BFb0054868在谷歌学者中搜索

[12]P.Kirchner和P.-A.Fouque。重温对过度拉伸NTRU参数的格型攻击。欧洲密码2017.10.1007/978-3-319-56620-7_1在谷歌学者中搜索

[13]R.Kuipers和H.Niederreiter。序列的均匀分布.在谷歌学者中搜索

[14]A.López-Alt、E.Tromer和V.Vaikuntanathan。基于多密钥全同态加密的云上实时多方计算。STOC’12年.10.1145/2213977.2214086在谷歌学者中搜索

[15]G.F.Lawler和V.Limic。随机行走:现代导论.在谷歌学者中搜索

[16]R.Lidl和H.Niederreiter。有限域剑桥大学出版社,1997年。10.1017/CBO9780511525926在谷歌学者中搜索

[17]A.May,《NTRU的密码分析》,1999年。在谷歌学者中搜索

[18]A.May和J.H.Silverman。卷积模格的降维方法。密码学和格.10.1007/3-540-44670-2_10在谷歌学者中搜索

[19]G.Pataki和M.Tural。《关于约化基中的子格行列式》,2008年。在谷歌学者中搜索

[20]P.塞缪尔。代数数论赫尔曼,1970年。在谷歌学者中搜索

[21]C.P.施诺尔。多项式时间格基约简算法的一个层次。西奥。计算。科学.,53(2-3):201–2241987年8月。10.1016/0304-3975(87)90064-8在谷歌学者中搜索

[22]D.Stehlé和R.Steinfeld。使NTRU与理想格上的最坏情况问题一样安全。2011年欧洲密码.10.1007/978-3-642-20465-4_4在谷歌学者中搜索

[23]R.斯坦菲尔德。NTRU密码系统:有限多项式环的最新发展和新出现的数学问题Walter de Gruyter,2014年。10.1515/9783110317916.179在谷歌学者中搜索

收到:2020-02-05
认可的:2020-02-12
在线发布:2020-06-14

©2020 G.De Micheli版权所有.,由De Gruyter出版

本作品根据知识共享署名4.0国际许可证授权。

2024年9月22日从下载https://www.degruyter.com/document/doi/10.1515/jmc-2015-0055/html
滚动到顶部按钮