格密码基础:垂直子空间与子格,q-ary垂直格

目录

一.写在前面

二.子空间垂直

2.1 理论解释

2.2 举例分析

三. 零空间

3.1 零空间与q-ary垂直格

3.2 零空间与行/列空间

四. 格密码相关


一.写在前面

格密码中的很多基础原语都来自于线性代数的基本概念,比如举几个例子:

格密码中的非满秩格------------矩阵的秩,矩阵列向量的线性独立性

格基正交化过程------------------正交矩阵的性质与变换

子格---------------------------------矩阵子空间

正交子格---------------------------正交子空间

q-ary垂直格-----------------------向量与矩阵列空间垂直

本文章将解释线性代数中的子空间,正交矩阵,零空间,矩阵的秩在格密码中的运用。

二.子空间垂直

2.1 理论解释

一个点:0维度

一条线:1维度

一个平面:2维度

一个立体图形:3维度

以此类推。。。。。

子空间垂直要求:一个子空间中的任意向量与另一子空间中的任意向量都垂直。

比如R^3的子空间维度可以是0,1,2,3。0维的子空间只能是原点\lbrace 0\rbrace(如果选其他点的话,必然构成一条线),当然按照惯例,原点形成的0维子空间与任意子空间都垂直。

子空间垂直领域,一条线可以跟一条线垂直,一条线可以跟一个平面垂直,但注意一个平面和一个平面不可能垂直。

注意:此处与以前高中学习的平面垂直是不一样的。

举个例子:

一间教室前面的墙和侧边的墙,我们感觉是垂直的。但不符合子空间垂直的概念,你沿着角落那条线,在前面墙画一条竖线,在侧面墙画一条竖线,这两条竖线很明显平行,并不垂直。

总结以上,子空间垂直的官方定义如下:

Two subspaces V and W of the same space R^n are orthogonal if every vector v in V is orthogonal to every vector w in W: v^Tw=0 for all v and w.

2.2 举例分析

给出两个向量v_1=(1,0,0,0), v_2=(1,1,0,0),很明显这两个向量形成的子空间V为2维的平面。给出向量w=(0,0,4,5),很明显这一个向量形成的子空间W为一条线。

根据向量垂直的基础知识,很容易验证w既与v_1垂直,也与v_2垂直。

接着很容易推导出,子空间W与子空间V互相垂直。

在这个例子里面,V的维度是2,W的维度是1,总空间大小是R^4,说明还缺一个维度。再给出一个向量z=(0,0,5,-4),该向量形成的子空间为L,很明显它既垂直于V,又垂直于W。现在把它们的维度加在一起:2+1+1=4,刚刚好。

三. 零空间

3.1 零空间与q-ary垂直格

对于正整数n和q,选出A\in Z^{m\times n}(密码学通常要求该矩阵随机取),这个矩阵是公开的,如果有一个向量z乘以该矩阵为0向量,那么把满足此条件的向量z全部都组合在一起,就称之为q-ary垂直格,如下:

\Lambda^\bot(A)=\lbrace z\in Z^n:Az=0 \quad mod\ q\rbrace

仔细观察此处的向量z,这不就是线性代数中的零空间!后续讨论中,我们用x来代替z,代表其在线性代数中可以取非整数,如下:

Ax=0

矩阵A的行向量都是n维的,所以行空间是R^n的子空间。向量x也是n维的,所以此零空间也是R^n的子空间。

3.2 零空间与行/列空间

定理

  1. R^n上,行空间与零空间互相垂直;
  2. R^m上,列空间与左零空间互相垂直;

证明:

给定任意m行n列矩阵A,从其零空间中抽取一个n维向量x,满足Ax=0,该方程组有m个方程,可以理解为矩阵A的每一行都与向量x相乘,如下:

第一行与向量x的内积为0,所以第一行与向量x垂直。以此类推,向量x与每一行都垂直。也就是向量x与每一行的任意线性组合都垂直。这不就是零空间内任意向量x都与行空间内任意向量垂直,写作:

N(A)\bot C(A^T)

矩阵的列空间也有类似的性质。比如y^TA=0,如下:

向量y垂直于矩阵A的每一列。向量y形成的空间就是所谓的左零空间。通常写作:

N(A^T)\bot C(A)

N(A^T)代表左零空间,C(A)代表矩阵A的列空间。

3.3 举例

给定一个秩为1的矩阵A,如下:

A=\left[ \begin{array}{cc} 1& 3 \\ 2&6\\ 3&9 \end{array} \right]

由此可得该矩阵的行空间和列空间均为一条线。观察发现矩阵A的每一行都是向量(1,3)的倍数,由此可类推其零空间中包含向量(3,-1),该向量与矩阵A的任意行都垂直,如下:

行空间的维度为1,零空间的维度也为1,总维度为R^2。总结出规律:

r+(n-r)=n

列空间是过点(1,2,3)的一条线,左零空间的点记为(y_1,y_2,y_3),根据y^TA=0,需要满足:

y_1+2y_2+3y_3=0

这不就是一个平面。总结规律:

r+(m-r)=m

四. 格密码相关

格密码的SIS问题与矩阵正交相关。

结论1:

N(A)=(C(A^T))^\bot, \quad C(A^T)=(N(A))^\bot

理解:零空间是行空间的正交补集。

结论2:

行空间维度+零空间维度=矩阵列数

列空间维度+左零空间维度=矩阵行数

结论3:

左零空间在R^m上是列空间的正交补集。

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

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

相关文章

uniapp中如何使用image图片

当在UniApp中使用图片时&#xff0c;可以通过<image>标签将图片显示在页面上。这个标签可以指定src属性来引用图片&#xff0c;并且可以通过mode属性来设置图片的显示模式。除此之外&#xff0c;还可以利用click事件来实现图片的点击事件。在编写代码时&#xff0c;要注意…

Pr2024 for Mac/win中文版:为创意无限延展的全新时代

随着科技的不断进步和创新&#xff0c;影视制作行业也在不断发展。作为专业视频编辑软件的领军者&#xff0c;Premiere Pro于2024年推出了全新的版本Pr2024&#xff0c;为创意无限延展的全新时代揭开了崭新的篇章。 Pr2024以其强大的功能和卓越的性能&#xff0c;为用户带来了…

广州华锐互动VRAR:VR煤矿安全警示教育系统提供真实生动的场景体验

随着科技的不断发展&#xff0c;虚拟现实&#xff08;VR&#xff09;技术已经逐渐渗透到各个领域&#xff0c;为人们的生活带来了诸多便利。在煤矿行业&#xff0c;VR技术的应用也日益受到关注。广州华锐互动开发的VR煤矿安全警示教育系统&#xff0c;旨在通过虚拟现实技术&…

idea导入spring-framework异常:error: cannot find symbol

从github上clone代码spring-framework到本地后导入idea&#xff0c;点击gradle构建后控制台提示异常&#xff1a; 具体异常信息&#xff1a; /Users/ZengJun/Desktop/spring-framework/buildSrc/src/main/java/org/springframework/build/KotlinConventions.java:44: error:…

锂空气电池,预计到2025年将达到17.8亿美元

锂空气电池是一种可充电电池&#xff0c;它利用空气中的氧气与锂离子发生反应来发电。它们具有提供高能量密度的潜力&#xff0c;使其成为电动汽车和其他储能应用的有前途的技术。然而&#xff0c;锂空气电池的开发仍处于早期阶段&#xff0c;在商业化之前需要克服一些挑战。全…

swagger1.2 apiPost工具测试接口没有问题,换成swagger 接口调测时报错 Required request body is missing

把 请求方法由get换成post GetMapping换成 PostMapping 原因apiPost自动把请求json参数封装到请求体里了&#xff0c; 但swagger没有封装&#xff0c;通过networker可以看到载荷里并没有任何东西

Ansys Speos | 3D Texture 车灯案例应用

Speos 3D Texture功能提供了一种解决方案&#xff0c;可以绕过 CAD 系统限制来设计和模拟数百万个小图案&#xff1a;pattern图案的分布类型和重复次数。3D Texture可用于设计照明系统&#xff0c;例如光导、车灯、亮度增强膜 &#xff08;BEF&#xff09; 和由数百万个几何元素…

CSS进度条动画

CSS进度条移动 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-widt…

数据结构学习 Leetcode72 编辑距离

关键词&#xff1a;动态规划 最长公共子序列 题目&#xff1a; 思路&#xff1a; 这题我虽然做出来了但是还是有点迷糊。首先&#xff0c;这道题一定是和最长公共子序列相似的。 所以往最长公共子序列方向思考&#xff0c;考虑的它的状态和转移方程以及边界。 状态和转移方…

英国允许法官使用ChatGPT写裁决书,并公布官方指南!

知名媒体The Week消息&#xff0c;英格兰和威尔士地区的法官&#xff0c;允许使用ChatGPT撰写法律裁决书。 英国的司法官网已经发布了官方指南&#xff0c;详细描述了使用ChatGPT的正确使用方法、潜在风险以及示例&#xff0c;同时适用于首席大法官、高级庭长等负责司法的所有…

2023年安徽省职业院校技能大赛(高职组)“区块链技术应用”赛项竞赛任务书

2023年安徽省职业院校技能大赛&#xff08;高职组&#xff09;“区块链技术应用”赛项竞赛任务书 目录 2023年安徽省职业院校技能大赛&#xff08;高职组&#xff09;“区块链技术应用”赛项竞赛任务书 模块一&#xff1a;区块链产品方案设计及系统运维&#xff08;35分&…

【ai】阿里云 大模型 api 聚合平台 dashscope

阿里云登录 - 欢迎登录阿里云&#xff0c;安全稳定的云计算服务平台 快速调用 前提条件 已开通服务并获得API-KEY&#xff1a;开通DashScope并创建API-KEY。 已安装最新版SDK&#xff1a;安装DashScope SDK。 DashScope灵积模型服务建立在“模型即服务”&#xff08;Model-a…

云仓酒庄的品牌雷盛红酒LEESON分享干红是纯葡萄酿造的吗?

干红是一种葡萄酒的简称&#xff0c;全称是干型红葡萄酒。葡萄酒按含残糖量分为干型、半干型、半甜型和甜型。无论什么型的酒&#xff0c;只要是葡萄酒&#xff0c;那就是葡萄酿造的。 云仓酒庄的品牌雷盛红酒LEESON分享干红是葡萄酒的一种&#xff0c;而葡萄酒却不止干红一种…

【RocketMQ笔记01】安装RocketMQ消息队列运行环境

这篇文章&#xff0c;主要介绍如何安装RocketMQ消息队列运行环境。 目录 一、RocketMQ消息队列 1.1、下载RocketMQ 1.2、解压安装包 1.3、配置RocketMQ环境变量 1.4、修改启动脚本 1.5、启动RocketMQ &#xff08;1&#xff09;启动NameServer &#xff08;2&#xff0…

HarmonyOS共享包HAR

共享包概述 OpenHarmony提供了两种共享包&#xff0c;HAR&#xff08;Harmony Archive&#xff09;静态共享包&#xff0c;和HSP&#xff08;Harmony Shared Package&#xff09;动态共享包。 HAR与HSP都是为了实现代码和资源的共享&#xff0c;都可以包含代码、C库、资源和配…

Salesforce推出Trailblazer就业市场,让求职更简单!

12月14日&#xff0c;Salesforce宣布推出Trailblazer就业市场&#xff08;Trailblazer Career Marketplace&#xff09;&#xff0c;这是一个新的人才中心&#xff0c;也是Trailhead的扩展。Trailblazer就业市场致力于将数据、人工智能和CRM领域的专业人士与Salesforce生态系统…

CentOS8+宝塔面板+cpolar内网穿透搭建可公网访问的Typecho个人站点

文章目录 前言1. 安装环境2. 下载Typecho3. 创建站点4. 访问Typecho5. 安装cpolar6. 远程访问Typecho7. 固定远程访问地址8. 配置typecho 前言 Typecho是由type和echo两个词合成的&#xff0c;来自于开发团队的头脑风暴。Typecho基于PHP5开发&#xff0c;支持多种数据库&#…

Flutter windows 环境配置

Flutter windows 环境配置 从零开始&#xff0c;演示flutter环境配置到启动项目&#xff0c;同时支持 vscode 和 android studio 目录 Flutter windows 环境配置一、环境配置1. Flutter SDK2. Android Studio3. JDK4. 拓展安装5. Visual Studio 2022二、项目创建和启动1. vsco…

Ansys Lumerical | 带2D输出耦合器的出瞳扩展器的优化

附件下载 联系工作人员获取附件 本文提出并演示了一种以二维光栅为外耦合器的出瞳扩展器&#xff08;EPE&#xff09;系统的仿真方法&#xff0c;并给出了优化和公差分析的实例。 在此工作流程中&#xff0c;我们使用 Lumerical 构建光栅模型&#xff0c;并使用 RCWA 求解器模…

ubuntu18设置开机自启动

项目需求&#xff1a;机器人开机上电后工控机首先运行机械臂控制代码&#xff0c;再运行算法代码 1.终端执行以下代码 gnome-session-properties 2.设置开机自启动选项 在弹出界面点击添加&#xff0c;名称随便填&#xff0c;命令填入要启动的脚本&#xff0c;注释随便填。 …