格密码–SIS问题,ISIS问题及nf-ISIS问题
格密码–SIS问题,ISIS问题及nf-ISIS问题
0.数学符号汇总
数学符号 | 含义 | 备注 |
---|---|---|
Zq\mathbb{Z}_{q}Zq | 模qqq的整数集合,即{0,1,2,...,q−1}\{0,1,2,...,q-1\}{0,1,2,...,q−1} | 用于定义SIS、ISIS问题中矩阵和向量的元素取值范围,是基础整数环 |
A∈Zqn×mA \in \mathbb{Z}_{q}^{n \times m}A∈Zqn×m | AAA是一个nnn行mmm列的矩阵,其元素属于Zq\mathbb{Z}_{q}Zq | 是SIS、ISIS等问题的核心输入矩阵,在SIS中用于寻找满足Az=0mod qAz=0\mod qAz=0modq的短向量zzz,在ISIS中用于寻找满足Az=bmod qAz=b\mod qAz=bmodq的短向量zzz |
z∈Zmz \in \mathbb{Z}^{m}z∈Zm | zzz是一个mmm维整数列向量 | 所有向量均为列向量;在SIS中是满足Az=0mod qAz=0\mod qAz=0modq的非零短向量,在ISIS中是满足Az=bmod qAz=b\mod qAz=bmodq的短向量 |
Az=0mod qAz=0 \mod qAz=0modq | 矩阵AAA与向量zzz的乘积模qqq等于0 | 齐次短整数问题(SIS)的核心方程,要求z≠0z \neq 0z=0且z∈[−B,B]mz \in [-B,B]^mz∈[−B,B]m(B≪q/2B \ll q/2B≪q/2) |
[−B,B]m[-B,B]^m[−B,B]m | mmm维向量的每个分量均在−B-B−B到BBB之间 | 用于限制SIS和ISIS问题中解向量zzz的范围,确保解的“短”特性,是“短整数解”中“短”的体现 |
∈RS\in_R S∈RS | 从集合SSS中均匀随机(且独立)地选取元素 | 如A∈RZqn×mA \in_R \mathbb{Z}_{q}^{n \times m}A∈RZqn×m表示AAA随机选自该矩阵集合,用于SIS、ISIS等问题中随机参数的选取 |
(B+1)m>qn(B+1)^m > q^n(B+1)m>qn | 鸽巢原理下SIS解存在的条件 | 当满足该条件时,存在z1≠z2∈[−B/2,B/2]mz_1 \neq z_2 \in [-B/2,B/2]^mz1=z2∈[−B/2,B/2]m使得Az1=Az2mod qAz_1=Az_2\mod qAz1=Az2modq,此时z=z1−z2z=z_1-z_2z=z1−z2是SIS解 |
HA:{0,1}m→ZqnH_A: \{0,1\}^m \to \mathbb{Z}_{q}^{n}HA:{0,1}m→Zqn | 基于SIS的哈希函数,定义为HA(z)=Azmod qH_A(z)=Az \mod qHA(z)=Azmodq | 是抗碰撞哈希函数,因m>nlogqm > n\log qm>nlogq具有压缩性;其抗碰撞性等价于SIS问题的难解性(B=1B=1B=1时) |
ISIS(n,m,q,B)ISIS(n,m,q,B)ISIS(n,m,q,B) | 非齐次短整数问题:给定A∈RZqn×mA \in_R \mathbb{Z}_{q}^{n \times m}A∈RZqn×m和b∈RZqnb \in_R \mathbb{Z}_{q}^{n}b∈RZqn,找z∈[−B,B]mz \in [-B,B]^mz∈[−B,B]m使得Az=bmod qAz=b\mod qAz=bmodq | 与SIS等价,可通过双向归约相互转化;是SIS的非齐次形式 |
[A∣In][A \mid I_n][A∣In] | 由矩阵AAA和nnn阶单位矩阵InI_nIn拼接而成的矩阵 | 用于标准形式ISIS(nf-ISIS)的定义,nf-ISISnf\text{-}ISISnf-ISIS与ISISISISISIS等价,可相互转化 |
z1≠z2z_1 \neq z_2z1=z2且Az1=Az2mod qAz_1=Az_2 \mod qAz1=Az2modq | 哈希函数碰撞的定义:两个不同输入z1,z2z_1,z_2z1,z2的哈希值相等 | 此时z=z1−z2z=z_1-z_2z=z1−z2是SIS解(B=1B=1B=1),是哈希函数抗碰撞性的基础 |
Zqn\mathbb{Z}_{q}^{n}Zqn | nnn维向量空间,元素属于Zq\mathbb{Z}_qZq | 是哈希函数HAH_AHA的输出范围,也是ISIS中bbb的取值空间 |
InI_nIn | nnn阶单位矩阵 | 在nf-ISISnf\text{-}ISISnf-ISIS中与AAA拼接构成输入矩阵,用于构造标准形式的ISIS问题 |
nf-ISIS(n,m,q,B)nf\text{-}ISIS(n,m,q,B)nf-ISIS(n,m,q,B) | 标准形式ISIS问题:给定[A∣In][A \mid I_n][A∣In]和bbb,找z∈[−B,B]m+nz \in [-B,B]^{m+n}z∈[−B,B]m+n使得[A∣In]z=bmod q[A \mid I_n]z = b\mod q[A∣In]z=bmodq | 与ISISISISISIS等价,通过双向归约可相互转化 |
1.SIS 定义:
1996年SIS问题被Ajtai引入。
SIS(n,m,q,B):给定随机矩阵A∈RZqn×m\boldsymbol{A} \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m(nnn 行 mmm 列,元素属于模 qqq 整数环),目标是找到z∈Zm\boldsymbol{z}\in \mathbb{Z}^mz∈Zm使得Az=0(modq)。其中z≠0;z∈[−B,B]m且B<<q/2Az=0(mod q)。其中\boldsymbol{z}\neq 0;\boldsymbol{z} \in [-B,B]^m且B<<q/2Az=0(modq)。其中z=0;z∈[−B,B]m且B<<q/2
(a11a12…a1ma21a22…a2m⋮⋮⋱⋮an1an2…anm)⏟n×m 矩阵 A(z1z2⋮zm)⏟m×1 向量 z ≡ (00⋮0)⏟n×1 零向量(modq)
\underbrace{
\begin{pmatrix}
a_{11} & a_{12} & \dots & a_{1m} \\
a_{21} & a_{22} & \dots & a_{2m} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \dots & a_{nm}
\end{pmatrix}
}_{n \times m \text{ 矩阵 } \boldsymbol{A}}
\underbrace{
\begin{pmatrix} z_1 \\ z_2 \\ \vdots \\ z_m \end{pmatrix}
}_{m \times 1 \text{ 向量 } \boldsymbol{z}}
\; \equiv \;
\underbrace{
\begin{pmatrix} 0 \\ 0 \\ \vdots \\ 0 \end{pmatrix}
}_{n \times 1 \text{ 零向量}}
\pmod{q}
n×m 矩阵 Aa11a21⋮an1a12a22⋮an2……⋱…a1ma2m⋮anmm×1 向量 zz1z2⋮zm≡n×1 零向量00⋮0(modq)
Az≡0(modq)\boldsymbol{A}\boldsymbol{z} \equiv \boldsymbol{0} \pmod{q}Az≡0(modq) 要求 每个分量的点积都模 qqq 等于 0,因此展开为 nnn 个线性同余方程,其中有m个变量:
{a11z1+a12z2+⋯+a1mzm≡0(modq)a21z1+a22z2+⋯+a2mzm≡0(modq)⋮an1z1+an2z2+⋯+anmzm≡0(modq) \begin{cases} a_{11}z_1 + a_{12}z_2 + \dots + a_{1m}z_m \equiv 0 \pmod{q} \\ a_{21}z_1 + a_{22}z_2 + \dots + a_{2m}z_m \equiv 0 \pmod{q} \\ \vdots \\ a_{n1}z_1 + a_{n2}z_2 + \dots + a_{nm}z_m \equiv 0 \pmod{q} \end{cases} ⎩⎨⎧a11z1+a12z2+⋯+a1mzm≡0(modq)a21z1+a22z2+⋯+a2mzm≡0(modq)⋮an1z1+an2z2+⋯+anmzm≡0(modq)
2.SIS问题解的存在性:
Az≡0(modq)\boldsymbol{A}\boldsymbol{z} \equiv \boldsymbol{0} \pmod{q}Az≡0(modq) 要求 每个分量的点积都模 qqq 等于 0,因此展开为 nnn 个线性同余方程,其中有m个变量:
{a11z1+a12z2+⋯+a1mzm≡0(modq)a21z1+a22z2+⋯+a2mzm≡0(modq)⋮an1z1+an2z2+⋯+anmzm≡0(modq) \begin{cases} a_{11}z_1 + a_{12}z_2 + \dots + a_{1m}z_m \equiv 0 \pmod{q} \\ a_{21}z_1 + a_{22}z_2 + \dots + a_{2m}z_m \equiv 0 \pmod{q} \\ \vdots \\ a_{n1}z_1 + a_{n2}z_2 + \dots + a_{nm}z_m \equiv 0 \pmod{q} \end{cases} ⎩⎨⎧a11z1+a12z2+⋯+a1mzm≡0(modq)a21z1+a22z2+⋯+a2mzm≡0(modq)⋮an1z1+an2z2+⋯+anmzm≡0(modq)
1. 当 n≥m\boldsymbol{n \geq m}n≥m 时(方程组个数大于变量数),SIS 无解
SIS 是齐次线性方程 Az≡0(modq)Az \equiv 0 \pmod{q}Az≡0(modq),解空间维度为 m−rank(A)m - \text{rank}(A)m−rank(A)。
若 n≥mn \geq mn≥m,随机矩阵 A∈RZqn×mA \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m 通常满列秩(秩为 mmm),故解空间维度为 000,仅存在 零解 z=0z=0z=0。
零解不满足 SIS 中“z≠0z \neq 0z=0” 的要求,因此无有效解。后续分析默认 n<mn < mn<m(变量数 m>m >m> 方程数 nnn,解空间非零)。
2. 当n<mn<mn<m时:由鸽巢原理当 (B+1)m>qn\boldsymbol{(B+1)^m > q^n}(B+1)m>qn 时,解必然存在
考虑向量 z1,z2∈[−B/2,B/2]m\boldsymbol{z_1}, \boldsymbol{z_2} \in [-B/2, B/2]^mz1,z2∈[−B/2,B/2]m(每个分量范围更小,确保后续差向量 z\boldsymbol{z}z 满足 [−B,B]m[-B, B]^m[−B,B]m)。
该集合的元素个数为 (B+1)m\boldsymbol{(B+1)^m}(B+1)m(每个分量有 B+1B+1B+1 个整数,mmm 维则是 (B+1)m(B+1)^m(B+1)m 种组合)。
AzAzAz 的结果属于 Zqn\mathbb{Z}_q^nZqn,最多有 qn\boldsymbol{q^n}qn 种不同取值。
若 (B+1)m>qn(B+1)^m > q^n(B+1)m>qn,则至少存在 两个不同的 z1≠z2z_1 \neq z_2z1=z2,使得 Az1≡Az2(modq)Az_1 \equiv Az_2 \pmod{q}Az1≡Az2(modq)。
构造解:令 z=z1−z2z = z_1 - z_2z=z1−z2,则:
Az=A(z1−z2)≡Az1−Az2≡0(modq),Az = A(z_1 - z_2) \equiv Az_1 - Az_2 \equiv 0 \pmod{q},Az=A(z1−z2)≡Az1−Az2≡0(modq),
且 z≠0z \neq 0z=0(因 z1≠z2z_1 \neq z_2z1=z2),z∈[−B,B]mz \in [-B, B]^mz∈[−B,B]m(分量差的范围为 [−B,B][-B, B][−B,B]),故 zzz 是 SIS 的解。
1. 解的非唯一性
若 zzz 是 SIS 解(Az≡0(modq)Az \equiv 0 \pmod{q}Az≡0(modq),z≠0z \neq 0z=0,z∈[−B,B]mz \in [-B, B]^mz∈[−B,B]m),则 −z-z−z 也是解:
A(−z)≡−Az≡0(modq),A(-z) \equiv -Az \equiv 0 \pmod{q},A(−z)≡−Az≡0(modq),
且 −z≠0-z \neq 0−z=0,−z∈[−B,B]m-z \in [-B, B]^m−z∈[−B,B]m(分量符号反转,范围不变)。
结论:SIS 的解不唯一,存在对称解(如 zzz 和 −z-z−z)。
2.SIS解存在所需要参数条件
从 (B+1)m>qn(B+1)^m > q^n(B+1)m>qn 两边取对数(对数函数单调递增,不改变不等号方向):
m⋅log(B+1)>n⋅logq ⟹ m>nlogqlog(B+1).m \cdot \log(B+1) > n \cdot \log q \implies \boldsymbol{m > \frac{n \log q}{\log(B+1)}}.m⋅log(B+1)>n⋅logq⟹m>log(B+1)nlogq.
结论:当 mmm 满足上述下界时,必然存在 SIS 解(由鸽巢原理保证)。
3.SIS实例
3.基于SIS构造抗碰撞的Hash函数
-
哈希函数的定义:
随机选取矩阵 A∈RZqn×m\boldsymbol{A} \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m,满足 m>nlogqm > n \log qm>nlogq(参数关系保证压缩性和碰撞归约)。定义
HA:{0,1}m→Zqn,HA(z)=Az(modq) H_A: \{0,1\}^m \to \mathbb{Z}_q^n, \quad H_A(\boldsymbol{z}) = \boldsymbol{A}\boldsymbol{z} \pmod{q} HA:{0,1}m→Zqn,HA(z)=Az(modq)
其中,z∈{0,1}m\boldsymbol{z} \in \{0,1\}^mz∈{0,1}m 是二进制输入向量(每个分量 zi∈{0,1}z_i \in \{0,1\}zi∈{0,1})。 -
性质
-
单向性:
由SIS问题本身保证 -
压缩性:
输入空间大小:{0,1}m\{0,1\}^m{0,1}m 包含 2m2^m2m 个不同输入。
输出空间大小:Zqn\mathbb{Z}_q^nZqn 包含 qnq^nqn 个不同输出。
由 m>nlogqm > n \log qm>nlogq,两边取指数(以2为底,或自然对数,核心是单调性):
2m>2nlogq=qn(因 2logq=q) 2^m > 2^{n \log q} = q^n \quad (\text{因 } 2^{\log q} = q) 2m>2nlogq=qn(因 2logq=q)
即 输入空间远大于输出空间,因此 HAH_AHA 是压缩函数(多对一映射)。 -
抗碰撞性:(规约到SIS问题求解)
若存在 z1,z2∈{0,1}m\boldsymbol{z}_1, \boldsymbol{z}_2 \in \{0,1\}^mz1,z2∈{0,1}m,满足 z1≠z2\boldsymbol{z}_1 \neq \boldsymbol{z}_2z1=z2 但 HA(z1)=HA(z2)H_A(\boldsymbol{z}_1) = H_A(\boldsymbol{z}_2)HA(z1)=HA(z2),则称哈希函数存在碰撞。若找到碰撞 (z1,z2)(\boldsymbol{z}_1, \boldsymbol{z}_2)(z1,z2),则:
Az1≡Az2(modq) ⟹ A(z1−z2)≡0(modq) \boldsymbol{A}\boldsymbol{z}_1 \equiv \boldsymbol{A}\boldsymbol{z}_2 \pmod{q} \implies \boldsymbol{A}(\boldsymbol{z}_1 - \boldsymbol{z}_2) \equiv \boldsymbol{0} \pmod{q} Az1≡Az2(modq)⟹A(z1−z2)≡0(modq)
令 z=z1−z2\boldsymbol{z} = \boldsymbol{z}_1 - \boldsymbol{z}_2z=z1−z2,则:- z≠0\boldsymbol{z} \neq \boldsymbol{0}z=0(因 z1≠z2\boldsymbol{z}_1 \neq \boldsymbol{z}_2z1=z2);
- z\boldsymbol{z}z 的分量为 {−1,0,1}\{-1, 0, 1\}{−1,0,1}(因 z1,z2\boldsymbol{z}_1, \boldsymbol{z}_2z1,z2 是0/1向量,差的可能值为 1−0=11-0=11−0=1、0−1=−10-1=-10−1=−1、0−0=00-0=00−0=0),即 z∈[−1,1]m\boldsymbol{z} \in [-1, 1]^mz∈[−1,1]m(对应SIS问题中 B=1B=1B=1)。
因此,z\boldsymbol{z}z 是 SIS(n,m,q,1)(n, m, q, 1)(n,m,q,1)问题的解。
-
4.ISIS 定义
给定随机矩阵A∈RZqn×m\boldsymbol{A} \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m(nnn 行 mmm 列,元素属于模 qqq 整数环)和随机向量 b∈RZqn\boldsymbol{b} \in_R \mathbb{Z}_q^nb∈RZqn(nnn 维列向量,元素属于 Zq\mathbb{Z}_qZq), 目标是找到 短向量 z∈Zm\boldsymbol{z} \in \mathbb{Z}^mz∈Zm(mmm 维列向量,整数分量),满足:
Az≡b(modq),且 z∈[−B,B]m(B≪q/2) \boldsymbol{A}\boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}, \quad \text{且 } \boldsymbol{z} \in [-B, B]^m \quad (B \ll q/2) Az≡b(modq),且 z∈[−B,B]m(B≪q/2)
5.SIS 和 ISIS 等价性
1.SIS≤\leq≤ISIS
证明 SIS 问题可归约到 ISIS 问题(若能解决 ISIS,则能解决 SIS)证明步骤:
-
输入构造
给定SIS实例:矩阵A∈Zqn×mA \in \mathbb{Z}_q^{n \times m}A∈Zqn×m。将AAA拆分为A=[A′∣−b′]A = [A' \mid -\boldsymbol{b'}]A=[A′∣−b′],其中:
A′∈Zqn×(m−1)A' \in \mathbb{Z}_q^{n \times (m-1)}A′∈Zqn×(m−1)(前m−1m-1m−1列);b′∈Zqn\boldsymbol{b'} \in \mathbb{Z}_q^nb′∈Zqn(最后一列的负值)
-
转化为对应的ISIS
该SIS实例对应的ISIS实例为(A′,b′)(A', \boldsymbol{b'})(A′,b′),得到解z′∈[−B,B]m−1z' \in [-B, B]^{m-1}z′∈[−B,B]m−1满足:
A′z′≡b′(modq)A'\boldsymbol{z'} \equiv \boldsymbol{b'} \pmod{q}A′z′≡b′(modq) -
构造SIS解
令z=[z′1]∈Zmz = \begin{bmatrix} z' \\ 1 \end{bmatrix} \in \mathbb{Z}^mz=[z′1]∈Zm 验证满足SIS条件:
[A′∣−b′]⏟A[z′1]=A′z′−b′≡b′−b′≡0(modq) \underbrace{[A' \mid -\boldsymbol{b'}]}_{A}\begin{bmatrix} z' \\ 1 \end{bmatrix} = A'\boldsymbol{z'} - \boldsymbol{b'} \equiv \boldsymbol{b'} - \boldsymbol{b'} \equiv 0 \pmod{q} A[A′∣−b′][z′1]=A′z′−b′≡b′−b′≡0(modq)
非零性:z≠0\boldsymbol{z} \neq 0z=0(因第mmm位为1)范数约束:∥z∥∞≤B\|\boldsymbol{z}\|_\infty \leq B∥z∥∞≤B(因∥z′∥∞≤B\|\boldsymbol{z'}\|_\infty \leq B∥z′∥∞≤B且∣1∣≤B|1| \leq B∣1∣≤B)
结论:
通过ISIS解z′\boldsymbol{z'}z′高效构造了SIS解z\boldsymbol{z}z,故SIS≤ISIS\text{SIS} \leq \text{ISIS}SIS≤ISIS.
2.ISIS≤\leq≤SIS
证明 ISIS 问题可归约到 SIS 问题(若能解决 SIS,则能解决 ISIS)
证明步骤:
-
输入构造
给定ISIS实例:矩阵A∈Zqn×mA \in \mathbb{Z}_q^{n \times m}A∈Zqn×m和目标向量b∈Zqn\boldsymbol{b} \in \mathbb{Z}_q^nb∈Zqn。随机选取:
-
插入位置j∈R{1,2,…,m+1}j \in_R \{1, 2, \dots, m+1\}j∈R{1,2,…,m+1}
-
非零常数c∈R[−B,B]∖{0}c \in_R [-B, B] \setminus \{0\}c∈R[−B,B]∖{0}
-
-
转化为SIS
生成新矩阵A′∈Zqn×(m+1)A' \in \mathbb{Z}_q^{n \times (m+1)}A′∈Zqn×(m+1):
- 在AAA的第jjj列插入向量−c−1b(modq)-c^{-1}\boldsymbol{b} \pmod{q}−c−1b(modq)
- A 对SIS实例A′A'A′求解,得到解z′∈[−B,B]m+1\boldsymbol{z'} \in [-B, B]^{m+1}z′∈[−B,B]m+1满足:A′z′\boldsymbol{A^{'}}\boldsymbol{z^{'}}A′z′=0 ( mod q )
-
构造ISIS解
关键条件:若数zj′=cz'_j = czj′=c(第jjj位等于选取的ccc)概率12B\frac{1}{2B}2B1,则:
A′z′=[A:1:j−1∣−c−1b∣Aj:m]⏟A′[z1′⋮zj′⋮zm+1′]≡0(modq) A'z' = \underbrace{[A_{:1:j-1} \mid -c^{-1}\boldsymbol{b} \mid A_{j:m}]}_{A'}\begin{bmatrix} z'_1 \\ \vdots \\ z'_j \\ \vdots \\ z'_{m+1} \end{bmatrix} \equiv 0 \pmod{q} A′z′=A′[A:1:j−1∣−c−1b∣Aj:m]z1′⋮zj′⋮zm+1′≡0(modq)
展开得
A[z1′⋮zj−1′zj+1′⋮zm+1′]−(c−1b)⋅c⏟b≡Az−b≡0(modq)\boldsymbol{A}\begin{bmatrix} z'_1 \\ \vdots \\ z'_{j-1} \\ z'_{j+1} \\ \vdots \\ z'_{m+1} \end{bmatrix} - \underbrace{(c^{-1}\boldsymbol{b}) \cdot c}_{b} \equiv Az - \boldsymbol{b} \equiv 0 \pmod{q}Az1′⋮zj−1′zj+1′⋮zm+1′−b(c−1b)⋅c≡Az−b≡0(modq)删除z′\boldsymbol{z'}z′的第jjj位,得到z∈[−B,B]m\boldsymbol{z} \in [-B, B]^mz∈[−B,B]m满足Az≡b(modq)A\boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}Az≡b(modq).
结论:
通过SIS解z′\boldsymbol{z'}z′以==概率12B\frac{1}{2B}2B1==构造ISIS解z\boldsymbol{z}z,故ISIS≤SIS\text{ISIS} \leq \text{SIS}ISIS≤SIS.
5. 标准形式ISIS(nf-ISIS)
1.定义:
给定随机矩阵A∈RZqn×m\boldsymbol{A} \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m(nnn 行 mmm 列,元素属于模 qqq 整数环)和随机向量 b∈RZqn\boldsymbol{b} \in_R \mathbb{Z}_q^nb∈RZqn(nnn 维列向量,元素属于 Zq\mathbb{Z}_qZq),目标是寻找向量 z∈Zm+n\mathbf{z} \in \mathbb{Z}^{m+n}z∈Zm+n 满足:
[A∣In]z≡b(modq),z∈[−B,B]m+n.
\begin{bmatrix} A & | & I_n \end{bmatrix} \mathbf{z} \equiv \mathbf{b} \pmod{q}, \quad \mathbf{z} \in [-B, B]^{m+n}.
[A∣In]z≡b(modq),z∈[−B,B]m+n.
2.nf-ISIS 与 ISIS 的等价性
nf-ISIS(n,m,q,B)与ISIS(n,m+n,q,B)是等价的,可以相互规约
SIS实例的变换:
将 CCC 与 AAA 左乘后横向拼接,得到 n×(m+n)n \times (m+n)n×(m+n) 矩阵:
M=[CA∣C]
M = \begin{bmatrix} CA & \mid & C \end{bmatrix}
M=[CA∣C]
(左块 CACACA 是 n×mn \times mn×m 矩阵,右块 CCC 是 n×nn \times nn×n 矩阵,拼接后总列数 m+nm+nm+n。)
对 b\boldsymbol{b}b 左乘 CCC,得到:
c=Cb∈Zqn
\boldsymbol{c} = C\boldsymbol{b} \in \mathbb{Z}_q^n
c=Cb∈Zqn
方向1:nf-ISIS的解 → ISIS的解
设 z∈[−B,B]m+n\boldsymbol{z} \in [-B,B]^{m+n}z∈[−B,B]m+n 是 nf-ISIS 的解,即:
[A∣In]z≡b(modq)
\begin{bmatrix} A & \mid & I_n \end{bmatrix} \boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}
[A∣In]z≡b(modq)
两边左乘可逆矩阵 CCC(可逆性保证乘法可还原):
C⋅[A∣In]z≡Cb(modq)
C \cdot \begin{bmatrix} A & \mid & I_n \end{bmatrix} \boldsymbol{z} \equiv C\boldsymbol{b} \pmod{q}
C⋅[A∣In]z≡Cb(modq)
根据分块矩阵乘法规则(CCC 与 AAA 相乘为 CACACA,CCC 与 InI_nIn 相乘为 CCC):
[CA∣C]z≡Cb(modq)
\begin{bmatrix} CA & \mid & C \end{bmatrix} \boldsymbol{z} \equiv C\boldsymbol{b} \pmod{q}
[CA∣C]z≡Cb(modq)
这正是 ISIS实例 (M,c)(M, \boldsymbol{c})(M,c) 的方程,故 z\boldsymbol{z}z 是 ISIS 的解。
方向2:ISIS的解 → nf-ISIS的解
设 z∈[−B,B]m+n\boldsymbol{z} \in [-B,B]^{m+n}z∈[−B,B]m+n 是 ISIS 的解,即:
[CA∣C]z≡Cb(modq)
\begin{bmatrix} CA & \mid & C \end{bmatrix} \boldsymbol{z} \equiv C\boldsymbol{b} \pmod{q}
[CA∣C]z≡Cb(modq)
两边左乘 C−1C^{-1}C−1(CCC 可逆,故 C−1C^{-1}C−1 存在):
C−1⋅[CA∣C]z≡C−1⋅Cb(modq)
C^{-1} \cdot \begin{bmatrix} CA & \mid & C \end{bmatrix} \boldsymbol{z} \equiv C^{-1} \cdot C\boldsymbol{b} \pmod{q}
C−1⋅[CA∣C]z≡C−1⋅Cb(modq)
分块矩阵乘法展开:
[C−1CA∣C−1C]z≡b(modq) ⟹ [A∣In]z≡b(modq)
\begin{bmatrix} C^{-1}CA & \mid & C^{-1}C \end{bmatrix} \boldsymbol{z} \equiv \boldsymbol{b} \pmod{q} \implies \begin{bmatrix} A & \mid & I_n \end{bmatrix} \boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}
[C−1CA∣C−1C]z≡b(modq)⟹[A∣In]z≡b(modq)
这正是 nf-ISIS实例 (A,b)(A, \boldsymbol{b})(A,b) 的方程,故 z\boldsymbol{z}z 是 nf-ISIS 的解。
6SIS VS ISIS VS nf-ISIS
对比维度 | SIS(齐次短整数解问题) | ISIS(非齐次短整数解问题) | nf-ISIS(标准形式非齐次短整数解问题) |
---|---|---|---|
核心定义 | 给定随机矩阵 A∈RZqn×mA \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m,寻找非零短向量 z\boldsymbol{z}z 满足方程 | 给定随机矩阵 A∈RZqn×mA \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m 和向量 b∈RZqn\boldsymbol{b} \in_R \mathbb{Z}_q^nb∈RZqn,寻找短向量 z\boldsymbol{z}z 满足方程 | 给定随机矩阵 A∈RZqn×mA \in_R \mathbb{Z}_q^{n \times m}A∈RZqn×m 和向量 b∈RZqn\boldsymbol{b} \in_R \mathbb{Z}_q^nb∈RZqn,寻找短向量 z\boldsymbol{z}z 满足方程 |
核心方程 | Az≡0(modq)A\boldsymbol{z} \equiv 0 \pmod{q}Az≡0(modq) | Az≡b(modq)A\boldsymbol{z} \equiv\boldsymbol{b} \pmod{q}Az≡b(modq) | [A∣In]z≡b(modq)\begin{bmatrix} A & \mid & I_n \end{bmatrix}\boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}[A∣In]z≡b(modq) |
解的约束 | 向量维度:z∈Zm\boldsymbol{z} \in \mathbb{Z}^mz∈Zm 范围:z∈[−B,B]m\boldsymbol{z} \in [-B, B]^mz∈[−B,B]m (B≪q/2B \ll q/2B≪q/2) 非零性 | 向量维度:z∈Zm\boldsymbol{z} \in \mathbb{Z}^mz∈Zm 范围:z∈[−B,B]m\boldsymbol{z} \in [-B, B]^mz∈[−B,B]m (B≪q/2B \ll q/2B≪q/2) | 向量维度:z∈Zm+n\boldsymbol{z} \in \mathbb{Z}^{m+n}z∈Zm+n 范围:z∈[−B,B]m+n\boldsymbol{z}\in [-B, B]^{m+n}z∈[−B,B]m+n (B≪q/2B \ll q/2B≪q/2) |
与其他问题关系 | 与 ISIS 等价(双向归约) | 与 SIS、nf-ISIS 等价(双向归约) | 与 ISIS 等价(双向归约,通过可逆矩阵变换保持解空间) |
典型应用 | 构造抗碰撞哈希函数(如 HA(z)=Az(modq)H_A(\boldsymbol{z}) = A\boldsymbol{z} \pmod{q}HA(z)=Az(modq)) | 公钥加密、身份认证等非齐次场景 | 基于身份的加密(IBE)、高效密码实现(结构化矩阵简化运算 |
SIS:理论基石,最弱假设
ISIS:通用性强,适用多种场景
nf-ISIS:计算高效,硬件友好(结构化矩阵加速运算)
SIS→泛化ISIS→结构化nf-ISIS\text{SIS} \xrightarrow{\text{泛化}} \text{ISIS} \xrightarrow{\text{结构化}} \text{nf-ISIS}SIS泛化ISIS结构化nf-ISIS
ISIS 是 SIS 的 非齐次推广(核心方程从 Az≡0(modq)A\boldsymbol{z} \equiv 0 \pmod{q}Az≡0(modq) 扩展为 Az≡b(modq)A\boldsymbol{z} \equiv \boldsymbol{b} \pmod{q}Az≡b(modq));
nf-ISIS 是 ISIS 的 结构化变体(通过拼接单位矩阵 InI_nIn 标准化矩阵形式,解空间与 ISIS 等价)。
主要参考:
https://cryptography101.ca/