格密码–LWE,DLWE和ss-LWE

0.数学符号
数学符号含义备注
Zq\mathbb{Z}_qZqqqq的整数集合,即{0,1,2,...,q−1}\{0,1,2,...,q-1\}{0,1,2,...,q1}用于定义LWE、DLWE、ss-LWE等问题中矩阵和向量的元素取值范围,是基础整数环
x∈RSx \in_R SxRSxxx从集合SSS中均匀随机(且独立)地选取s∈RZqns \in_R \mathbb{Z}_q^nsRZqn表示秘密向量sss随机选自该向量空间,用于LWE等问题中随机参数的选取
LWE(m,n,q,B)\text{LWE}(m, n, q, B)LWE(m,n,q,B)学习错误问题:给定A∈RZqm×nA \in_R \mathbb{Z}_q^{m \times n}ARZqm×nb=As+e(modq)b = As + e \pmod{q}b=As+e(modq),寻找秘密向量sss,其中s∈RZqns \in_R \mathbb{Z}_q^nsRZqne∈R[−B,B]me \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2由Regev在2005年提出,核心是从带误差的线性方程中恢复秘密,是格密码的核心困难问题
A∈RZqm×nA \in_R \mathbb{Z}_q^{m \times n}ARZqm×nAAA是一个mmmnnn列的矩阵,元素属于Zq\mathbb{Z}_qZq,且随机选取LWE问题的输入矩阵,用于构造带误差的线性方程b=As+e(modq)b = As + e \pmod{q}b=As+e(modq)
s∈RZqns \in_R \mathbb{Z}_q^nsRZqnsss是一个nnn维列向量,元素属于Zq\mathbb{Z}_qZq,且随机选取LWE问题中的秘密向量,是需要求解的目标
e∈R[−B,B]me \in_R [-B, B]^meR[B,B]meee是一个mmm维列向量,每个分量在−B-BBBBB之间,且随机选取LWE问题中的误差向量,“短”特性由B≪q/2B \ll q/2Bq/2保证,是问题困难性的关键
b=As+e(modq)b = As + e \pmod{q}b=As+e(modq)向量bbb由矩阵AAA与秘密向量sss的乘积加误差向量eee后模qqq得到LWE问题的核心方程,b∈Zqmb \in \mathbb{Z}_q^mbZqm是已知输入,用于反推秘密sss
DLWE(m,n,q,B)\text{DLWE}(m, n, q, B)DLWE(m,n,q,B)决策性学习错误问题:给定(A,c)(A, c)(A,c),判断cccb=As+e(modq)b = As + e \pmod{q}b=As+e(modq)还是随机向量r∈RZqmr \in_R \mathbb{Z}_q^mrRZqm是LWE的判定性版本,需区分“带误差的线性组合”与“纯随机向量”
r∈RZqmr \in_R \mathbb{Z}_q^mrRZqmrrr是一个mmm维列向量,元素属于Zq\mathbb{Z}_qZq,且随机选取DLWE中用于对比的随机向量,与bbb以等概率作为ccc的候选
ss-LWE(m,n,q,B)\text{ss-LWE}(m, n, q, B)ss-LWE(m,n,q,B)短秘密学习错误问题:秘密向量s∈R[−B,B]ns \in_R [-B, B]^nsR[B,B]n,其余同LWE是LWE的变体,秘密向量也具有“短”特性,与LWE等价(可双向归约)
Roundq(x)Round_q(x)Roundq(x)qqq的取整函数,将xxx映射到最近的{0,1}\{0, 1\}{0,1}(如LWE加密解密中)在解密中用于从c2−sTc1c_2 - s^T c_1c2sTc1还原明文m∈{0,1}m \in \{0,1\}m{0,1},核心是判断值是否接近000⌈q/2⌋\lceil q/2 \rfloorq/2
ss-DLWE(n,n,q,B)ss\text{-DLWE}(n, n, q, B)ss-DLWE(n,n,q,B)短秘密决策性学习错误问题:基于ss-LWE的判定性版本与ss-LWE等价,在公钥加密安全性证明中作为困难问题假设
c1=ATr+zc_1 = A^T r + zc1=ATr+z加密过程中计算的第一部分密文,其中ATA^TATAAA的转置,r,z∈R[−B,B]nr, z \in_R [-B, B]^nr,zR[B,B]nLindner-Peikert公钥加密方案中的密文分量,依赖公钥AAA
c2=bTr+z′+m⌈q/2⌋(modq)c_2 = b^T r + z' + m \lceil q/2 \rfloor \pmod{q}c2=bTr+z+mq/2(modq)加密过程中计算的第二部分密文,其中bTb^TbTbbb的转置,z′∈R[−B,B]z' \in_R [-B, B]zR[B,B]m∈{0,1}m \in \{0,1\}m{0,1}Lindner-Peikert公钥加密方案中的密文分量,嵌入明文mmm,依赖公钥bbb
sTc1s^T c_1sTc1秘密向量sss的转置与密文c1c_1c1的内积解密过程中用于消除密文中的公开信息,还原含明文的误差项
1.LWE定义

2005年LWE(Learning With Errors)问题被Regev提出。
LWE(m,n,q,B)\text{LWE}(m, n, q, B)LWE(m,n,q,B):给定随机矩阵A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n秘密向量s∈Zqn\boldsymbol{s} \in \mathbb{Z}_q^nsZqn误差向量e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2),以及样本b=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq)目标是恢复秘密向量s\boldsymbol{s}s。 LWE问题的核心方程为:
(a11a12…a1na21a22…a2n⋮⋮⋱⋮am1am2…amn)⏟m×n 随机矩阵 A(s1s2⋮sn)⏟n×1 秘密向量 s+(e1e2⋮em)⏟m×1 短误差向量 e  ≡  (b1b2⋮bm)⏟m×1 样本向量 b(modq) \underbrace{ \begin{pmatrix} a_{11} & a_{12} & \dots & a_{1n} \\ a_{21} & a_{22} & \dots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \dots & a_{mn} \end{pmatrix} }_{m \times n \text{ 随机矩阵 } \boldsymbol{A}} \underbrace{ \begin{pmatrix} s_1 \\ s_2 \\ \vdots \\ s_n \end{pmatrix} }_{n \times 1 \text{ 秘密向量 } \boldsymbol{s}} + \underbrace{ \begin{pmatrix} e_1 \\ e_2 \\ \vdots \\ e_m \end{pmatrix} }_{m \times 1 \text{ 短误差向量 } \boldsymbol{e}} \; \equiv \; \underbrace{ \begin{pmatrix} b_1 \\ b_2 \\ \vdots \\ b_m \end{pmatrix} }_{m \times 1 \text{ 样本向量 } \boldsymbol{b}} \pmod{q} m×n 随机矩阵 Aa11a21am1a12a22am2a1na2namnn×1 秘密向量 ss1s2sn+m×1 短误差向量 ee1e2emm×1 样本向量 bb1b2bm(modq)

矩阵乘法和加法的逐行展开(共 mmm(样本数量) 个方程,变量为 s1,s2,…,sns_1, s_2, \dots, s_ns1,s2,,snn是秘密向量sn是秘密向量\boldsymbol sn是秘密向量s的维度),误差 e1,…,eme_1, \dots, e_me1,,em 是隐藏的短向量):
{a11s1+a12s2+⋯+a1nsn+e1≡b1(modq)a21s1+a22s2+⋯+a2nsn+e2≡b2(modq)⋮am1s1+am2s2+⋯+amnsn+em≡bm(modq) \begin{cases} a_{11}s_1 + a_{12}s_2 + \dots + a_{1n}s_n + e_1 \equiv b_1 \pmod{q} \\ a_{21}s_1 + a_{22}s_2 + \dots + a_{2n}s_n + e_2 \equiv b_2 \pmod{q} \\ \vdots \\ a_{m1}s_1 + a_{m2}s_2 + \dots + a_{mn}s_n + e_m \equiv b_m \pmod{q} \end{cases} a11s1+a12s2++a1nsn+e1b1(modq)a21s1+a22s2++a2nsn+e2b2(modq)am1s1+am2s2++amnsn+embm(modq)

image-20250713172726702

2.LWE参数
1.参数B分析

1.如果B=0B = 0B=0(即e=0:没有误差),那么原式可以化为As=bA\boldsymbol{s} = \boldsymbol{b}As=b(mod q)可以被快速解决。(ISIS中类似的方程是无法快速找到解的,而这里却可以,两者的核心区别是对解是否有约束

2.如果BBB=(q−1)/2(q-1)/2(q1)/2(误差过大),秘密sss无法恢复(信息论上不可能)
3.实际中取==B<q/4B<q/4B<q/4确保误差既能掩盖关系,又能通过合理约束使解唯一
4.(Arora - Ge定理)若
误差范围==B 的渐近增长速度严格慢于 n\sqrt{n}n(即当 nnn 趋近于无穷大时,BBB 相对于 n\sqrt{n}n 可忽略不计 ),且样本数量 ( m ) 足够大(满足 m≫nm \gg nmn ),则带误差学习问题(LWE)可在 亚指数时间(例如 2nϵ2^{n^\epsilon}2nϵ ,其中 0<ϵ<10 < \epsilon < 10<ϵ<1 )内被求解。

2.参数m和n分析

当m>>n的时,LWE会有唯一解(s,e\boldsymbol{s,e}se)。LWE解的唯一性仅在:以向量 As(modq)A\boldsymbol{s} \pmod{q}As(modq) 为中心的 qnq^nqn个球中,任意两个都不重叠。 得以保证。

image-20250713180520103

3.D-LWE(Decisional LWE)
定义:

DLWE(m,n,q,B)\text{DLWE}(m, n, q, B)DLWE(m,n,q,B):给定随机矩阵A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n秘密向量s∈Zqn\boldsymbol{s} \in \mathbb{Z}_q^nsZqn误差向量e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2),以及样本b=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq)。和随机向量r∈RZqm\boldsymbol{r\in_R }\mathbb{Z}_q^mrRZqm。输出的c\boldsymbol{c}c两种情况1.c=b\boldsymbol{c}=\boldsymbol{b}c=b(1/2的概率) 2.c=r\boldsymbol{c}=\boldsymbol{r}c=r(1/2)的概率。目标是对于给定的(A,c\boldsymbol cc)显著高于1/2的概率能够区分:c=b\boldsymbol{c}=\boldsymbol{b}c=b还是c=r\boldsymbol{c}=\boldsymbol{r}c=r

image-20250713182651472

4.LWE与DLWE等价
Claim 1: DLWE ≤ LWE

目标:用 LWE 求解器区分 DLWE 实例 (A,c)(\boldsymbol{A}, \boldsymbol{c})(A,c) 是真实样本还是随机样本。

步骤

  1. 输入 DLWE 实例 (A,c)(\boldsymbol{A}, \boldsymbol{c})(A,c),其中 c\boldsymbol{c}c 可能是:
    • 真实样本:c=As+e(modq)\boldsymbol{c} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}c=As+e(modq)
    • 随机样本:c=r∈RZqm\boldsymbol{c} = \boldsymbol{r} \in_R \mathbb{Z}_q^mc=rRZqm
  2. 调用 LWE 求解器处理 (A,c)(\boldsymbol{A}, \boldsymbol{c})(A,c)
    • 若返回唯一有效解 (s,e)(\boldsymbol{s}, \boldsymbol{e})(s,e)(满足 As+e≡c(modq)\boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \equiv \boldsymbol{c} \pmod{q}As+ec(modq)e∈[−B,B]m\boldsymbol{e} \in [-B, B]^me[B,B]m),则判定 c\boldsymbol{c}c 为真实样本
    • 若求解器失败(无解或超时),则判定 c\boldsymbol{c}c 为随机样本

合理性

  • c=b\boldsymbol{c} = \boldsymbol{b}c=b 时,LWE 求解器能以高概率找到解(唯一解假设下)
  • c=r\boldsymbol{c} = \boldsymbol{r}c=r 时,方程 As+e≡r(modq)\boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \equiv \boldsymbol{r} \pmod{q}As+er(modq) 无解(因 r\boldsymbol{r}r 独立于 A\boldsymbol{A}A
Claim 2: LWE ≤ DLWE

目标:用 DLWE 求解器恢复 LWE 实例 (A,b)(\boldsymbol{A}, \boldsymbol{b})(A,b) 的秘密向量 s\boldsymbol{s}s(逐个分量猜测)。

假设原始矩阵和向量为:
A=(a11a12⋯a1na21a22⋯a2n⋮⋮⋱⋮am1am2⋯amn),b=(b1b2⋮bm),Δ=(δ1δ2⋮δm) \boldsymbol{A} = \begin{pmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{pmatrix}, \quad \boldsymbol{b} = \begin{pmatrix} b_1 \\ b_2 \\ \vdots \\ b_m \end{pmatrix}, \quad \boldsymbol{\Delta} = \begin{pmatrix} \delta_1 \\ \delta_2 \\ \vdots \\ \delta_m \end{pmatrix} A=a11a21am1a12a22am2a1na2namn,b=b1b2bm,Δ=δ1δ2δm

  1. 构造新矩阵 A′\boldsymbol{A}'A

    • Δ\boldsymbol{\Delta}Δ 加到 A\boldsymbol{A}A 的第一列:

    A′=(a11+δ1a12⋯a1na21+δ2a22⋯a2n⋮⋮⋱⋮am1+δmam2⋯amn) \boldsymbol{A}' = \begin{pmatrix} a_{11} + \delta_1 & a_{12} & \cdots & a_{1n} \\ a_{21} + \delta_2 & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} + \delta_m & a_{m2} & \cdots & a_{mn} \end{pmatrix} A=a11+δ1a21+δ2am1+δma12a22am2a1na2namn

  2. 构造新向量 b′\boldsymbol{b}'b
    b′=(b1+d⋅δ1b2+d⋅δ2⋮bm+d⋅δm) \boldsymbol{b}' = \begin{pmatrix} b_1 + d \cdot \delta_1 \\ b_2 + d \cdot \delta_2 \\ \vdots \\ b_m + d \cdot \delta_m \end{pmatrix} b=b1+dδ1b2+dδ2bm+dδm

正确性分析:

令秘密向量 s=(s1,s2,…,sn)T\boldsymbol{s} = (s_1, s_2, \dots, s_n)^Ts=(s1,s2,,sn)T,原始方程:
b=As+e(modq) \boldsymbol{b} = \boldsymbol{A} \boldsymbol{s} + \boldsymbol{e} \pmod{q} b=As+e(modq)

  1. s1=ds_1 = ds1=d
    b′=b+dΔ=As+e⏟b+dΔ \boldsymbol{b}' = \boldsymbol{b} + d \boldsymbol{\Delta} = \underbrace{\boldsymbol{A} \boldsymbol{s} + \boldsymbol{e}}_{\boldsymbol{b}} + d \boldsymbol{\Delta} b=b+dΔ=bAs+e+dΔ
    代入 A′\boldsymbol{A}'A 的定义:
    A′s=(A+[Δ0⋯0])s=As+s1Δ \boldsymbol{A}' \boldsymbol{s} = \left( \boldsymbol{A} + \begin{bmatrix} \boldsymbol{\Delta} & \boldsymbol{0} & \cdots & \boldsymbol{0} \end{bmatrix} \right) \boldsymbol{s} = \boldsymbol{A} \boldsymbol{s} + s_1 \boldsymbol{\Delta} As=(A+[Δ00])s=As+s1Δ
    因为 s1=ds_1 = ds1=d,有:
    b′=As+e+dΔ=As+s1Δ+e=A′s+e \boldsymbol{b}' = \boldsymbol{A} \boldsymbol{s} + \boldsymbol{e} + d \boldsymbol{\Delta} = \boldsymbol{A} \boldsymbol{s} + s_1 \boldsymbol{\Delta} + \boldsymbol{e} = \boldsymbol{A}' \boldsymbol{s} + \boldsymbol{e} b=As+e+dΔ=As+s1Δ+e=As+e
    此时 (A′,b′)(\boldsymbol{A}', \boldsymbol{b}')(A,b)合法 LWE 样本

  2. s1≠ds_1 \neq ds1=d
    b′=As+e+dΔ=A′s+e⏟LWE 结构+(d−s1)Δ \boldsymbol{b}' = \boldsymbol{A} \boldsymbol{s} + \boldsymbol{e} + d \boldsymbol{\Delta} = \underbrace{\boldsymbol{A}' \boldsymbol{s} + \boldsymbol{e}}_{\text{LWE 结构}} + (d - s_1) \boldsymbol{\Delta} b=As+e+dΔ=LWE 结构As+e+(ds1)Δ
    其中 (d−s1)≠0(d - s_1) \neq 0(ds1)=0,且 Δ\boldsymbol{\Delta}Δ 均匀随机独立于 A′\boldsymbol{A}'A,因此 (d−s1)Δ(d - s_1) \boldsymbol{\Delta}(ds1)Δ 是均匀随机向量,使得 b′\boldsymbol{b}'bA′\boldsymbol{A}'A 独立。此时 (A′,b′)(\boldsymbol{A}', \boldsymbol{b}')(A,b)随机样本至此通过DLWE得到了s1s_1s1

通过以下操作可以恢复整个秘密 s\boldsymbol{s}s

  1. 遍历 d∈Zqd \in \mathbb{Z}_qdZq,用 DLWE 求解器测试 s1=ds_1 = ds1=d

  2. 找到正确的 s1s_1s1 后,构造新问题:

    • 更新向量: b(2)=b−s1⋅第一列(A)(modq)\boldsymbol{b}^{(2)} = \boldsymbol{b} - s_1 \cdot \text{第一列}(\boldsymbol{A}) \pmod{q}b(2)=bs1第一列(A)(modq)

    • 更新矩阵: A(2)=移除 A 的第一列\boldsymbol{A}^{(2)} = \text{移除 } \boldsymbol{A} \text{ 的第一列}A(2)=移除 A 的第一列

    • 递归求解 (s2,…,sn)(s_2, \dots, s_n)(s2,,sn)
      b(2)=A(2)(s2⋮sn)+e(modq) \boldsymbol{b}^{(2)} = \boldsymbol{A}^{(2)} \begin{pmatrix} s_2 \\ \vdots \\ s_n \end{pmatrix} + \boldsymbol{e} \pmod{q} b(2)=A(2)s2sn+e(modq)

5.ss-LWE
1.定义:

ss-LWE(m,n,q,B)\text{ss-LWE}(m, n, q, B)ss-LWE(m,n,q,B):给定随机矩阵A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n秘密向量s∈[−B,B]n\boldsymbol{s} \in [-B,B]^ns[B,B]n误差向量e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2),以及样本b=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq)目标是恢复秘密向量s\boldsymbol{s}s

2.LWE和ss-LWE的等价性

Claim 1 ss-LWE(m,n,q,B)≤\leqLWE(m,n,q,B)

显然成立的,ss-LWE只是在LWE基础上加强了对sss的约束。

Claim 2 LWE(m,n,q,B)≤\leq ss-LWE(m,n,q,B)
**目标:**通过 矩阵分块与逆运算,将LWE的“模 qqq 随机秘密”转化为ss-LWE的“短误差组合”,利用ss-LWE的求解能力。
步骤:

  1. 输入:LWE实例 (A,b)(A, \boldsymbol{b})(A,b),满足 b=As+e(modq)\boldsymbol{b} = A\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq),其中 s∈Zqn\boldsymbol{s} \in \mathbb{Z}_q^nsZqn(模 qqq 随机),e∈[−B,B]m\boldsymbol{e} \in [-B,B]^me[B,B]m(短误差)。

  2. 矩阵分块

    A=[A1A2]A = \begin{bmatrix} A_1 \\ A_2 \end{bmatrix}A=[A1A2]A1∈Zqn×nA_1 \in \mathbb{Z}_q^{n \times n}A1Zqn×nA2∈Zq(m−n)×nA_2 \in \mathbb{Z}_q^{(m-n) \times n}A2Zq(mn)×n),

    b=[b1b2]\boldsymbol{b} = \begin{bmatrix} \boldsymbol{b_1} \\ \boldsymbol{b_2} \end{bmatrix}b=[b1b2]b1∈Zqn\boldsymbol{b_1} \in \mathbb{Z}_q^nb1Zqnb2∈Zqm−n\boldsymbol{b_2} \in \mathbb{Z}_q^{m-n}b2Zqmn),

    e=[e1e2]\boldsymbol{e} = \begin{bmatrix} \boldsymbol{e_1} \\ \boldsymbol{e_2} \end{bmatrix}e=[e1e2]e1∈[−B,B]n\boldsymbol{e_1} \in [-B,B]^ne1[B,B]ne2∈[−B,B]m−n\boldsymbol{e_2} \in [-B,B]^{m-n}e2[B,B]mn)。

  3. 构造ss-LWE实例

    假设 A1A_1A1 可逆(随机矩阵下高概率成立),定义 A′=−A2A1−1∈Zq(m−n)×nA' = -A_2 A_1^{-1} \in \mathbb{Z}_q^{(m-n) \times n}A=A2A11Zq(mn)×n

    定义新样本:b′=A′b1+b2(modq)\boldsymbol{b'} = A'\boldsymbol{b_1} + \boldsymbol{b_2} \pmod{q}b=Ab1+b2(modq)
    b′=−A2A1−1(A1s+e1)+A2s+e2=−A2s−A2A1−1e1+A2s+e2=A′e1+e2(modq) \begin{align*} \boldsymbol{b'} &= -A_2 A_1^{-1} (A_1 \boldsymbol{s} + \boldsymbol{e_1}) + A_2 \boldsymbol{s} + \boldsymbol{e_2} \\ &= -A_2 \boldsymbol{s} - A_2 A_1^{-1} \boldsymbol{e_1} + A_2 \boldsymbol{s} + \boldsymbol{e_2} \\ &= A'\boldsymbol{e_1} +\boldsymbol{e_2} \pmod{q} \end{align*} b=A2A11(A1s+e1)+A2s+e2=A2sA2A11e1+A2s+e2=Ae1+e2(modq)
    其中,e1,e2\boldsymbol{e_1}, \boldsymbol{e_2}e1,e2短向量(因 e\boldsymbol{e}e 短),故 (A′,b′)(A', \boldsymbol{b'})(A,b)合法ss-LWE实例(维度为 (m−n)×n(m-n) \times n(mn)×n)。

  4. 恢复LWE的解
    若ss-LWE求解器输出 (e1,e2)(\boldsymbol{e_1}, \boldsymbol{e_2})(e1,e2),则通过分块逆运算可反推原秘密 s\boldsymbol{s}s(利用 b1=A1s+e1\boldsymbol{b_1} = A_1 \boldsymbol{s} + \boldsymbol{e_1}b1=A1s+e1,解线性方程 A1s=b1−e1A_1 \boldsymbol{s} = \boldsymbol{b_1} - \boldsymbol{e_1}A1s=b1e1)。

对比维度LWE(Learning With Errors)DLWE(Decisional LWE)ss-LWE(Short-Secret LWE)
问题类型搜索型问题决策型问题搜索型问题(LWE的变体)
核心定义给定随机矩阵 A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n、样本 b=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq),其中 s∈RZqn\boldsymbol{s} \in_R \mathbb{Z}_q^nsRZqne∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2给定随机矩阵 A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n 和向量 c\boldsymbol{c}c,判断 c\boldsymbol{c}cb=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq)(真实样本)还是随机向量 r∈RZqm\boldsymbol{r} \in_R \mathbb{Z}_q^mrRZqm给定随机矩阵 A∈RZqm×n\boldsymbol{A} \in_R \mathbb{Z}_q^{m \times n}ARZqm×n、样本 b=As+e(modq)\boldsymbol{b} = \boldsymbol{A}\boldsymbol{s} + \boldsymbol{e} \pmod{q}b=As+e(modq),其中 s∈R[−B,B]n\boldsymbol{s} \in_R [-B, B]^nsR[B,B]n(短秘密),e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]mB≪q/2B \ll q/2Bq/2
目标恢复秘密向量 s\boldsymbol{s}s以显著高于1/2的概率区分 c\boldsymbol{c}c 是真实样本还是随机样本恢复短秘密向量 s\boldsymbol{s}s
秘密向量约束s∈RZqn\boldsymbol{s} \in_R \mathbb{Z}_q^nsRZqn(模 qqq 均匀随机,无“短”约束)s∈RZqn\boldsymbol{s} \in_R \mathbb{Z}_q^nsRZqn(同LWE)s∈R[−B,B]n\boldsymbol{s} \in_R [-B, B]^nsR[B,B]n(短向量,分量范围远小于 qqq
误差向量约束e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]m(短误差,B≪q/2B \ll q/2Bq/2e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]m(同LWE)e∈R[−B,B]m\boldsymbol{e} \in_R [-B, B]^meR[B,B]m(同LWE)
输入参数(A,b)(\boldsymbol{A}, \boldsymbol{b})(A,b)(A,c)(\boldsymbol{A}, \boldsymbol{c})(A,c)c\boldsymbol{c}c 为真实样本或随机向量)(A,b)(\boldsymbol{A}, \boldsymbol{b})(A,b)
与其他问题的关系与DLWE等价(双向归约);与ss-LWE等价(双向归约)与LWE等价(双向归约)与LWE等价(双向归约);与ss-DLWE(短秘密决策型LWE)等价
核心特性格密码核心困难问题,通过带误差的线性方程隐藏秘密从“判定”角度刻画LWE的困难性,更易用于安全性证明秘密向量为短向量,更贴近工程直觉,且不降低困难性(与LWE等价)

主要参考:

https://cryptography101.ca/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88700.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88700.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/88700.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【闭包】前端的“保护神”——闭包详解+底层原理

目录 一、闭包是什么&#xff1f;概念 二、闭包为什么存在&#xff1f;作用 1. 创建私有变量 2. 实现数据封装与信息隐藏 3. 模拟私有方法 4. 保存函数执行时的状态 5. 回调函数和事件处理 6. 模块化编程 7. 懒加载与延迟执行 三、闭包怎么用&#xff1f;实践业务场景 …

算法学习笔记:19.牛顿迭代法——从原理到实战,涵盖 LeetCode 与考研 408 例题

牛顿迭代法&#xff08;Newtons Method&#xff09;是一种强大的数值计算方法&#xff0c;由英国数学家艾萨克・牛顿提出。它通过不断迭代逼近方程的根&#xff0c;具有收敛速度快、适用范围广的特点&#xff0c;在科学计算、工程模拟、计算机图形学等领域有着广泛应用。牛顿迭…

小白学Python,操作文件和文件夹

目录 前言 一、操作文件路径 1.获取当前路径 2.创建文件夹 &#xff08;1&#xff09;mkdir()函数 &#xff08;2&#xff09;makedirs() 函数 3.拼接路径 4.跳转路径 5.判断相对路径和绝对路径 6.获取文件路径和文件名 二、操作文件和文件夹 1.查询文件大小 2.删除…

015_引用功能与信息溯源

引用功能与信息溯源 目录 引用功能概述支持的模型引用类型API使用方法引用格式应用场景最佳实践 引用功能概述 什么是引用功能 Claude的引用功能允许在回答基于文档的问题时提供详细的信息来源引用&#xff0c;帮助用户追踪和验证信息的准确性。这个功能特别适用于需要高可…

ROS2中的QoS(Quality of Service)详解

ROS2中的QoS&#xff08;Quality of Service&#xff09;详解1. 主要QoS参数2. 为什么需要设置QoS3. QoS兼容性规则4. 选择QoS策略的建议5. 调试QoS问题的方法6. 踩坑&#xff1a;订阅话题没有输出可能的原因&#xff1a;调试方法QoS是ROS2中用于控制通信质量和行为的机制。它定…

Cursor三大核心AI功能

一&#xff1a;Tab键&#xff1a;智能小助手 1.1 单行/多行代码补全 在代码中写出要实现的功能&#xff0c;第一次按Tab生成代码&#xff0c;第二次按Tab接受代码。1.2 智能代码重写 对已有代码重新编写。 写个注释告诉AI重构方法&#xff0c;然后鼠标点到方法内部&#xff0c;…

cesium添加原生MVT矢量瓦片方案

项目中需要基于cesium接入mvt格式的服务并支持属性拾取查询&#xff0c;通过一系列预研测试&#xff0c;最后选择cesium-mvt-imagery-provider开源插件完成&#xff0c;关键源码信息如下&#xff1a; npm i cesium cesium-mvt-imagery-provider //安装依赖包// 加载图层import…

AI金融风控:识别欺诈,量化风险的新利器

AI金融风控&#xff1a;识别欺诈&#xff0c;量化风险的新利器深度学习算法穿透海量交易数据&#xff0c;92.5%的不良贷款识别率宣告了金融风险防控新时代的来临。深圳桑达银络科技有限公司在2025年6月申请的“基于人工智能的金融交易反欺诈系统”专利&#xff0c;揭示了金融风…

【unitrix】 5.0 第二套类型级二进制数基本结构体(types2.rs)

一、源码 这是一个使用 Rust 类型系统实现类型级(type-level)二进制数的设计。 //! 类型级二进制数表示方案&#xff08;第二套方案&#xff09; //! //! 使用嵌套泛型结构体表示二进制数&#xff0c;支持整数和小数表示。use crate::sealed::Sealed;/// 类型级二进制数结构体 …

DAY01:【ML 第一弹】机器学习概述

一、三大概念 1.1 人工智能&#xff08;AI&#xff09; Artificial Intelligence 人工智能AI is the field that studies the synthesis and analysis of computational agents that act intelligently 1.2 机器学习&#xff08;ML&#xff09; Machine Learning 机器学习Fi…

AGX Xavier 搭建360环视教程【一、先确认方案】

设备默认自带 NVIDIA 硬件编解码能力&#xff08;NVDEC/NVENC&#xff09;&#xff0c;但是需要你在 OpenCV 和 FFmpeg 里正确启用 调通 GStreamer 或 nvmpi&#xff0c;才真正能用起来&#xff01;这里的硬解码是核心&#xff1a;Jetson 平台的硬解码&#xff0c;要么走 GStr…

服务器怎么跑Python项目?

在服务器上运行 Python 项目通常涉及 环境配置、依赖安装、项目部署 和 进程管理。以下是详细步骤&#xff1a;1. 连接服务器确保你能通过 SSH 访问服务器&#xff1a;ssh usernameyour_server_ip&#xff08;如果是本地测试&#xff0c;可跳过这一步&#xff09;2. 安装 Pytho…

【软件设计师】

UML 类图中的关系用例图中的关系 关系例子类图用例图顺序图 概念示例通信图活动图泳道图状态图

Java 内部类详解:从基础到实战,掌握嵌套类、匿名类与局部类的使用技巧

作为一名 Java 开发工程师&#xff0c;你一定在实际开发中遇到过这样的场景&#xff1a;想在一个类内部定义另一个逻辑相关的类&#xff1b;需要为某个接口或抽象类提供一个临时实现&#xff08;比如监听器&#xff09;&#xff1b;想利用面向对象特性来组织代码结构&#xff0…

Java设计模式之行为型模式(观察者模式)介绍与说明

一、模式结构 观察者模式包含以下四个角色&#xff1a; Subject&#xff08;主题/被观察者&#xff09; 维护观察者列表&#xff0c;提供注册&#xff08;registerObserver&#xff09;、移除&#xff08;removeObserver&#xff09;观察者的方法&#xff0c;并定义通知所有观察…

实现一个点击输入框可以弹出的数字软键盘控件 qt 5.12

我们将创建两个自定义组件&#xff1a; 1. NumericInputField&#xff1a;一个输入框&#xff0c;当点击时弹出数字键盘。 2. NumericKeyboard&#xff1a;一个可缩放的数字键盘。 设计思路&#xff1a; - NumericInputField 是一个常规的输入框&#xff0c;但点击后会弹出 Num…

Java 深入解析:JVM对象创建与内存机制全景图

第一章&#xff1a;引言 Java 是一种面向对象的编程语言&#xff0c;对象&#xff08;Object&#xff09;是其最基本的组成单位。Java 的“一切皆对象”不仅体现在语法层面&#xff0c;更体现在运行时&#xff0c;几乎所有数据都以对象形式存在于内存中。 然而&#xff0c;很…

Redis 基本操作笔记

1. Redis 简介 Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的、高性能的键值对存储系统&#xff0c;通常作为数据库、缓存、消息中间件等使用。它支持多种数据类型&#xff0c;包括字符串、哈希、列表、集合、有序集合等。 Redis 特点&#xff1a; 性能&…

Docker从环境配置到应用上云的极简路径

Docker从环境配置到应用上云的极简路径主要包括环境配置、应用容器化、选择云平台及部署应用等步骤&#xff0c;具体如下&#xff1a; - 配置Docker环境&#xff1a; - 安装Docker&#xff1a;根据操作系统下载对应版本的Docker安装包。如在Linux系统中&#xff0c;可使用命令…

Slicer渲染Dicom到nrrd

Slicer渲染Dicom到nrrd 工作中遇到一些处理Dicom数据的需求&#xff0c;个人通过网络上的一些教程 对于原始数据尝试转换到nrrd时&#xff0c;发现部分的窗体数据的渲染方向不一致 进一步发现这些很多定义的方向是跟设备厂家强相关的&#xff0c;不同厂家对于同一段的Dicom参…