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/9和E类[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个+一0∈R(右)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个/9−4/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/9−2n个/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.
定理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个′协调。低于假设1和2,足够大的n个我们希望B类秒单位b条(f)我e(电子)我d日2B类秒单位b条第页我n个克第页第页o个j个2≈2第页第页+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)/256 | 1 | 22 | 是的;不 | 是的 | 是的 |
8 | (384;512)/256 | 1 | 21 | 不 | 是的 | 不 |
|
9 | (768;1024)/512 | 1 | 34 | 是的;不 | 是的 | 是的 |
9 | 768/512 | 1 | 32 | 不 | 是的 | 是的 |
9 | 768/512 | 1 | 31 | 不 | 不 | 不 |
|
9 | 1024/256 | 2 | 40 | 是的 | 是的 | 是的 |
9 | 1024/256 | 2 | 38 | 是的 | 是的 | 不 |
9 | 1024/256 | 2 | 37 | 是的 | 不 | 不 |
9 | 1024/256 | 2 | 36 | 是的 | 不 | 不 |
|
10 | 2048/512 | 2 | 52 | - | 是的 | 是的 |
10 | 2048/512 | 2 | 50 | - | 是的 | 不 |
10 | 2048/512 | 2 | 49 | - | 不 | 不 |
|
11 | 4096/512 | 三 | 95 | - | 是的 | 是的 |
11 | 4096/512 | 三 | 92 | - | 是的 | 不 |
11 | 4096/512 | 三 | 91 | - | 不 | 不 |
|
11 | 4096/256 | 4 | 165 | - | 是的 | 是的 |
11 | 4096/256 | 4 | 162 | - | 是的 | 不 |
11 | 4096/256 | 4 | 161 | - | 不 | 不 |
|
12 | 4096/512 | 4 | 189 | - | 是的 | 是的 |
12 | 4096/512 | 4 | 185 | - | 是的 | 不 |
12 | 4096/512 | 4 | 184 | - | 不 | 不 |
如果从中给出的格导出的方程组推论2如果是超定的,我们可以投影并得到更小的格。自从克子环格中的部分比子域格中的小,子环攻击系统比子域攻击系统更加确定。
以下推论表明,可以使用投影在子环攻击中丢弃更多方程,从而获得更低的维数。
推论3
符号来自定理2和推论2,设置B类:=B类子字段.低于假设1和2,足够大的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个 | 日志第页 | 尺寸 | 子字段 | 子环 | 子字段 | 子环 |
---|
8 | 22 | 1 | 233 | 是的 | 是的 | 715.4 | 577.6 |
8 | 22 | 1 | 223 | 不 | 是的 | 454.5 | 452.3 |
8 | 22 | 1 | 222 | 不 | 不 | 456.5 | 424.3 |
|
9 | 70 | 三 | 122 | 是的 | 是的 | 132.6 | 121.1 |
9 | 70 | 三 | 117 | 不 | 是的 | 116.2 | 117 |
9 | 70 | 三 | 116 | 不 | 不 | 108.7 | 108.9 |
|
10 | 150 | 4 | 124 | 是的 | 是的 | 344.8 | 325.3 |
10 | 150 | 4 | 120 | 不 | 是的 | 298.6 | 304.1 |
10 | 150 | 4 | 119 | 不 | 不 | 290.2 | 286.5 |
|
11 | 165 | 4 | 254 | 是的 | 是的 | 15333 | 12423.7 |
11 | 165 | 4 | 249 | 不 | 是的 | 12708.7 | 12072 |
11 | 165 | 4 | 248 | 不 | 不 | 12086.3 | 11722.8 |