格密码-LWE问题

article/2025/6/30 12:24:23

格密码是一种备受关注的 PQC 算法,其安全性基于最坏情况下格问题的困难性,它是来自于 Regev 密码系统和 Lyubashevsky-Peikert-Regev 密码系统的思想。

2022 年,NIST 完成了 PQC 第三轮标准化过程,共有四种候选算法被选中进行标准化,包括 PKE/KEM 算法 CRYSTALS-Kyber,数字签名算法 CRYSTALS-Dilithium, Falcon 和 SPHINCS+。

格密码学是利用R_{n}中格点上的困难问题作为安全密码系统的基础。格密码的优势包括抵抗量子攻击的安全性假设,算法的简单性、有效性和并行性,最坏情况下困难问题的强安全保障以及有通用的结构。

格中的数学困难问题主要包括:

  •  - 最坏情况下最短向量问题 (Shortest Vector Problem,SVP) 
  •  - 最近向量问题(Closest Vector Problem,CVP) 
  •  - 平均情况下的最小整数解(Shortest Integer Solution,SIS)问题   
  •  - 错误学习(Learning With Errors,LWE)问题 

 这些问题是被认为能够抵抗量子计算攻击的。

一、LWE问题简介

容错学习(learning with errors, LWE)问题就是求解带噪声的线性方程组问题, 由Oded Regev在[Reg05] 中提出, 他也因此结果荣获2018年的哥德尔奖. LWE问题的困难性基于的复杂性假设非常弱, 但是功能却异常强大, 由于LWE问题尚无有效的量子求解算法, 因此基于LWE假设的加密方案被认为是抗量子的。
LWE问题是求解带噪声的线性方程组问题. LWE问题的困难性基于的复杂性假设非常弱, 但是功能却异常强大, 由于LWE问题尚无有效的量子求解算法, 因此基于LWE假设的加密方案被认为是抗量子的.由于LWE的结构具有效率高的特点,LWE或其相关问题被广泛用于构造抵抗量子计算攻击的PKE/KEM密码方案。

二、求解线性方程组

  • 假设挑战者(challenger)有一个n维向量s,但出于某种原因,挑战者并不将这一向量公开;
  • 作为攻击者(adversery)可以要求挑战者提供方程(一般是模p同余方程),挑战者可以根据某种分布生成随机的系数向量a_{i},并且计算出a_{i}\cdot s=b_{i},并将(a_{i},b_{i})发送给攻击者;
  • 因此,只要满足在a_{1}a_{2},....,a_{m}中选出一个n元线性无关向量组,就可以求解这个方程
  • 但是这样显然不安全,为了使攻击者不能破解出向量s,我们可以对我们给出的结果增加一些误差。

增加误差

  • 我们在每次生成a_{i}时,还可以根据误差项分布\chi生成一个误差项e_{i},令a_{i}\cdot s+e_{i}=b_{i},此时仍将(a_{i},b_{i})发送给挑战者
  • 由于对于攻击者,误差项分布\chi未知,因此问题较之前变得复杂,事实上,这是一个NP难的问题
  • 一般定义s,a_{i}\in Z^n_{q},e_{i}\in \chi,而b_{i} = s\cdot a_{i}+e_{i}mod p,因此b_{i}\in Z_{q}
  • 由于a_{i}是随机选取的,而b_{i}是在与Z^n_{q}上随机选取出的向量进行运算并加上e_{i}\in \chi而得到的,因而定义(a_{i},b_{i})服从一个新的分布LWE_{p,\chi },称该分布为LWE分布,其定义在Z^n_{q}\times Z_{q}上。
  • 有的地方将LWE分布记作LWE_{s,\chi }
  • 由于该问题定义在离散的情况下,因此将其称为格上问题。

矩阵形式

  • 在一般应用中,通常会将LWE问题写作矩阵形式,即把b_{i},e_{i}都写作向量形式b\in Z^m_{p},e\in \chi ^m,将a_{i}写作矩阵形式A\in Z^{m\times n}_{p}
  • 由此可将等式写作b^T = As^T+e^T(mod p)

三、LWE问题

最基本的LWE问题有两个版本,且这两个问题之间存在多项式时间的规约。

3.1 探索LWE问题

  • 探索LWE问题(search LWE)问题即:SLWE_{n,p,\chi ,m},定义为:给定服从LWE_{p,\chi }的Oracle,在最多进行m次访问的情况下求出n维向量s;
  • 一般来说,要求m是一个关于n的多项式,即m=m(n)是一个多项式函数,对于一个只能在概率多项式时间内运行的攻击者是无法有充足的时间访问超多项式次Oracle的(给的时间太多了)

3.2 判定LWE问题

  • 判定LWE问题(decision LWE)即:DLWE_{n,p,\chi ,m}定义为给定m个来自以下两个分布LWE_{p,\chi }Z^n_{q}\times Z_{q}上的均匀分布,要求以不可忽略的优势区分这两种情况
  • 有时候定义为判定问题,要求如果拿到的是LWE_{p,\chi }分布,输出1为正确答案;

四、LWE问题的复杂性结论

这里的αq就是高斯分布的标准差. 该结论也就是, 如果有高效算法能够解决满足以上参数的DLWE问题, 也就存在一个量子算法能够解决相应的参数的GapSVP问题和SIVP问题.


http://www.hkcw.cn/article/chkJZUwDkr.shtml

相关文章

力扣刷题Day 67:N 皇后(51)

1.题目描述 2.思路 方法1(自己写的传统型回溯):将第一行的皇后依次放置在0 ~ n - 1上,可以发现0 ~ (⌊n / 2⌋ - 1)上的放置方案与⌈n / 2⌉ ~ (n - 1)上的放置方案是对称的,此外,如果n是奇数的话还需额外…

超级 AI 助手进阶攻略:Reflection 模式,开启 Agent 智能飞跃之旅

反思之言: 你有没有注意到,同样是AI,有些能帮你写代码、做决策,甚至聊人生;而有些却连基本的问题都答不对?这背后其实有一个关键差异:它会不会“反思”自己。 所谓Reflection(反思…

[RoarCTF 2019]Easy Calc

查看源代码 <!--Ive set up WAF to ensure security.--> <script>$(#calc).submit(function(){$.ajax({url:"calc.php?num"encodeURIComponent($("#content").val()),type:GET,success:function(data){$("#result").html(<div …

【LLM】AI Agents vs. Agentic AI(概念应用挑战)

note AI Agent 已经可以自动感知环境、拆解任务、并灵活应对变化&#xff1b;与此同时&#xff0c;Agentic AI 又一次将“协作”提到新高度&#xff0c;让多个小团队般的 Agent 分工协作&#xff0c;共同实现“更高层次的目标”AI Agents 将在五个关键领域实现突破&#xff1a…

UE5 2D地图曝光太亮怎么修改

UE5 2D地图曝光怎么修改 在场景添加后期处理体积 修改后期处理体积Exposure曝光参数最大值最小值都改为0 勾选Infinite Extend 全地图范围应用此后期处理体积

pikachu通关教程-File Inclusion

文件包含漏洞 本地文件包含 http://127.0.0.1:1000/pikachu/vul/fileinclude/fi_local.php?filenamefile1.php&submit%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2 首先我们把file1改成file2&#xff0c;发现切换成功 那我们可不可以上传本地文件呢&#xff0c;答案是肯定的&a…

树莓派实验

一、在树莓派上完成驱动程序控制的 PWM LED灯。 1.PWM概述 PWM&#xff08;Pulse Width Modulation&#xff0c;脉宽调制&#xff09; 是一种通过调节信号脉冲宽度来模拟不同幅度模拟信号的技术。它通过周期性地改变信号的占空比&#xff08;即在一个信号周期内&#xff0c;高…

【HarmonyOS 5】鸿蒙应用实现发票扫描、文档扫描输出PDF图片或者表格的功能

【HarmonyOS 5】鸿蒙应用实现发票扫描、文档扫描输出PDF图片或者表格的功能 一、前言 图(1-1) HarmonyOS 的 ** 文档扫描控件(DocumentScanner)** 是 AI Vision Kit 提供的核心场景化视觉服务,旨在帮助开发者快速实现移动端文档数字化功能。 其核心能力包括:扫描合同、…

volatile,synchronized,原子操作实现原理,缓存一致性协议

文章目录 缓存一致性协议&#xff08;MESI&#xff09;volatile1. volatile 的作用2.volatile的底层实现3,volatile 实现单例模式的双重锁&#xff08;面手写&#xff09; synchronized1,基本用法2,可重入性3,Java对象头4,实现原理&#xff08;1&#xff09;代码块同步的实现&a…

Arch安装botw-save-state

devkitPro https://blog.csdn.net/qq_39942341/article/details/148387077?spm1001.2014.3001.5501 cargo https://blog.csdn.net/qq_39942341/article/details/148387783?spm1001.2014.3001.5501 megaton https://blog.csdn.net/qq_39942341/article/details/148388164?spm…

15-2021剑侠情缘2-各种修复完善+虚拟机单机端+外网服务端整理+文本教程+视频教程

任务完善 泉州三大BOSS 剑荡燕云 藏剑 通天顶 梁上等————–

css使用scoped之后样式失效问题

项目中的vue代码原本用的style标签来写css&#xff0c;现在想改成<style langscss scoped>&#xff0c;但是改完之后发现样式不对&#xff1a; 原来是&#xff1a; 将style改成scoped之后变成了&#xff1a;检查发现是之前定义的一些变量无法被识别&#xff0c;导致这些样…

大模型的开发应用(六):使用 Xtuner QLoRA 微调模型

这里写目录标题 0 前言1 Xtuner 简介1.1 主要特点1.2 核心功能1.3 优势与不足1.4 安装 2 数据集格式2.1 开源数据集2.2 自定义数据集2.3 数据集存放位置 3 微调大模型3.1 Qwen1.5的QLoRA配置文件3.2 修改配置文件&#xff08;1&#xff09;PART 1 基本设置&#xff08;2&#x…

cursor如何开启自动运行模式

在Cursor中&#xff0c;开启自动运行模式即启用“Yolo Mode”&#xff0c;具体操作如下&#xff1a; 按下Ctrl Shift J&#xff08;Windows/Linux&#xff09;或Cmd Shift J&#xff08;Mac&#xff09;打开Cursor设置。导航到“Features”&#xff08;功能&#xff09;选…

Visual Studio 2022 加载解决方案缓慢

Visual Studio 2022 加载解决方案加载缓慢 1.进入工具选项卡2.修改环境中的预览功能3.修改文本编辑器中的C#对应的高级选项 1.进入工具选项卡 工具 -> 选项 2.修改环境中的预览功能 环境 -> 预览功能 -> 更快加载项目&#xff08;某些功能可能会延迟&#xff09; 3.…

基于TMC5160 StallGuard2技术的工件搬运与尺寸检测融合系统

点击下面图片带您领略全新的嵌入式学习路线 &#x1f525;爆款热榜 90万阅读 1.6万收藏 1 系统设计目标与创新价值 在现代智能制造系统中&#xff0c;传统自动化产线面临一个普遍存在的技术痛点&#xff1a;工件搬运与尺寸检测通常需要分离的子系统完成。这种分离不仅增加了…

github 提交失败,连接不上

1. 第一种情况&#xff0c;开了加速器&#xff0c;导致代理错误 删除hosts文件里相关的github代理地址 2. 有些ip不支持22端口连接,改为443连接 ssh -vT gitgithub.com // 命令执行结果 OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2 debug1: C…

智慧政务标准规范介绍:构建高效、协同的政务信息体系

在当今信息化快速发展的时代&#xff0c;智慧政务作为政府数字化转型的重要方向&#xff0c;正逐步改变着政府管理和服务的方式。为了确保智慧政务系统的建设能够有序、高效地进行&#xff0c;国家制定了一系列标准规范&#xff0c;其中GB∕T 21062系列标准《政务信息资源交换体…

77页中国金融体系指标大全(2024年版)【附全文阅读】

本文主要介绍了金融业通行宝典中国金融体系指标大全的内容&#xff0c;包括央行体系、商业银行体系、非银金融机构与地方金融组织的各项指标。文章详细分析了美联储资产负債表的结构&#xff0c;并概述了美日欧等主要经济体资产负债表状况。 重点内容&#xff1a; 1. 央行体系是…

Java进阶之不可变对象:用法实例(六十八)

简介&#xff1a; CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a; 多媒体系统工程师系列【…