格密码基础:光滑参数

news2024/9/28 3:22:12

目录

一. 铺垫高斯函数

二. 光滑参数图形理解

三. 光滑参数与格基本区

3.1 高斯与均匀分布的统计距离

3.2 光滑参数理解

四. 光滑参数与最短向量

五. 光滑参数与连续最小值

六. 光滑参数与对偶格的上界

七. 光滑参数与格的上界

八. 小结


一. 铺垫高斯函数

定义高斯密度函数如下:

\rho_s(x)=e^{-\pi||x/s||^2}

进一步形成新的高斯密度函数:

v_s(x)=\rho_s(x)/s^n

注意此处的函数输入为N维,也就是x\in R^n。根据高斯函数对长度的限制,可得:

P[||x||\leq \sqrt ns]=1-2^{-\Omega(n)}

二. 光滑参数图形理解

首先,我们均匀选择一些格点,以二维为例子,这些格点处对应的概率大致相等。接着,我们把每个格点外加一个高斯噪声,可得:

当我们增大高斯噪声的方差,图形会变成:

如果继续增大高斯噪声会出现:

很明显当s越来越大后,图形会越来越接近均匀分布。在网络安全中,均匀分布非常重要,格的光滑参数就是研究当s取多大时,此均匀分布会出现。

三. 光滑参数与格基本区

3.1 高斯与均匀分布的统计距离

\Lambda的格基记为B,格基本区写做P(B),基本区上的均匀分布为:

U(x)=\frac{1}{det(\Lambda)}

对偶格的行列式与格的行列式互为倒数,所以可得:

U(x)=\frac{1}{det(\Lambda)}=det(\Lambda^*)

高斯函数记为v_s(x),将高斯函数中的每个点都 模基本区(mod P(B)),可以得到新的函数分布:

第一个等号:Y(x)分布的意义,x'与x在模基本区下相等;

第二个等号:v_s(x)\rho_s(x)之间的关系,另外基本区内的点加上所有的格点,可以遍历整个扩展空间内的点;

利用泊松求和公式以及傅里叶变换的性质,对分布Y(x)进一步运算可得:

如果有人感兴趣这一步的证明,欢迎留言,以后可以补上。

现在我们来计算新得到的分布Y(x)与均匀分布U(x)之间的统计距离,如下:

取该距离的上限,基本区的体积记为格行列式的值,再带入Y(x)的表达式,可得:

指数e^{2\pi i\langle \omega,x\rangle}的取值不会超过1,对偶格的行列式与格的行列式互为倒数,进一步化简可得:

将以上,总结为形式化的定义可得:

3.2 光滑参数理解

以上讨论告诉我们:

\Delta(Y,U)\leq \frac{1}{2}\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)

最小的s,使其满足:

\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)\leq \epsilon

对应的s就被称之为格的光滑参数,记作\eta_\epsilon(\Lambda)

很明显,当s越来越小时,\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)越来越大,也就是:

lim_{s\to 0}\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)=\infty

当s越来越大时,\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)越来越小,也就是:

lim_{s\to \infty}\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)=0

所以可以把\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)看成关于s的函数,并且该函数为连续型且严格单调递减的函数。

以下理解非常重要。

也就是说,当高斯函数的标准差s大于光滑参数时,也就是:

s\geq \eta_\epsilon(\Lambda)

可得高斯函数v_s与均匀分布之间的距离最多为1/2\epsilon(注意两个分布均定义在基本区P(B)上)。光滑参数是连接高斯分布与均匀分布很好的桥梁。

四. 光滑参数与最短向量

\epsilon<1/100时,可得光滑参数的下界:

\eta_\epsilon(\Lambda)\geq \frac{1}{\lambda_1(\Lambda^*)}

证明:

令高斯分布的参数s等于对偶格最短向量的倒数,于是:

s=\frac{1}{\lambda_1(\Lambda^*)}

令y代表对偶格的最短向量,也就是:

y\in \Lambda^*\quad ||y||=\lambda_1(\Lambda^*)

带入运算可得:

证明完毕。

五. 光滑参数与连续最小值

结合转移定理(Banaszczyk transference theorem),以上定理可得:

\epsilon<1/100时,可得光滑参数的下界:

\eta_\epsilon(\Lambda)\geq \frac{1}{n}\lambda_n(\Lambda)

六. 光滑参数与对偶格的上界

\epsilon\geq 2^{-n+1},可得光滑参数的上界:

\eta_\epsilon(\Lambda)\leq \frac{\sqrt n}{\lambda_1(\Lambda^*)}

证明:

令高斯分布的参数s等于:

s=\frac{\sqrt n}{\lambda_1(\Lambda^*)}

带入高斯分布中运算可得:

第一个等号:高斯函数的性质;

第二个不等号:对偶格的性质\lambda_1(s\Lambda^*)\geq \sqrt n

所以可得:

\rho_{1/s}(\Lambda^* \backslash \lbrace0\rbrace)\leq 2^{-n+1}

证明完毕。

七. 光滑参数与格的上界

\epsilon\geq 2^{-n+1},可得光滑参数的上界:

\eta_\epsilon(\Lambda)\leq \sqrt n\lambda_n(\Lambda)

利用转移定理结合上一个性质即可证明。

其实这个界还不够紧致,实际上,当\epsilon\geq n^{-logn}时,光滑参数的上界为:

\eta_\epsilon(\Lambda)\leq logn\cdot \lambda_n(\Lambda)

八. 小结

格理论的研究起源于 17-19 世纪, 数学家 Kepler 和 Gaussian 研究在低维空间中堆放等半径的小球,当所有球的球心构成一个格时,计算得出了堆积球密度的最大值。 在19 世纪中叶,Minkowski 和 Hermit 等数学家逐渐发展了格堆积理论和格覆盖理论。 计算球的最大格堆积密度相当于在格点中求解最短向量问题(Shortest Vector Problem, SVP) , 计算球的最小覆盖密度相当于在格点中求解最近格点问题(Closest Vector Problem, CVP), 两者都是格密码的核心数学难题。

1998 年, Ajtai 证明了SVP在l_2范数下,当近似因子小于\gamma=1+1/2^{n^\epsilon}时是 NP-Hard 的, 即不存在多项式时间的算法可以求解近似版本 SVP(Approximate Shortest Vector Problem, SVP_\gamma)。在保证SVP在l_0l_\infty范数下是NP-hard的同时,计算出近似因子的上界为2-\epsilonn^{clog(log(n))}。2003年,Dinur等计算出当近似因子为n^{clog(log(n))}时,近似版本 CVP(Approximate Closest Vector Problem)是 NP-hard 的。
算法复杂性理论研究基于求解问题所要花费的时间、 空间资源(比特数、 带数、 逻辑门数) 等。 通过考察求解某个问题的不同算法复杂程度来衡量问题的难易程度. 由此将问题划分为不同的类型:

经典复杂性分类定义
P确定型 单带图灵机在多项式时间内可判定的语言类
NP某个非确定型多项式时间图灵机判定的语言类
NPCNP 问题子集, 可以通过多项式时间算法归约到一个 NP 问题上

格上困难问题是计算复杂性理论的重要研究内容, 基于格的密码方案的可证明安全性依赖格上问题的难解度, 格上许多困难问题在目前已被证明是NP难的, 其中包括最短线性无关向量问题(SIVP) , 短整数解问题(SIS) 。 SIVP 问题和 SIS 问题都可以归约到格上最差情况的困难问题, 所以有些格密码方案是基于上述困难问题设定,其在标准模型下该网络安全方案是具有抗量子的特效。

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

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

相关文章

Django 9 常用通用视图分析

View 提供基于不同http方法执行不同逻辑的功能。 1. 创建 terminal输入 django-admin startapp the_13回车 2.tutorial子文件夹 settings.py注册一下 INSTALLED_APPS [django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessions,dja…

九州金榜|孩子步入叛逆期,常常离家出走怎么办?

孩子在拥有了独立意识后&#xff0c;就开始试图挑战父母的权威。他们会主动去质疑父母&#xff0c;主动去证明自己的成熟和独立&#xff0c;还会主动试图逃离父母的控制范围。 近日就收到了家长求助孩子离家出走问题的私信&#xff0c;在得到家长同意&#xff0c;接下来我们就…

Docker-Compose部署Redis(v7.2)分片集群(含主从)

文章目录 一、前提准备1. 文件夹结构 二、配置文件1. redis.conf2. docker-compose文件 三、构建集群1. 自动分配主从关系2.1 构建3 master集群2.2 手动配置从节点 四、测试1. 集群结构2. 分片测试 环境 docker desktop for windows 4.23.0redis 7.2 目标 搭建如下图分片主从…

利用ArcGIS探究环境与生态因子对水体、土壤、大气污染物等影响的实践技术

如何利用ArcGIS实现电子地图可视化表达&#xff1f;如何利用ArcGIS分析空间数据&#xff1f;如何利用ArcGIS提升SCI论文的层次&#xff1f;制图是地理数据展现的直观形式&#xff0c;也是地理数据应用的必要基础。本次课程从ArcGIS的基本操作、ArcGIS 的空间数据分析及ArcGIS 的…

算法基础之货仓选址

货仓选址 核心思想&#xff1a; 贪心 绝对值不等式 : ∣ x – a ∣ ∣ x – b ∣ ≥ ∣ a – b ∣ |x – a| |x – b| ≥ |a – b| ∣x–a∣∣x–b∣≥∣a–b∣ 将n个数两两分组 1~~ n-1 (奇数会剩一个) 分别用绝对值不等式 即可推出来 货仓位置应该在中位数上(奇数) 或在中…

鸿蒙应用开发 闹钟实现

后台代理提醒简介 随着生活节奏的加快&#xff0c;我们有时会忘记一些重要的事情或日子&#xff0c;所以提醒功能必不可少。应用可能需要在指定的时刻&#xff0c;向用户发送一些业务提醒通知。例如购物类应用&#xff0c;希望在指定时间点提醒用户有优惠活动。为满足此类业务…

C# Unity将地形(Terrain)导出成obj文件

C# Unity将地形(Terrain)导出成obj文件 从其他地方搬运过来的&#xff0c;只能到出obj模型&#xff0c;不能导出贴图 using System.IO; using System.Text; using UnityEditor; using UnityEngine; using System;enum SaveFormat { Triangles, Quads } enum SaveResolution {…

Landsat8的辐射定标与大气校正

目录 打开影像辐射定标大气校正计算区域高程计算研究区高程大气校正查看处理结果 打开影像 在文件夹中找到xxx_MTL.txt文件&#xff0c;拖到ENVI中 此处可能会出现无法打开的问题&#xff0c;参考该文章&#xff08;ENVI无法打开Landsat8的头文件问题和解决&#xff09; 辐…

Iceberg从入门到精通系列之十九:分区

Iceberg从入门到精通系列之十九&#xff1a;分区 一、认识分区二、Iceberg的分区三、Hive 中的分区四、Hive 分区问题五、Iceberg的隐藏分区六、分区变换七、分区变换 一、认识分区 分区是一种通过在写入时将相似的行分组在一起来加快查询速度的方法。 例如&#xff0c;从日志…

C#,冒泡排序算法(Bubble Sort)的源代码与数据可视化

排序算法是编程的基础。 常见的四种排序算法是&#xff1a;简单选择排序、冒泡排序、插入排序和快速排序。其中的快速排序的优势明显&#xff0c;一般使用递归方式实现&#xff0c;但遇到数据量大的情况则无法适用。实际工程中一般使用“非递归”方式实现。本文搜集发布四种算法…

【WPF】使用 WriteableBitmap 提升 Image 性能

【WPF】使用 WriteableBitmap 提升 Image 性能 前言WriteableBitmap 背景WriteableBitmap 渲染原理WriteableBitmap 使用技巧案例核心源码测试结果 前言 由于中所周不知的原因&#xff0c;WPF 中想要快速的更新图像的显示速率一直以来都是一大难题。在本文中&#xff0c;我将分…

leetcode“位运算”——只出现一次的数字

只出现一次的数字i&#xff1a; https://leetcode.cn/problems/single-number/ 给你一个非空整数数组 nums&#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出现一次的元素。 class Solution { public:int singleNumber(vector<i…

九州金榜|孩子厌学,作为父母有想做自己的原因吗?

孩子不会天生就厌学&#xff0c;如果孩子天生厌学&#xff0c;那么孩子就不可能学会说话&#xff0c;走路&#xff0c;日常生活&#xff0c;更不可能去上学&#xff0c;孩子厌学因素非常多&#xff0c;而作为父母&#xff0c;你有没有想过是你的原因造成的呢&#xff1f;九州金…

【深度学习:Domain Adversarial Neural Networks (DANN) 】领域对抗神经网络简介

【深度学习&#xff1a;Domain Adversarial Neural Networks】领域对抗神经网络简介 前言领域对抗神经网络DANN 模型架构DANN 训练流程DANN示例 GPT示例 前言 领域适应&#xff08;DA&#xff09;指的是当不同数据集的输入分布发生变化&#xff08;这种变化通常被称为共变量变…

Redis概览

Redis存储是Key-Value结构的数据&#xff0c;其中Key是字符串类型&#xff0c;Value有5种常见的数据类型 字符串 String 哈希 hash 列表 list 集合 set 有序集合 sorted set / zset 各种数据类型的特性 字符串操作命令 : ● SET ke…

解决Vue3 中Echarts数据更新渲染不上问题

解决办法就是让Dom节点重新渲染 定义一个变量 const postLoading ref(true); 请求数据前dom节点不渲染&#xff0c;获取完数据重新渲染

2024年1月阿里云服务器租用价格表_优惠活动大全

2024年1月最新阿里云服务器租用价格表&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、轻量应用服务器2核2G3M带宽轻量服务器一年61元&#xff0c;2核4G4M带宽轻量服务器一年165元12个月、2核4G服务器30元3个月&#xff0c;云服务器ECS可以选择经济型e实例、通用…

静态网页设计——中医中药网(HTML+CSS+JavaScript)(dw、sublime Text、webstorm、HBuilder X)

前言 声明&#xff1a;该文章只是做技术分享&#xff0c;若侵权请联系我删除。&#xff01;&#xff01; 感谢大佬的视频&#xff1a;https://www.bilibili.com/video/BV11e411i7g8/?vd_source5f425e0074a7f92921f53ab87712357b 源码&#xff1a;https://space.bilibili.com…

三种主流流协议的浏览器播放解决方案

三种主流流协议的浏览器播放解决方案 流协议介绍 主流的流协议&#xff08;streaming protocol&#xff09;包括HLS、RTMP、RTSP&#xff0c;下面依次介绍下三种视频流。 HLS HLS&#xff08;Http Live Streaming) 是一个由苹果公司提出的基于HTTP的流媒体网络传输协议&…

LeetCode-重复的子字符串(459)

题目描述&#xff1a; 给定一个非空的字符串 s &#xff0c;检查是否可以通过由它的一个子串重复多次构成。 思路一&#xff1a; 使用枚举的方法。首先因为字符串s有一个子串重复多次构成&#xff0c;那么s的长度len与子串的长度subLen应该成倍数关系&#xff0c;并且在s中索…