格密码基础:详解LWE问题(2)

目录

一. LWE问题的标准式

二. LWE单向函数与SIS单向函数

2.1 SIS问题的标准型

2.2 SIS与LWE标准型之间的关系

三. LWE问题有多难?

3.1 结论

3.2 归约过程

四. LWE归约性质

五. LWE问题的两个版本


一. LWE问题的标准式

系列文章:

格密码基础:详解LWE问题-CSDN博客

LWE 标准式,英语写做 LWE normal form,有的时候也称之为Hermite标准式。

SIS问题和LWE问题都有标准式,在此类问题中秘密s也是选自误差分布(error distribution)X,当然抽取的结果需要模q,这种选取私钥的方式对密码学的应用很好好处。

忽略样本个数m的区别,Applebaum证明了不论私钥s选自于什么分布(比如均匀分布,高斯分布),其LWE的困难性是类似的,包含search版本和decision版本。

将LWE问题的instance中矩阵A和向量b写做如下:

上式子中矩阵A1是方阵,所以可以求逆,如下:

A_1\in Z_q^{n\times n}

对应的向量b1也是n维的,如下:

b_1\in Z_q^n

于是乎将原LWE问题的实例(instance),也就是矩阵A和向量b转换为如下:

A2和A1是均匀且随机选取的,且A2与A1互相独立,所以很明显矩阵\bar A也是均匀且随机的。

接下来我们考虑原LWE分布,秘密s为n维列向量如下:

s\in Z_q^n

向量b1和b2可以写做:

b_i^t=s^tA_i+e_i^t

当然毫无疑问误差e是选自噪声分布X的,

由此带入可得:

将此等式看成新的LWE分布,也就是秘密向量为e1,如果e1可以求出来的话,那么可得:

s^t=(b_1^t-e_1^t)A_1^{-1}

也就是此新的LWE分布的困难性和之前LWE分布求s的困难性是一样的。

如果把目光聚焦在LWE decision问题上。

如果原LWE分布中,b真的是从均匀分布中选择,与矩阵A无关,那么可以马上推出向量\bar b也是均匀分布的,而且跟矩阵\bar A无关。此时,则证明了两者的decision问题的困难性也是一样的。

二. LWE单向函数与SIS单向函数

通过标准式的格式,我们发现LWE与SIS的标准型很类似,通常来讲,我们会把SIS函数看成满射(surjective)的单向函数,LWE看成单射(injective)的单向函数。

2.1 SIS问题的标准型

在不影响密码学的安全性下,SIS问题的标准型可以把矩阵A缩减n列。首先矩阵A可以分成A1和A2,如下:

A=[A_1|A_2]\in Z_q^{n\times m}

其中矩阵A1为n阶方阵,所以可以求逆,由此可得:

可以将上式子中的In看成隐含的单位阵。因为矩阵A2均匀分布,且A2与A1之间互相独立,所以明显矩阵\bar A是均匀且随机的。

矩阵A对应的SIS问题的解,与矩阵[I_n|\bar A]对应的SIS问题的解是一样的。

所以SIS问题的标准型和原问题的困难性是一样的。但是矩阵的列数变少了,由此获得了优化。

2.2 SIS与LWE标准型之间的关系

SIS满射函数的输入为短向量x,如下:

x\in Z^m

输出为:

[I_n|\bar A]\cdot x\in Z_q^n

LWE单射函数的输入为短向量e,如下:

e\in Z^m

输出为:

[\bar A^t|I_{m-n}]\cdot e\in Z_q^{m-n}

两者的\bar A相差一个正负号。

由于满射函数与单射函数之间的不同,所以两者的密码学应用也会产生一些差异。

三. LWE问题有多难?

3.1 结论

参数m=poy(n),对应的模数q满足:

q\leq 2^{poly(n)}

离散高斯分布X的参数满足:

\alpha q\geq 2\sqrt n\quad 0<\alpha<1

利用量子归约,解决decision-LWE问题的困难性相等于在任意n维格上解决近似GapSVP和SIVP问题,其中近似因子为:

\gamma=\tilde O(n/\alpha)

完整的形式化表达如下:

熟悉的小伙伴会发现这跟最坏情况下的SIS问题是类似的。m和q的值其实对困难性无影响,其中q需要满足:

q>2\sqrt n/\alpha

近似因子与LWE问题中的\alpha相关。

3.2 归约过程

借助LWE的oracle,利用多项式时间的量子归约算法可解决最坏情况下的近似GapSVP和SIVP问题。这句话可能有点隐晦,简单解释下:

如果存在一个算法可以解决LWE问题,那么我们马上可以将其转为解决格问题的量子算法。

需要注意的是,目前还没有已知的量子算法可以解决近似GapSVP和SIVP问题。当然,一般来讲,用了量子算法时,会更快一点。

实际上,在2009年,Peikert也给出一种经典归约的算法。

四. LWE归约性质

通过量子归约(quantum reduction),Search-LWE问题的困难性与最坏情况的格问题类似。其归约过程有两个重点:

重点1:

假定存在一个oracle可以解决Search-LWE问题,给出一个格上离散高斯分布其参数为r,那么就可以利用经典归约解决对偶格L^*上的BDD问题(bounded-distance decoding),其中距离d为:

d\approx \alpha q/r

此过程只需要将BDD的instance和高斯样本结合,来产生LWE样本。LWE oracle会输出对应的秘密,由此我们便可以得到BDD问题的答案。

重点2:

如果在对偶格L^*上,解码距离为d,拥有对应的oracle,那么我们就可以利用量子算法产生格L上的离散高斯样本,其中参数为:

r'=\sqrt n/d

此过程既可以借助量子计算来产生BDD instance的答案,接着借助量子傅里叶变换,既可以产生离散高斯样本。

第一个重点告诉我们:

d\approx \alpha q/r

由于:

q>2\sqrt n/\alpha

由此可得:

r'\leq r/\sqrt 2

迭代操作如上两步,便可以产生离散高斯样本,最终解决近似GapSVP和SIVP问题。

五. LWE问题的两个版本

忽略样本数m的变化,借助基本的经典归约,在网络安全领域,decision LWE问题的困难性与search-LWE问题的困难性是类似的,当然此步的归约过程一般是多项式尺寸的模q=poly(n)。

q=2,q=poly(n),q=exp,归约过程经历了这些发展。

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

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

相关文章

Java SE入门及基础(25)

目录 方法带参&#xff08;续第24篇&#xff09; 6.方法参数传递规则 方法传参来自官方的说明 基本数据类型传值案例 基本数据类型传值时传递的是值的拷贝 引用数据类型传值案例 引用数据类型传值时传递的是对象在堆内存上的空间地址 Java SE文章参考:Java SE入门及基础知…

文件操作和IO(1)

认识文件 先来认识狭义上的文件(存储在硬盘(磁盘)上).针对硬盘这种持久化的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存,这个独立的单位就被抽象成文件的概念,就类似办公桌上的一份份真实的文件一般. 注意:硬盘 ! 磁盘 磁盘属于…

基于C++11的数据库连接池【C++/数据库/多线程/MySQL】

一、概述 概述&#xff1a;数据库连接池可提前把多个数据库连接建立起来&#xff0c;然后把它放到一个池子里边&#xff0c;就是放到一个容器里边进行维护。这样的话就能够避免数据库连接的频繁的创建和销毁&#xff0c;从而提高程序的效率。线程池其实也是同样的思路&#xf…

Java-NIO篇章(4)——Selector选择器详解

Selector介绍 选择器&#xff08;Selector&#xff09;是什么呢&#xff1f;选择器和通道的关系又是什么&#xff1f;这里详细说明&#xff0c;假设不用选择器&#xff0c;那么一个客户端请求数据传输那就需要建立一个连接&#xff0c;为了避免线程阻塞&#xff0c;那么每个客…

【Linux】进程间通信——system V 共享内存、消息队列、信号量

需要云服务器等云产品来学习Linux的同学可以移步/–>腾讯云<–/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;优惠多多。&#xff08;联系我有折扣哦&#xff09; 文章目录 写在前面1. 共享内存1.1 共享内存的概念1.2 共享内存的原理1.3 共享内存的使用1.3.1 …

磁盘分区机制

lsblk查看分区 Linux分区 挂载的经典案例 1. 虚拟机增加磁盘 点击这里&#xff0c;看我的这篇文章操作 添加之后&#xff0c;需要重启系统&#xff0c;不重启在系统里看不到新硬盘哦 出来了&#xff0c;但还没有分区 2. 分区 还没有格式化 3. 格式化磁盘 4. 挂载 5. 卸载…

国标GB28181安防视频监控EasyCVR级联后上级平台视频加载慢的原因排查

国标GB28181协议安防视频监控系统EasyCVR视频综合管理平台&#xff0c;采用了开放式的网络结构&#xff0c;可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;同时还…

不要让别人的一言一行变成攻击自己的利器

绝对没错&#xff01;生活中&#xff0c;我们常常会遇到各种各样的人和事&#xff0c;有时候别人的一句话或一种行为可能会让我们感到受伤或不悦。然而&#xff0c;重要的是学会不让这些负面情绪变成攻击自己的利器&#xff0c;而是选择更加积极的处理方式。 以下是一些建议&a…

【ASP.NET Core 基础知识】--路由和请求处理--请求处理管道

在传统的Web开发中&#xff0c;请求的处理通常是由不同的模块或组件完成的。这些模块或组件各自负责一部分工作&#xff0c;然后将结果交给下一个模块或组件进行处理。这种方式存在几个问题&#xff1a; 复杂性&#xff1a; 随着应用的复杂度增加&#xff0c;模块之间的依赖关…

一、用户管理中心——前端初始化

一、Ant Design Pro初始化 1.创建空文件夹 2.打开Ant Design Pro官网 3.打开终端进行初始化 在终端输入npm i ant-design/pro-cli -g 在终端输入pro create myapp 选择umi3 选择simple 项目创建成功后&#xff0c;在文件夹中出现myapp 4.安装依赖 使用vscode打开项目 …

STL中的stack、queue以及deque

目录 一、关于deque容器&#xff08;双端队列&#xff09; 1、deque的底层实现 2、deque的缺点 3、关于stack与squeue默认使用deque容器 二、stack简介 1、stack的成员函数&#xff08;接口&#xff09; 2、stack的模拟实现 三、queue简介 1、queue的成员函数&#xff08…

安全防御-基础认知

目录 安全风险能见度不足&#xff1a; 常见的网络安全术语 &#xff1a; 常见安全风险 网络的基本攻击模式&#xff1a; 病毒分类&#xff1a; 病毒的特征&#xff1a; 常见病毒&#xff1a; 信息安全的五要素&#xff1a; 信息安全的五要素案例 网络空间&#xff1a…

docker配置阿里云镜像加速器

1、阿里云镜像加速器地址获取&#xff1a; 2、配置ECS镜像加速器&#xff0c;重启docker mkdir -p /etc/docker tee /etc/docker/daemon.json <<-EOF {"registry-mirrors": ["https://2lg9kp55.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-…

谈判(贪心算法)

题目 import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner;public class Main {public static void main(String[] args) { Scanner sc new Scanner(System.in);int n sc.nextInt();sc.nextLine();List<Integ…

H3C交换机S6850配置M-LAG三层转发

正文共&#xff1a;1999 字 30 图&#xff0c;预估阅读时间&#xff1a;3 分钟 前面提到M-LAG是一种跨设备链路聚合技术&#xff0c;将两台物理设备在聚合层面虚拟成一台设备来实现跨设备链路聚合&#xff0c;从而提供设备级冗余保护和流量负载分担。 之前已经做了DRNI的三层转…

微前端小记

步骤 将普通的项目改造成 qiankun 主应用基座&#xff0c;需要进行三步操作&#xff1a; 1. 创建微应用容器 - 用于承载微应用&#xff0c;渲染显示微应用&#xff1b; a. 设置路由routeb.主应用的布局包括&#xff1a; 主应用菜单&#xff0c;用于渲染菜单主应用渲染区域&a…

ubuntu安装vm和Linux

1、下载Ubuntu Index of /releaseshttps://old-releases.ubuntu.com/releases/ 2、下载VMware 官方正版VMware下载&#xff08;16 pro&#xff09;&#xff1a;https://www.aliyundrive.com/s/wF66w8kW9ac 下载Linux系统镜像&#xff08;阿里云盘不限速&#xff09;&#xff…

node.js如何将webp转jpg图片

在Node.js中&#xff0c;可以使用一些库来实现将WebP图像转换为JPEG。一个常用的库是sharp&#xff0c;它是一个快速、高效的图像处理库。以下是一个简单的Node.js脚本示例&#xff0c;演示如何使用sharp库将WebP转换为JPEG&#xff1a; 首先&#xff0c;确保已经安装了sharp库…

Access 中SQL的例题

SQL4-18:查找并显示教师表中所有的记录 SELECT * FROM 教师; SQL4-19:查找并显示教师表中姓名、学历和工作时间的记录 SELECT 姓名,学历,工作时间 FROM 教师; SQL4-20:查找并显示教师表中1990年参加工作的男教师&#xff0c; 并显示教师姓名、学历&#…

webpack 核心武器:loader 和 plugin 的使用指南(上)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…