密码学(1)LWE,RLWE,MLWE的区别和联系
一、定义与基本概念
LWE(Learning With Errors):
- 定义:LWE问题是在给定一个矩阵A和一个向量b^=Ax+e(其中e是一个固定数值范围内随机采集的随机噪音向量)的情况下,求解未知的向量x。
- 本质:需要找到一组系数,使得一组基向量的线性组合无限逼近目标向量,使用噪音误差的大小来定义需要距离目标向量有多近。
- 分类:LWE问题一般分为搜索LWE(Search LWE)和决策LWE(Decisional LWE)两类。搜索LWE需要找到未知的向量s,而决策LWE只需要辨别看到的b^=As+e到底是LWE问题中的误差乘积还是一个随机生成的向量。
RLWE(Ring Learning With Errors):
- 定义:RLWE问题是LWE问题的变体,其中矩阵A和向量s、e被替换为多项式环中的元素。具体来说,给定均匀随机选取的a∈Rq,服从某分布χs的s∈Rq,以及服从某分布χe的e∈Rq,记bi=ais+ei。
- 本质:RLWE问题将LWE问题从一般格缩小到带有代数结构的环格上,利用多项式环的代数结构来简化计算和提高效率。
- 分类:RLWE问题也分为搜索RLWE(Search RLWE)和判定RLWE(Decision RLWE)两类。搜索RLWE需要找到未知的多项式s,而判定RLWE需要区分(a,b)和均匀随机选取的(a′,b′)。
MLWE(Module Learning With Errors):
- 定义:MLWE问题是LWE问题的另一个变体,其中矩阵A和向量s、e是模上的元素。给定均匀随机选取的a∈Rqd,服从某分布χsd的s∈Rqd,以及服从某分布χe的e∈Rq,记bi=⟨ai,s⟩+ei。
- 本质:MLWE问题将LWE问题扩展到模上,利用模的代数结构来提供更高的灵活性和安全性。
- 分类:MLWE问题同样分为搜索MLWE(Search MLWE)和判定MLWE(Decision MLWE)两类。
二、区别
计算元素不同:
- LWE使用普通矩阵和向量进行计算,并添加误差向量。
- RLWE将矩阵和向量替换为多项式环中的元素,利用多项式环的代数结构。
- MLWE则将矩阵和向量视为模上的元素,利用模的代数结构。
计算效率与密钥大小:
- LWE的密钥大小较大,且随着安全参数的增大,资源消耗会迅速增加,效率降低。
- RLWE通过利用多项式环的代数结构,实现了密钥大小的二次减少,并加速了加密和解密过程。
- MLWE在提供更高灵活性的同时,也优化了计算效率和密钥大小。
应用场景:
- LWE是格密码学的基础问题之一,广泛应用于公钥密码学、全同态加密等领域。
- RLWE因其高效的计算性能和较小的密钥大小,成为公钥密码系统构建中的常客,特别是全同态加密的构造。
- MLWE则提供了更高的灵活性和安全性,适用于需要更高安全级别的应用场景。
三、联系
- 理论基础:LWE、RLWE和MLWE都是基于格理论中的难解数学问题构造的,它们的困难性都依赖于格理论中的最短向量问题(SVP)等计算困难问题。
- 安全性:这三者都被认为在量子计算机上也难以求解,因此基于它们的密码学方案可能成为未来公钥密码学的基础。
- 归约关系:在某些情况下,LWE问题可以归约为RLWE或MLWE问题,反之亦然。这种归约关系进一步支持了它们之间的理论联系和安全性等价性。
结语
你害怕失败
但弱者连失败的资格都没有
!!!