《系统架构设计师教程(第2版)》第4章-信息安全技术基础知识-02-信息加密技术

文章目录

  • 1. 信息加密技术
    • 1.1 数据加密
    • 1.2 对称密钥加密算法
      • 1)数据加密标准(DES)
      • 2)三重DES(Triple-DES)
      • 3)国际数据加密算法(IDEA)
      • 4)高级加密标准(AES)
    • 1.3 非对称密钥加密算法
      • 1)概述
      • RSA算法
  • 2. 密钥管理技术
    • 2.1 秘钥的使用控制
      • 1)密钥标签
      • 2)控制矢量
    • 2.2 密钥的分配
      • 1)获得共享秘钥的方式
    • 2.3 公钥加密体制的密钥管理
      • 1)公开发布
      • 2)公用目录表
      • 3)公钥管理机构
      • 4)公钥证书
    • 2.4 公钥加密分配单钥密码体制的密钥

本章对应教材:4.4信息加解密技术、4.5 密钥管理技术

1. 信息加密技术

1.1 数据加密

  • 作用:防止未经授权的用户访问敏感信息的手段
  • 密码学(Cryptography):研究数据加密的科学
  • 加密过程
    • 发送端把明文P 用加密算法E 和密钥 K 加密(即 密文C=E(K,P))
    • 接收端利用解密算法D 和密钥K 对C 解密得到明文P(即P=D(K,C)
    • 这里加/解密函数E 和D 是公开的,而密钥K是秘密的

在这里插入图片描述

1.2 对称密钥加密算法

  • 概述:加密密钥和解密密钥是相同的,称为共享密钥算法或对称密钥算法

1)数据加密标准(DES)

  • Data Encryption Standard
  • 制定:1977年1月,美国国家安全局(National Security Agency) 根据IBM的专利技术Lucifer制定了DES。
  • 加密过程:
    • 明文被分成64位的块
    • 对每个块进行19次变换
      • 其中16次变换由56位密钥的不同排列形式控制
      • 而IBM使用128为秘钥,而DES减少了秘钥长度
    • 最后产生64位的密文块

2)三重DES(Triple-DES)

  • 概述:两把密钥对报文做三次 DES加密,克服了DES密钥长度较短的缺点
  • 秘钥:112位
    • 因为三次加密中,第一层和第三层秘钥相同,因此秘钥长度 56x2=112位 (而不是56x3)
    • 若只使用两层加密,第2层DES不安全,它对一种称为“中间可遇”的密码分析攻击极为脆弱
  • 算法的步骤:
    1. 用密钥 K1 进行 DES加密
    2. 用K2 对步骤(1)的结果进行 DES解密。
    3. 对步骤(2)的结果使用密钥 K 1 进行DES 加密。

3)国际数据加密算法(IDEA)

  • International Data Encryption Algorithm
  • 秘钥:128位
  • 步骤:把明文分成64位的块,进行8轮迭代加密
  • 优点:可以用硬件或软件实现、比DES快

4)高级加密标准(AES)

  • 全称 Advanced Encryption Standard
  • 秘钥:支持支持128、192、256
  • 可以通过软件或硬件实现。

1.3 非对称密钥加密算法

1)概述

  • 概念:如题,加密密钥和解密密钥是不同的

  • 满足的条件

    • D( E ( P ) ) = P
    • 不能由E导出D
    • 选择明文攻击不能破解E

    明文攻击:选择任意明文-密文对以确定未知的密钥

  • 加密传输和签名

    • 用公钥加密,私钥解密,可实现保密通信
    • 用私钥加密,公钥解密,可实现数字签名

RSA算法

  • 概念:RSA(Rivest Shamir and Adleman) 是一种公钥加密算法
  • 基于大素数分解的困难性

    具体方法不用考虑,教材写的错误很多

2. 密钥管理技术

2.1 秘钥的使用控制

两个用户(主机、进程、应用程序)在进行保密通信时,必须拥有一个共享的并且经常更新的秘密密钥

秘钥控制技术:

1)密钥标签

  • DES 的密钥控制
    • 将DES的8个校验位作为控制这个密钥的标签
      • 前3位分别代表了该密钥的不:主/会话密钥、加密、解密
    • 缺陷:由于长度限制,且须经解密方能使用,带来了一定的不便性

2)控制矢量

  • 概念:
    • 用若干字段说明秘钥在一定环境下,是否允许被使用
    • 由秘钥中心产生,并加入秘钥中
    • 其长度可变

2.2 密钥的分配

1)获得共享秘钥的方式

  • 方法一(人工发送)

    • 秘钥选取:A 选取
    • 发送:A ==> B
    • 媒介:物理手段发送
    • 问题:网络中秘钥数目过多

    如网络中N个用户都要求支持加密服务,则每一对用户都需要一个共享秘钥,数目将达到 N(N-1)/2

  • 方法二(人工发送)

    • 秘钥选取:第3方选取密钥
    • 发送:第三方 ===> A、B
    • 媒介:物理手段发送
    • 问题:同上
  • 方法三

    • 秘钥选取:A选取
    • 发送:A <用已有秘钥加密(新密钥)> ==> B
  • 问题:

    • B一旦获得秘钥,则可获得后期秘钥。
    • 网络中秘钥数目过多(同上)
  • 方法四:

    • 秘钥选取:由秘钥中心(KDC)选取
    • 发送:
      • KDC == 保密通道A ==> A
      • KDC == 保密通道B ==> B
    • 分配过程
      • KDC有一个共享密钥,即主密钥
      • 通过主密钥分配给每对用户会话密钥
      • 通信结束后立会话秘钥立即销毁
    • KDC的分层结构
      • 每个小范围建立一个本地KDC
      • 不同范围间使用一个全局KDC

2.3 公钥加密体制的密钥管理

1)公开发布

  • 概念:指用户将自己的公钥发给每一其他用户,或向某一团体广播
  • 缺点:任何人都可以伪造密钥公开发布

2)公用目录表

  • 概念:一个公用的公钥动态目录表,由某个可信的实体或组织)承担该共用目录表的建立、维护以及公钥的分布等
  • 过程:
    • 管理员
      • 为每个用户在目录表中建立一个目录
      • 每个目录包括:用户名、用户的公开钥
      • 定期公布和更新目录表
    • 用户
      • 使用合法方式向管理者注册自己的公钥
      • 可通过合法手段更新自己的公钥
  • 缺点:管理员秘密钥一旦被攻击者获取,所有用户将面临被假冒的危险

3)公钥管理机构

  • 与公用目录的区别
    • 由秘钥管理机构维护动态公钥目录
  • 过程:
    • 每一个用户都知道管理机构的公钥
    • A向管理机构发出请求
    • 管理机构使用私钥加密,发送给A
    • A 使用管理机构的公钥解密
  • 缺点
    • 管理机构容易成为瓶颈
    • 管理机构的公钥目录容易成为攻击目标

4)公钥证书

  • 证书形式:CA=ESKCA[T,IDA,PKA]

    • C A则是用户 A 产生的证书
    • ESKCA是 CA 的秘密钥
    • T是当前的时戳
    • IDA是用户A 的身份
    • PKA是 A 的公钥,
  • 解决公钥中心成为瓶颈的问题:

    • 用户将自己的公钥通过公钥证书发给另一用户
    • 而接受方则可用 C A的公钥 PKCA对证书加以验证

    如是,通过证书交换用户之间的公钥而无须再与公钥管理机构联系,从而避免了由统一机构管理所带来的不便和安全隐患。

2.4 公钥加密分配单钥密码体制的密钥

  • 公钥加密体制的加密速度比较慢,适合单钥密码体制的密钥分配

  • 建立共享会话密钥的步骤

    • A 将用B 的公钥加密得到的身份IDA和一个用于唯一标志这个业务的一次性随机数N1,发往 B
    • 预使A 确定对方是B, 则 B 用 A 的公钥加密N1和另一新产生的随机数N2 因为只有B 能解读①中的加密。
    • A用 B 的公钥 PKB对N2 加密后返回给 B , 以使B 相信对方确是A。
    • A 将 M=EPKB[ESKA[KS]] 发送给B , 其中KS为会话密钥,用 B 的公开钥加密是为保证只有B 能解读加密结果,用 A 的秘密钥加密是保证该加密结果只有A 能发送。
    • B 以DPKA[DSKB[M]]恢复会话密钥。
  • 优点:

    • 保密性和认证性均非常强
    • 既可防止被动攻击,又可防止主动攻击

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C -> Cpp】由C迈向Cpp (6):静态、友元和内部类

标题&#xff1a;【C -&#xff1e; Cpp】由C迈向Cpp &#xff08;6&#xff09;&#xff1a;静态、友元和内部类 水墨不写bug &#xff08;图片来源于网络&#xff09; 目录 &#xff08;一&#xff09;静态成员 &#xff08;二&#xff09;友元 &#xff08;三&#xff09…

Zynq UltraScale+ RFSoC 配置存储器器件

Zynq UltraScale RFSoC 配置存储器器件 下表所示闪存器件支持通过 Vivado 软件对 Zynq UltraScale RFSoC 器件执行擦除、空白检查、编程和验证等配置操 作。 本附录中的表格所列赛灵思系列非易失性存储器将不断保持更新 &#xff0c; 并支持通过 Vivado 软件对其中所列…

扭亏为盈的赛力斯,真正进入稳态了吗?

“72小时内大定破1万台”。5月15日&#xff0c;问界新M5开启全国大规模交付&#xff0c;从当前取得的成绩来看&#xff0c;赛力斯的“富贵”似乎还将延续。 其实&#xff0c;此前基于问界新M7等车型的爆火&#xff0c;赛力斯已经找到了创收轨道。财报显示&#xff0c;2024年一…

无代码无国界:我们正在走向软件安全的狂野西部吗?

我们使用的几乎所有东西都是基于代码构建的&#xff0c;从汽车到智能冰箱再到门铃。在企业中&#xff0c;无数的应用程序保持设备、工作流程和操作的运行。因此&#xff0c;当早期的无代码开发平台于 2010 年推出时&#xff0c;承诺为公民开发人员提供更易于访问的应用程序开发…

用友GRP-U8 bx_dj_check.jsp SQL注入漏洞复现(XVE-2024-10537)

0x01 免责声明 请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;作者不为此承担任何责任。工具来自网络&#xff0c;安全性自测&#xff0c;如有侵权请联系删…

【2024华为HCIP831 | 高级网络工程师之路】刷题日记(18)

个人名片&#xff1a;&#x1faaa; &#x1f43c;作者简介&#xff1a;一名大三在校生&#xff0c;喜欢AI编程&#x1f38b; &#x1f43b;‍❄️个人主页&#x1f947;&#xff1a;落798. &#x1f43c;个人WeChat&#xff1a;hmmwx53 &#x1f54a;️系列专栏&#xff1a;&a…

动态手势识别(VGG11)

学校的大作业要做一个视频图像处理相关的&#xff0c;就做了动态手势识别 VGG代码 import torch import torch.nn as nnclass VGG_11_3D(nn.Module):def __init__(self, num_classes, pretrainedFalse):super(VGG_11_3D, self).__init__()self.conv1 nn.Conv3d(3, 64, kernel…

labelimg删除用不到的标签(yolo格式)以及 下载使用

问题&#xff1a;当我们标注完成新的类别后后直接删除classes.txt中不需要的类别之后再次打开labelimg会闪退&#xff0c;如何删除不需要的标签并且能够正确运行呢&#xff1f;&#xff08;yolo格式&#xff09; 原因&#xff1a;当我们打开labelimg进行标注的时候&#xff0c…

JumpServer堡垒机简单式部署与管理(v3.10.8) 上

目录 一. 环境准备 1.1 关闭防火墙 1.2 永久关闭SEliunx 1.3 重启虚拟机让seliunx文件生效 1.4 配置阿里源镜像 二. 安装部署 2.1 上传压缩包到虚拟机&#xff08;v3.10.8&#xff09; 2.2 解压 2.3 一键安装部署 2.4 安装完成界面 2.5 启动 2.6 浏览器访问IP 2.7 使…

“图生视频”技术创新:剪贴画秒变动画生成的实验验证与分析

在最近的研究进展中&#xff0c;AniClipart系统的问世标志着文本到视频生成技术的一个重要里程碑。这一系统由香港城市大学和莫纳什大学的研究者们共同开发&#xff0c;旨在解决将静态剪贴画图像根据文本提示自动转换成动画序列的挑战。传统的动画制作流程繁琐且耗时&#xff0…

基于物联网的教室人数检测系统-设计说明书

设计摘要&#xff1a; 本设计基于物联网技术&#xff0c;实现了一个教室人数检测系统。系统利用STM32单片机作为中控&#xff0c;通过红外对管检测人员进出教室&#xff0c;并实时统计应到人数和实到人数&#xff0c;同时使用OLED显示屏显示相关信息。系统还通过温湿度传感器检…

掌握Linux常用命令,扫平面试需求障碍

cd 切换目录。 > cd ../ #切换到父级目录 > cd /tmp # 切换到/tmp目录 > cd ~ # 切换到当前用户的家目录 ls命令 查看文件与目录的命令&#xff0c;list 的缩写。 > ls -l #列出长数据串&#xff0c;包含文件的属性与权限数据等 > ls -a #列出隐藏…

script标签以及defer和async属性

1. <script>标签 将JavaScript代码嵌入到HTML中主要方式是使用<script>元素。 使用<script>的方式有两种&#xff1a; &#xff08;1&#xff09;直接在网页中嵌入JavaScript代码&#xff1a; <script>function sayHi() {console.log("Hi"…

FreeRTOS【6】线程优先级

1.开发背景 基于上一篇指引&#xff0c;已经了解了线程的阻塞&#xff0c;这个篇章主要介绍线程优先级的影响 2.开发需求 设计实验验证高优先级会抢占低优先级线程 CPU 3.开发环境 window10 MDK STM32F429 FreeRTOS10.3.1 4.实现步骤 1&#xff09;创建测试线程&#xff…

Rust构造JSON和解析JSON

目录 一、Rust构造JSON和解析JSON 二、知识点 serde_json JSON 一、Rust构造JSON和解析JSON 添加依赖项 cargo add serde-json 代码&#xff1a; use serde_json::{Result, Value};fn main() -> Result<()>{//构造json结构 cpu_loadlet data r#"{"…

Django Rest Framework 全局异常处理

在Django Rest Framework&#xff08;DRF&#xff09;中&#xff0c;全局异常处理是一种重要的机制&#xff0c;它可以帮助我们更好地管理API中的异常情况&#xff0c;并返回统一的错误响应。本文将详细介绍两种全局异常处理的方法&#xff1a;使用中间件&#xff08;Middlewar…

Jenkins 忘记登录密码怎么办

在安装Jenkins中遇到忘记登录密码该怎么呢&#xff1f;下面是一个解决办法 1. 先停止jenkins服务 我是用tomcat启动的jenkis 2. 找到config.yaml文件 find / -name config.xml命令执行后找到如下结果&#xff1a; /root/.jenkins/config.xml /root/.jenkins/users/admin_839…

现在适合进入AIGC行业吗?

现在适合进入AIGC行业吗&#xff1f; 随着人工智能生成内容&#xff08;AIGC&#xff09;技术的快速发展&#xff0c;越来越多的人开始关注这个行业。那么&#xff0c;现在是否是进入AIGC行业的好时机呢&#xff1f;本文将从行业前景、市场需求以及个人选择与规划三个方向进行…

3D轻量化引擎HOOPS Communicator在PLM全生命周期管理中的应用

在当今快速发展的工业领域&#xff0c;产品生命周期管理&#xff08;PLM&#xff09;是确保产品从设计到市场再到最终退役过程中信息一致性和流程效率的关键。 随着3D模型的日益复杂化和数据量的不断增长&#xff0c;传统的PLM系统面临着数据管理和渲染效率的挑战。HOOPS Comm…

【Spring之依赖注入】2. Spring处理@Async导致的循环依赖失败问题

使用异步Async注解后导致的循环依赖失败详解 1 问题复现1.1 配置类1.2 定义Service1.3 定义Controller1.4 启动springboot报错 2.原因分析&#xff1a;看Async标记的bean注入时机2.1 循环依赖生成过程2.2 自检程序 doCreateBean方法 3.解决方案3.1 懒加载Lazy3.1.1 将Lazy写到A…