当前位置: 首页 > news >正文

系统架构设计专业技能 · 系统安全分析与设计(四)【加解密、数字信封、信息摘要、数字签名、数字书证、网络安全、信息安全】

系列文章目录

系统架构设计专业技能 · 网络规划与设计(三)【系统架构设计师】
系统架构设计专业技能 · 系统安全分析与设计(四)【系统架构设计师】
系统架构设计高级技能 · 软件架构设计(一)【系统架构设计师】
系统架构设计高级技能 · 系统质量属性与架构评估(二)【系统架构设计师】
系统架构设计高级技能 · 软件可靠性分析与设计(三)【系统架构设计师】

现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。
Now everything is for the future of dream weaving wings, let the dream fly in reality.

系统架构设计专业技能 · 系统安全分析与设计(四)

  • 系列文章目录
  • 一、安全基础技术
    • 1.1 对称与非对称加密
      • 1.1.1 对称加密技术
      • 1.1.2 非对称加密技术
    • 1.2 信息摘要
    • 1.3 数字签名
    • 1.4 数字信封
    • 1.6 数字证书
    • 1.7 信息摘要、数字签名、数字信封综合运用
    • 1.8 PKI公钥体系
  • 二、网络安全
    • 2.1 安全协议
    • 2.2 网络攻击
    • 2.3 等级保护标准
  • 三、信息安全
    • 3.1 系统安全防范体系层级
    • 3.2 信息安全体系结构

在这里插入图片描述

一、安全基础技术

1.1 对称与非对称加密

数据加密是防止未经授权的用户访问敏感信息的手段,保障系统的机密性要素。数据加密有对称加密算法和非对称加密算法两种。

1.1.1 对称加密技术

对称秘钥算法的加密秘钥和解密秘钥相同,又称共享密钥算法。

缺点

  • 加密强度不高,但效率高。
  • 秘钥分发困难。

常见的 对称加密密钥算法 有:

  • DES:秘钥加密块算法(Data Encryption Standard,DES),替换 + 移位,明文切分64位的块(既分组),由56位的秘钥控制变换成64位的密文。速度快,秘钥易产生。
  • 3DES:三重DES(Triple-DES)是EDS的改进算法,使用两把56位的秘钥对明文做三次DES加解密,秘钥长度112位,两个56位密钥K1、K2
    加密:K1加密 → K2解密 → K1加密
    解密:K1解密 → K2加密 → K1解密
  • RC-5:RSA数据安全公司的很多产品都使用了RC-5。
  • IDEA:国际数据加密算法(International Data Encryption Algorithm,IDEA),分组长度64位,秘钥长度128位,已经称为全球通用的加密标准。
  • AES:高级加密标准(Advanced Encryption Standard,AES)分组长度128位,支持128位、192位和256位3种秘钥长度,用于替换脆弱的DES算法,且可以通过软件或硬件实现高速加解密。
  • SM4国密算法,分组长度和密钥长度都是128位。

1.1.2 非对称加密技术

非对称密钥加密算法的加密秘钥和解密秘钥不相同,又称为不共享密钥算法或公钥加密算法。
在非对称加密算法中:

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

缺点

  • 加密速度慢。

常见的 对非称加密密钥算法 有:

  • RSA:(Rivest,Shamir and Adleman)是一种国际通用的公钥加密算法,安全性基于大素数分解的困难性,秘钥的长度可以选择,但目前安全的秘钥长度已经高达2048位。RSA计算速度比同样安全级别的对称加密算法慢1000倍左右。2048位或1024位密钥、计算量极大、难破解。
  • Elgamal:安全性依赖于计算有限域上离散岁数这一难题。
  • ECC:椭圆曲线算法。
  • SM2国密算法:基于椭圆曲线离散对数问题,在相同安全程度的要求下,秘钥长度和计算规律都比RSA小得多。
    在这里插入图片描述

1.2 信息摘要

信息摘要:单向散列函数,固定长度的散列值
信息摘要是单向的,不能被还原。

常用的消息摘要算法有 MD5,SHA 等,市场上广泛使用的MD5,SHA算法的散列值分别为128和160位,由于 SHA通常采用的秘钥长度较长,因此安全性高于MD5

主要作用:防止原文内容被篡改

1.3 数字签名

数字签名是公钥加密技术与数字摘要技术的应用。数字签名的条件是:可信、不可伪造、不可重用、不可改变和不可抵赖。
在这里插入图片描述

实际应用时先对文件做摘要,再对摘要签名,这样可以大大提升数字签名的速度。
同时摘要的泄露不影响文件的保密。

1.4 数字信封

数字信封是将对称密钥通过非对称加密(即:有公钥和私钥两个)的结果分发的方法。数字信封是实现信息保密性验证的技术。

PKCS#7中将数字信封作为术语进行定义,而在正文中对进行了如下解释: 数字信封包含被加密的内容和被加密的用于加密该内容的密钥

虽然经常使用接收方的公钥来加密“加密密钥”,但这并不是必须的,也可以使用发送方和接收方预共享的对称密钥来加密。当接收方收到数字信封时,先用私钥或预共享密钥解密,得到“加密密钥”,再用该密钥解密密文,获得原文。数字信封技术使用两层加密体系。

数字信封是一种综合利用了对称加密技术和非对称加密技术两者的优点进行信息安全传输的一种技术。数字信封既发挥了对称加密算法速度快、安全性好的优点,又发挥了非对称加密算法密钥管理方便的优点。

1.6 数字证书

数字证书的内容

  • 证书的 版本信息
  • 证书 序列号,每个证书都有一个唯一的证书序列号;
  • 证书所使用的签名算法;
  • 证书的发行机构,命名规则一般采用X.500格式;
  • 证书的 有效期,现在通用的证书一般采用UTC时间格式,它的计时范围为1950 - 2049;
  • 证书所有人的名称,命名规则一般采用X.500的格式;
  • 证书所有人的 公开密钥
  • 证书发行者对证书的签名

1.7 信息摘要、数字签名、数字信封综合运用

例如:
请设计一个安全邮件传输系统,要求:
该邮件以加密方式传输,邮件最大附件内容可达2GB,发送者不可抵赖,若邮件被第三方截获,第三方无法篡改。

设计如下
在这里插入图片描述

1.8 PKI公钥体系

在这里插入图片描述
CA(Certificate Authority)认证中心
RA(Registration Authority)注册审批机构
证书受理点
秘钥管理中心 - KMC
在这里插入图片描述

二、网络安全

2.1 安全协议

各个层次的安全保障
在这里插入图片描述

2.2 网络攻击

被动攻击:收集信息为主,破坏保密性。
在这里插入图片描述

主动攻击:主动贡酒的类别主要有:中断(破坏可用性)、篡改(破坏完整性)、伪造(破坏真实性)

在这里插入图片描述

2.3 等级保护标准

安全级别用户自主保护级最低,访问验证保护级最高

在这里插入图片描述

安全保护等级
在这里插入图片描述

三、信息安全

3.1 系统安全防范体系层级

安全防范体系的层级划分:

  • (1)物理环境的安全性
    包括通信线路、物理设备和机房的安全等。
  • (2)操作系统的安全性
    主要表现在三个方面,一是操作系统本身的缺陷带来的不安全因素,主要包括身份认证、访问控制和系统漏洞等;二是对操作系统安全配置问题;三是病毒对操作系统的威胁。
  • (3)网络的安全性
    网络层的安全问题主要体现在计算机网络方面的安全性,包括网络层身份认证、网络资源的访问控制、数据传输的保密与完整性、远程接入的安全、域名系统的安全、路由系统的安全、入侵检测手段和网络设施防病毒等。
  • (4)应用的安全性
    由提供服务所采用的应用软件和数据的安全性产生,包括Web服务、电子邮件系统和DNS等。此外,还包括病毒对系统的威胁。
  • (5)管理的安全性
    包括安全技术和设备的管理、安全管理制度、部门与人员的组织规则等。

3.2 信息安全体系结构

在这里插入图片描述

安全服务
在这里插入图片描述

相关文章:

系统架构设计专业技能 · 系统安全分析与设计(四)【加解密、数字信封、信息摘要、数字签名、数字书证、网络安全、信息安全】

系列文章目录 系统架构设计专业技能 网络规划与设计(三)【系统架构设计师】 系统架构设计专业技能 系统安全分析与设计(四)【系统架构设计师】 系统架构设计高级技能 软件架构设计(一)【系统架构设计师…...

基于WebSocket的在线文字聊天室

与Ajax不同,WebSocket可以使服务端主动向客户发送响应,本案例就是基于WebSocket的一个在线聊天室,不过功能比较简单,只能满足文字交流。演示如下。 案例学习于b站up主,链接 。这位up主讲的非常清楚,值得去学…...

VS Code中C++程序的调试(Debug)功能

有一个.vscode文件,存放当前工作区相关配置文件的目录。 launch.json {"version": "0.2.0","configurations": [{"name": "gcc.exe - 生成和调试活动文件", // 该调试任务的名字,启动调试时会在待…...

C#四个字节十六进制与单精度浮点数互转

C#四个字节十六进制与单精度浮点数互转可以使用自带的函数,也可以自己写 实例如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace floatDemo {class Program{//首先设置:项目->属性…...

Springloc和aop的基础概念

什么是控制反转和依赖注入? 控制反转(IoC)和依赖注入(DI)是软件开发中常用的编程范式, 它们极大地提高了代码可维护性和可复用性,简化了代码结构。 什么是控制反转(IoC) 控制反转是- - 种编程模式,它将应用程序中的控制权转移到…...

算法练习Day43|● 518. 零钱兑换 II ● 377. 组合总和 Ⅳ

LeetCode:518. 零钱兑换 II 518. 零钱兑换 II - 力扣(LeetCode) 1.思路 求组合数,先遍历物品再遍历背包,dp[]数组累加即可。 2.代码实现 1class Solution {2 public int change(int amount, int[] coins) {34 int[…...

人类:我觉得1+1=956446,你觉得呢?大模型:啊对对对

大模型太「听话」了怎么办? 大型语言模型(LLM)的自然语言理解与生成能力一直备受称赞,特别是 ChatGPT 等对话式语言模型能够与人类流畅、自然地进行多轮对话。然而,最近一篇 Google DeepMind 的论文研究发现 LLM 普遍存…...

Offset Explorer

Offset Explorer 简介下载安装 简介 Offset Explorer(以前称为Kafka Tool)是一个用于管理和使Apache Kafka 集群的GUI应用程序。它提供了一个直观的UI,允许人们快速查看Kafka集群中的对象以及存储在集群主题中的消息。它包含面向开发人员和管…...

查看CentOS版本及系统位数与设置CentOS 7.9 2009 防火墙配置放开端口的命令与过程

一、查看CentOS版本及系统位数 1.1 命令汇总 //1、安装redhat-lsb yum install -y redhat-lsb//2、查看系统版本信息 lsb_release -a //3、查看系统位数 getconf LONG_BIT1.2 截图 二、设置CentOS7.9 2009 防火墙配置放开端口 2.1 命令汇总 //禁止防火墙开机启动。这种方法方…...

前端css高级

day08-CSS高级 目标:掌握定位的作用及特点;掌握 CSS 高级技巧 01-定位 作用:灵活的改变盒子在网页中的位置 实现: 1.定位模式:position 2.边偏移:设置盒子的位置 leftrighttopbottom 相对定位 posit…...

华为OD真题--字符串中最小的整数和--带答案

1. 华为OD机考题 答案 2023华为OD统一考试(AB卷)题库清单-带答案(持续更新) 2023年华为OD真题机考题库大全-带答案(持续更新) 2. 面试题 一手真实java面试题:2023年各大公司java面试真题汇总--…...

9月30日生效:微软官方服务协议更新,防止人工智能进行逆向工程

微软最近更新了其官方服务协议,新规则将于9月30日生效,包括多个新增和变化,具体细节请参考最新的微软服务协议。 微软最新更新涉及使用Bing Chat聊天机器人、Windows Copilot和Microsoft 365 Copilot服务,引起了广泛关注。这次更新…...

HarmonyOS教育类APP项目实战系列课结课考试答案(1-10讲)80分就合格

王丹辉(第一讲):HarmonyOS教育类APP项目实战开课及低代码初体验 结课考试 及格分80/ 满分100 评价 判断题 1. DevEco Studio不能同时支持HarmonyOS和OpenHarmony应用/服务开发 正确(True)错误(False) 回答正确 2. DevEco Studio…...

为什么要学习Oracle技术?

为什么要学习Oracle技术? 众所周知,Oracle占据着企业数据库领域超过48.1%的市场份额,成为高端企业数据库软件的绝对领导者。随着时间的推移,企业数据库的规模不断扩大,富有经验的资深OracleDBA越来越受到企业的欢迎。我们从著名的…...

ffmpeg+intel核显实现硬解码

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、前言二、检查方法1.图形法2.nvidia-smi3.intel-gpu-tools 三、安装使用1.libva-dev2.libva-utils3.编译安装4.测试1.vainfo2.ffmpeg测试解码 总结 前言 之…...

电脑开机出现Boot Device怎么办?

开机出现Boot Device这个问题很常见,有时还会出现No Boot Device的问题,虽然多了一个单词,但意思是相同的,这些问题说明你的系统盘出现了问题,或者是引导出现了问题。这该如何解决呢? 方法1. 检查主板或硬盘…...

面试题. 一次编辑

字符串有三种编辑操作:插入一个英文字符、删除一个英文字符或者替换一个英文字符。 给定两个字符串,编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first "pale" second "ple" 输出: True 示例 2: 输入: first &…...

Unity悬浮显示提示内容

在编写unity时,需要实现鼠标在某一个按钮上时,就显示其子物体中对应的下拉菜单,为此编写了一个公共类,对于需要悬浮显示的控件均可挂载此类。代码如下: using UnityEngine; using UnityEngine.EventSystems; using Un…...

变形金刚在图像识别方面比CNN更好吗?

链接到文 — https://arxiv.org/pdf/2010.11929.pdf 一、说明 如今,在自然语言处理(NLP)任务中,转换器已成为goto架构(例如BERT,GPT-3等)。另一方面,变压器在计算机视觉任务中的使用…...

【Javascript】ES6新增之类的认识

在现代编程语言中,类是面向对象编程范式中的核心概念之一。 与函数类似,类本质上是一种特殊的函数,它允许我们将数据和操作封装在一起,以创建具有共同行为和状态的对象。 在类的世界里,我们有类表达式和类声明&#xf…...

PHP和Node.js哪个更爽?

先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

webpack面试题

面试题:webpack介绍和简单使用 一、webpack(模块化打包工具)1. webpack是把项目当作一个整体,通过给定的一个主文件,webpack将从这个主文件开始找到你项目当中的所有依赖文件,使用loaders来处理它们&#x…...

ArcPy扩展模块的使用(3)

管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如,可以更新、修复或替换图层数据源,修改图层的符号系统,甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...

起重机起升机构的安全装置有哪些?

起重机起升机构的安全装置是保障吊装作业安全的关键部件,主要用于防止超载、失控、断绳等危险情况。以下是常见的安全装置及其功能和原理: 一、超载保护装置(核心安全装置) 1. 起重量限制器 功能:实时监测起升载荷&a…...