图解系列--密码

1.概念
_1.对称密码与公钥密码
对称密码是指在加密和解密时使用同一密钥的方式。
公钥密码则是指在加密和解密时使用不同密钥的方式。因此,公钥密码又称为非对称密码。
_2.混合密码系统
对称密码和公钥密码结合起来的密码方式
_3.散列值
散列值就是用单向散列函数计算出来的数值。单向散列函数所保证是完整性。完整性指的是“数据是正牌的而不是伪造的”这一性质。使用单向散列函数,就可以检测出数据是否被篡改过。
_4.消息认证码
确认消息是否来自所期望的通信对象,可以使用消息认证码。使用消息认证码,不但能够确认消息是否被篡改,而且能够确认消息是否来自所期待的通信对象。也就是说,消息认证码不仅能够保证完整性,还能够提供认证机制。
_5.数字签名
发送者对消息加上数字签名后再发送,接收者可以对该数字签名进行验证。通过这样的方式,不但可以检测出篡改和伪装,还能够防止事后否认。数字签名是一种能够确保完整性、提供认证并防止否认的密码技术。
_6.伪随机数生成器
一种能够模拟产生随机数列的算法。随机数确实承担着密钥生成的重要职责。
在这里插入图片描述

2.对称密码
_1.DES
_1.1.加密和解密
DES 是一种将64比特的明文加密成64比特的密文的对称密码算法,它的密钥长度是56比特。尽管从规格上来说,DES 的密钥长度是64比特,但由于每隔7比特会设置一个用于错误检查的比特,因此实质上其密钥长度是56比特。

DES 是以64比特的明文(比特序列)为一个单位来进行加密的,这个64比特的单位称为分组。一般来说,以分组为单位进行处理的密码算法称为分组密码,DES就是分组密码的一种。

DES 每次只能加密64比特的数据,如果要加密的明文比较长,就需要对 DES加密进行迭代(反复),而迭代的具体方式就称为模式(mode)。
_1.2.加密过程
对每个分组,执行多轮操作,一轮流程:
总结一下, 一轮的具体计算步骤如下。
(1)将输入的数据等分为左右两部分。
(2)将输入的右侧直接发送到输出的右侧。
(3)将输入的右侧发送到轮函数。
(4)轮函数根据右侧数据和子密钥,计算出一串看上去是随机的比特序列。
(5)将上一步得到的比特序列与左侧数据进行 xoR 运算,并将结果作为加密后的左侧。
下一轮处理前,左右部分对调。每一轮产生一个新的子密钥。
在这里插入图片描述
_1.3.差分分析与线性分析
差分分析是一种针对分组密码的分析方法,其思路是 “改变一部分明文并分析密文如何随之改变”。通过分析密文改变中所产生的偏差,可以获得破译密码的线索。

线性分析的密码分析方法,其思路是将明文和密文的一些对应比特进行xOR 并计算其结果为零的概率。如果能够找到大幅偏离1/2的部分,则可以借此获得一些与密钥有关的信息。

_2.三重 DES
DES 重复3次
在这里插入图片描述

当三重DES 中所有的密钥都相同时,三重DES也就等同于普通的 DES了。以前用DES 加密的密文,就可以通过这种方式用三重 DES 来进行解密。也就是说,三重DES对DES具备向下兼容性。DES的加密和解密过程只是改变了子密钥的顺序,而实际进行的处理是相同的。

_3.AES
分组长度和密钥长度可以分别以32比特为单位在128 比特到256比特的范围内进行选择。不过在AES的规格中,分组长度固定为128比特,密钥长度只有128、192和256比特三种。

_3.1.加密和解密
多轮,每一轮分为SubBytes 、ShiftRows、MixColumns和AddRoundKey共4个步骤。

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

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

相关文章

使用c++程序,实现图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转

数字图像处理–实验三A图像的基本变换 实验内容 A实验: (1)使用VC设计程序:实现图像平移变换,图像缩放、图像裁剪、图像对角线镜像。 (2)使用VC设计程序:对一幅高度与宽度均相等的…

LOWORD, HIWORD, LOBYTE, HIBYTE的解释

文章目录 实验结论 实验 int 类型大小正常为4Byte 以小端序来看 0x12345678在内存中的存储为 0x78 0x56 0x34 0x120x78在低地址&#xff0c;0x12在高地址 程序输出 #include <stdio.h> #include <string.h> #include<windows.h>int main() {int a 0x12345…

创信短信API的无代码开发集成:电商平台、CRM和用户运营

无代码开发&#xff1a;集简云与创信短信API的连接 创信短信API的无代码开发集成&#xff0c;旨在为电商平台、CRM和用户运营提供便利。作为一款超级软件连接器&#xff0c;集简云可以在无需开发&#xff0c;无需代码知识的情况下&#xff0c;轻松连接创信短信与近千款软件系统…

​Unity Vuforia 新手(图片识别)教程,后续整理 实体识别 详细流程

文章目录 前言一、Vuforia是什么&#xff1f;二、Unity导入Vuforia1.去Unity - Windows – Asset Store&#xff0c;搜vuforia engine&#xff0c;添加到我的资源2.打开package Manager&#xff0c;导入到工程中即可3.或者在vuforia engine官网下载的Unity包导入4.检查是否导入…

Git相关: 拉取、git push提交 过程遇到的错误

目录 解决git push报错error: RPC failed; HTTP 413 curl 22 关于这个问题&#xff0c;其实千万别用gitlab,因为你怎么推送 也不可能把几G的文件推上去。 error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 se 解决git push报错error: RPC failed;…

夯实c语言基础

题干以下关于函数的叙述中正确的是&#xff08;  d &#xff09;。   A.函数调用必须传递实参   B.函数必须要有形參   C.函数必须要有返回值   D.函数形参的类型与返回值的类型无关 题干以下程序实现&#xff0c;打印任意奇数行菱形星塔&#xff0c;请填空。 void…

Python交易-通过Financial Modeling Prep (FMP)选择行业

介绍 在您的交易旅程中,无论您是在寻找理想的股票、板块还是指标,做出明智的决策对于您的成功至关重要。然而,收集和分析所需的大量数据可能相当艰巨。财务建模准备 (FMP) API的

vue3实现数据大屏内数据向上滚动,鼠标进入停止滚动 vue3+Vue3SeamlessScroll

1.效果图 2.npm下载依赖及main.js文件配置 npm install vue3-seamless-scroll --saveimport vue3SeamlessScroll from vue3-seamless-scroll;app.use(vue3SeamlessScroll) 3.html代码 <!-- scrollFlag为true时再渲染,vue3只要涉及到传值子页面需要加flag判断&#xff0c;否…

竞赛选题 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; **基于深度学习加…

服务器常见问题排查(一)—cpu占用高、上下文频繁切换、频繁GC

一般而言cpu异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁gc以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)导致的&#xff0c;可以使用jstack来分析对应的堆栈情况。 使用jstack排查占用率问题 当使用jstack排查占用率问题时&#xff0c;可以…

淘宝账单导出的手工操作

文章目录 淘宝账单导出的手工操作概述笔记END 淘宝账单导出的手工操作 概述 日常的支付(JD, 淘宝, 1688), 最终都是用微信和支付宝来支付. 微信和支付宝是绑定的自己银行卡. JD绑定的也是自己的银行卡. 微信账单的导出, 已经记录了, 好使. 现在记录一下支付宝账单(只要是阿…

从真实案例出发,全方位解读 NebulaGraph 中的执行计划

本文整理自 NebulaGraph 核心开发 Yee 在直播《聊聊执行计划这件事》中的主题分享。分享视频参见 B站&#xff1a;https://www.bilibili.com/video/BV1Cu4y1h7gn/ 一条 Query 的一生 在开始正式地解读执行计划之前&#xff0c;我们先来了解在 NebulaGraph 中&#xff0c;一条…

【工艺库】SMIC数字后端工艺库

工艺库文件 Calibredigital文件夹apollolefprimetimesynopsys TD系列文件夹 本来是想找一个工艺库&#xff0c;想要其包含逻辑综合和SPICE Model相关的库文件&#xff0c;但是找了很久也没有直接找到想要的&#xff0c;主要原因还是自己对工艺库文件的构成不是很清楚&#xff0…

五年制专转本备考中如何进行有效的自我管理

时间管理 0 1 一天中的4个记忆黄金时间 清晨起床后&#xff0c;适合学习难以记忆的内容&#xff1b;8&#xff1a;00—10&#xff1a;00&#xff0c;适宜学习需要周密思考、分析判断的内容&#xff0c;是攻克难题的最佳时间&#xff1b;18&#xff1a;00后的两个小时&#x…

spring boot中使用Bean Validation做优雅的参数校验

一、Bean Validation简介 Bean Validation是Java定义的一套基于注解的数据校验规范&#xff0c;目前已经从JSR 303的1.0版本升级到JSR 349的1.1版本&#xff0c;再到JSR 380的2.0版本&#xff08;2.0完成于2017.08&#xff09;&#xff0c;目前最新稳定版2.0.2&#xff08;201…

计算机二级Office真题解析 excel减免税,订单,成绩

第一题 1.将“Excel 减免税.xlsx”文件另存为 excel.xlsx&#xff0c;最后提交该文件&#xff08;1 分&#xff09;。 2.将“对应代码.xlsx”文件中的 sheet1 工作表插入到 excel.xlsx 中&#xff0c;工作 表名重命名为“代码”&#xff08;3 分&#xff09;。 3.在"序号&…

2024年度“阳江市惠民保”正式发布!阳江市专属补充医疗保险全新升级

11月14日&#xff0c;2024年度“阳江市惠民保”暨百场义诊活动发布会在阳江市华邑酒店顺利举行。2024年度“阳江市惠民保”一年保费最低只要59元&#xff0c;最高可获得400万元的医疗保障。 阳江市人民政府、阳江市医疗保障局、阳江市农业农村局、阳江市金融工作局、国家金融监…

碳交易机制下考虑需求响应的综合能源系统优化运行(附带Matlab程序)

碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09; 仿真平台&#xff1a;MATLABCPLEX 使用的是yalmipcplex求解器完成求解 资源地址&#xff1a; 碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09…

Go常见数据结构的实现原理——map

&#xff08;一&#xff09;基础操作 版本&#xff1a;Go SDK 1.20.6 1、初始化 map分别支持字面量初始化和内置函数make()初始化。 字面量初始化&#xff1a; m : map[string] int {"apple": 2,"banana": 3,}使用内置函数make()初始化&#xff1a; m …

Spark SQL 每年的1月1日算当年的第一个自然周, 给出日期,计算是本年的第几周

一、问题 按每年的1月1日算当年的第一个自然周 (遇到跨年也不管&#xff0c;如果1月1日是周三&#xff0c;那么到1月5号&#xff08;周日&#xff09;算是本年的第一个自然周, 如果按周一是一周的第一天) 计算是本年的第几周&#xff0c;那么 spark sql 如何写 ? 二、分析 …