格密码--数学基础--04格的最小距离、最短向量问题(SVP)及其变体和闵可夫斯基定理
04格的最小距离、最短向量问题(SVP)及其变体和闵可夫斯基定理
04格的最小距离、最短向量问题(SVP)及其变体和闵可夫斯基定理
一、格的最小距离(λ(Λ)\boldsymbol{\lambda(\Lambda)}λ(Λ))
格Λ\LambdaΛ中两不同格点的最小欧几里得距离,等价于“最短非零格向量的长度”
λ(Λ)=inf{∥v∥∣v∈Λ∖{0}}\lambda(\Lambda) = \inf\left\{ \|\boldsymbol{v}\| \mid \boldsymbol{v} \in \Lambda \setminus \{\boldsymbol{0}\} \right\}λ(Λ)=inf{∥v∥∣v∈Λ∖{0}} (格的离散性使得inf = min)
性质:由格的加法封闭性(若x,y∈Λ\boldsymbol{x},\boldsymbol{y} \in \Lambdax,y∈Λ,则x−y∈Λ\boldsymbol{x}-\boldsymbol{y} \in \Lambdax−y∈Λ)保证两种定义等价。
注:
-
默认范数:欧氏范数∥⋅∥2\|\cdot\|_2∥⋅∥2(除非特别说明)。
-
inf vs min
-
inf(下确界):集合SSS的下确界是其所有下界中的最大值 ,记作 infSSS。下确界不一定属于集合SSS
-
min(最小值):若集合SSS存在一个元素aaa,使得对于所有x∈Sx\in Sx∈S,都有a≤xa\leq xa≤x,则aaa是SSS的最小值,记作minSSS。要求aaa必须属于集合SSS
例子:inf(60,80)=60;min[60,80]=80
-
二、最短向量问题(SVP)及其变体
均为密码学中的核心困难问题,基于λ(Λ)\lambda(\Lambda)λ(Λ)的计算与判定,按γ≥1\gamma \geq 1γ≥1(近似因子)分类如下:
| 问题类型 | 目标描述 |
|---|---|
| GapSVPγ_\gammaγ(决策版) | 输入基BBB和d>0d>0d>0,判定“是否存在非零格点v\boldsymbol{v}v满足∣v∣<d|\boldsymbol{v}| < d∣v∣<d”(是)或“所有非零格点∣v∣>γd|\boldsymbol{v}| > \gamma d∣v∣>γd”(否)。 |
| EstSVPγ_\gammaγ(计算版) | 输入基BBB,输出d∈[λ(Λ),γλ(Λ))d \in [\lambda(\Lambda), \gamma \lambda(\Lambda))d∈[λ(Λ),γλ(Λ))(估计最短向量长度范围)。 |
| SVPγ_\gammaγ(搜索版) | 输入基BBB,找到非零格点v\boldsymbol{v}v满足0<∣v∣≤γλ(Λ)0 < |\boldsymbol{v}| \leq \gamma \lambda(\Lambda)0<∣v∣≤γλ(Λ)(找到近似最短向量)。 |
| SIVPγ_\gammaγ | 找到nnn个线性无关格点ui\boldsymbol{u}_iui,满足∣ui∣≤γ⋅λn|\boldsymbol{u}_i| \leq \gamma \cdot \lambda_n∣ui∣≤γ⋅λn(λn\lambda_nλn为第nnn最小逐次极小)。 |
三、闵可夫斯基定理(Minkowski’s Theorem)
作用
估计与基无关的λ(Λ)\lambda(\Lambda)λ(Λ)上界(仅依赖格的维度nnn和行列式det(Λ)\det(\Lambda)det(Λ))。 此前依赖基选择的上界mini∥bi∥\min_i \|\boldsymbol{b}_i\|mini∥bi∥。
定义
- 赫米特因子(Hermite Factor):γ(Λ)=(λ(Λ)det(Λ)1/n)2\gamma(\Lambda) = \left( \frac{\lambda(\Lambda)}{\det(\Lambda)^{1/n}} \right)^2γ(Λ)=(det(Λ)1/nλ(Λ))2,具有缩放不变性(与格的基无关)。
λ(Λ)\lambda(\Lambda)λ(Λ) :表示格中最短距离
det(Λ\LambdaΛ):格的基本域体积
n是格的维度
- 赫米特常数(Hermite Constant):γn=supΛγ(Λ)\gamma_n = \sup_{\Lambda} \gamma(\Lambda)γn=supΛγ(Λ),在所有可能的 nnn 维格 Λ\LambdaΛ 中,取赫米特因子 γ(Λ)\gamma(\Lambda)γ(Λ) 的最大值(严格来说是上确界),这个最大值就是赫米特常数 γn\gamma_nγn。
γn\gamma_nγn:第 nnn 维的赫米特常数(一个仅依赖于维度 nnn 的常数) sup\supsup:上确界(supremum),即所有可能取值中的最小上界(最大值或极限最大值)
Λ\LambdaΛ:nnn 维格(任意 nnn 维格点集)
γ(Λ)\gamma(\Lambda)γ(Λ):格 Λ\LambdaΛ 的赫米特因子
定理与推论
-
Blichfeldt原理
若集合S⊆span(B)S \subseteq \text{span}(B)S⊆span(B)满足vol(S)>det(Λ)\text{vol}(S) > \det(\Lambda)vol(S)>det(Λ),则存在z1,z2∈S\boldsymbol{z}_1, \boldsymbol{z}_2 \in Sz1,z2∈S使得z1−z2∈Λ∖{0}\boldsymbol{z}_1 - \boldsymbol{z}_2 \in \Lambda \setminus \{\boldsymbol{0}\}z1−z2∈Λ∖{0}(集合中存在两个点的差是非零格点)。

-
闵可夫斯基凸体定理
若Λ⊂Rn\Lambda \subset \mathbb{R}^nΛ⊂Rn是满维格,S⊂RnS \subset \mathbb{R}^nS⊂Rn为对称凸集且vol(S)>2ndet(Λ)\text{vol}(S) > 2^n \det(\Lambda)vol(S)>2ndet(Λ),则SSS必包含非零格点。

证明思路:通过S/2={x∣2x∈S}S/2 = \{\boldsymbol{x} \mid 2\boldsymbol{x} \in S\}S/2={x∣2x∈S}转化为Blichfeldt原理的条件,结合对称凸性推导。
令S/2=x:2x∈SS/2={x:2x\in S}S/2=x:2x∈S,根据体积的性质,对集合进行缩放变换时,体积与缩放因子的n次幂成正比。我们假设缩放因子是 12\frac{1}{2}21,所以只需要证明vol(SSS/2)=12n{\frac{1}{2^n}}2n1vol(SSS)>det(Λ\LambdaΛ)。由Blichfeldt原理(若集合SSS⊆span(B)\subseteq \text{span}(\boldsymbol{B})⊆span(B)满足vol(SSS)>det(Λ\LambdaΛ),则存在z1−z2∈Λz_1-z_2\in \Lambdaz1−z2∈Λ\{0}。所以可得z1,z2∈S/2z_1,z_2\in S/2z1,z2∈S/2使得z1−z2∈Λz_1-z_2\in \Lambdaz1−z2∈Λ\{0}。
而因为z1,z2∈S/2z_1,z_2\in S/2z1,z2∈S/2可得2z1∈S,2z2∈S2z_1\in S,2z_2\in S2z1∈S,2z2∈S根据对称凸集的性质(字面意思,终点的连线仍然在集合内部)
因此:2tz1z_1z1-2(1-t)z2z_2z2∈\in∈SSS(死去的高中记忆开始攻击我,这个表示两个向量终点连线线段的任意向量)所以:z1−z2∈Sz_1-z_2\in Sz1−z2∈S (t=12\frac{1}{2}21)成立
-
范数上界推论
- 推论1(ℓ∞\ell_\inftyℓ∞-范数上界):存在非零格点x∈Λ∖{0}\boldsymbol{x} \in \Lambda \setminus \{\boldsymbol{0}\}x∈Λ∖{0},满足∥x∥∞≤det(Λ)1/n\|\boldsymbol{x}\|_\infty \leq \det(\Lambda)^{1/n}∥x∥∞≤det(Λ)1/n。

假设反命题:所有非零格点满足 ∣x∣∞>det(Λ)1/n|x|_{\infty} > \det(\Lambda)^{1/n}∣x∣∞>det(Λ)1/n,取最小范数:令 l=min∣x∣∞>det(Λ)1/nl = \min |x|_{\infty} > \det(\Lambda)^{1/n}l=min∣x∣∞>det(Λ)1/n,构造立方体:C={x:∣x∣∞<l}C = \{x : |x|_{\infty} < l\}C={x:∣x∣∞<l},体积:vol(C)=(2l)n>2ndet(Λ)\operatorname{vol}(C) = (2l)^n > 2^n \det(\Lambda)vol(C)=(2l)n>2ndet(Λ)
应用凸体定理:CCC 为中心对称凸体且体积 >2ndet(Λ)>2^n \det(\Lambda)>2ndet(Λ)
⇒ CCC 包含非零格点 yyy
导出矛盾:,y∈Cy \in Cy∈C ⇒ ∣y∣∞<l|y|_{\infty} < l∣y∣∞<l
但 lll 是最小 ℓ∞\ell_\inftyℓ∞ 范数 ⇒ 矛盾
-
推论2(ℓ2\ell_2ℓ2-范数上界,闵可夫斯基主定理):(说明格中短向量必然存在)
存在非零格点x∈Λ∖{0}\boldsymbol{x} \in \Lambda \setminus \{\boldsymbol{0}\}x∈Λ∖{0},满足:∥x∥2≤n⋅det(Λ)1/n\|\boldsymbol{x}\|_2 \leq \sqrt{n} \cdot \det(\Lambda)^{1/n}∥x∥2≤n⋅det(Λ)1/n 即λ(Λ)≤n⋅det(Λ)1/n\lambda(\Lambda)\leq \sqrt{n} \cdot \det(\Lambda)^{1/n}λ(Λ)≤n⋅det(Λ)1/n
(由∥x∥2≤n∥x∥∞\|\boldsymbol{x}\|_2 \leq \sqrt{n} \|\boldsymbol{x}\|_\infty∥x∥2≤n∥x∥∞结合推论2推导)。
4.欧几里得范数和无穷范数之间的关系
对任意向量 x=(x1,x2,…,xn)∈Rn \boldsymbol{x} = (x_1, x_2, \ldots, x_n) \in \mathbb{R}^n x=(x1,x2,…,xn)∈Rn,有:
∥x∥2=x12+x22+⋯+xn2≤n⋅max{x12,x22,…,xn2}=n⋅∥x∥∞ \|\boldsymbol{x}\|_2 = \sqrt{x_1^2 + x_2^2 + \cdots + x_n^2} \leq \sqrt{n \cdot \max\{x_1^2, x_2^2, \ldots, x_n^2\}} = \sqrt{n} \cdot \|\boldsymbol{x}\|_\infty ∥x∥2=x12+x22+⋯+xn2≤n⋅max{x12,x22,…,xn2}=n⋅∥x∥∞
直观理解:
- ℓ2\ell_2ℓ2 范数:各分量平方和的平方根。
- ℓ∞\ell_\inftyℓ∞ 范数:分量的绝对值的最大值(即 ∥x∥∞=maxi∣xi∣\|\boldsymbol{x}\|_\infty = \max_i |x_i|∥x∥∞=maxi∣xi∣)。
- 由于每个分量的平方 xi2≤∥x∥∞2x_i^2 \leq \|\boldsymbol{x}\|_\infty^2xi2≤∥x∥∞2,因此平方和最多为 n⋅∥x∥∞2n\cdot \|\boldsymbol{x}\|_\infty^2n⋅∥x∥∞2,开方后得到不等式。
该不等式表明==ℓ2\ell_2ℓ2 范数被 ℓ∞\ell_\inftyℓ∞ 范数控制==,且最坏情况下相差 n\sqrt{n}n 倍,在格理论中,此关系常用于分析最短向量问题(SVP)的近似算法。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)