CISSP 第7章:PKI和密码学应用
第七章 PKI和密码学应用
7.1 非对称密码学
对称密码系统具有共享的秘钥系统,从而产生了安全秘钥分发的问题
非对称密码学使用公钥和私钥对,无需支出复杂密码分发系统
7.1.1 公钥与私钥
7.1.2 RSA(兼具加密和数字签名)
RSA算法依赖于大质数在因素分解时固有的计算难度
7.1.3 EI Gamal
EI Gamal优点: 公开发布,使用免费(扩展了Diffie-Hellman秘钥交换协议,支持消息的加解密)
缺点:算法加密的任何消息的长度都加倍
7.1.4 椭圆曲线密码系统(ECC)
1088位的RSA秘钥相当于160位的椭圆曲线密码系统的秘钥强度
7.2 散列函数
散列函数的用途: 产生消息摘要
散列函数的基本要求:
输入值可以是任意长度
输出值具有固定长度
散列函数在计算任何输入值要相对容易
散列函数是单向的
散列函数是不会发生冲突的
7.2.1 SHA
SHA-1不安全,SHA-2理论上不安全
7.2.2 MD2
非单向函数,已不再使用
7.2.3 MD4
MD4存在消息摘要冲突,不是安全的散列算法
7.2.4 MD5
512位的消息分组,消息摘要128位
散列函数以及生成函数值的长度
7.3 数字签名
数字签名的目标
可以向接收方保证、消息确实来自自己申明的发送者,且实施了不可否认性
向接收方保证:消息在传输过程中没有改变
消息签名本身不提供隐私保护,只满足加密目标中的完整性和不可否认性
7.3.1 HMAC 基于散列的消息身份认证代码
实现了部分数字签名功能,保证了消息传输过程的完整性、但不提供不可否认性
HMAC依赖一个共享的秘钥,所以不提供不可否认性
7.3.2 数字签名标准
DSS标准加密算法
数字签名算法(DSA)
RSA算法(既能数字签名又能加密!)
椭圆曲线数字签名算法(ECDSA)
7.4 公钥基础设施(PKI)
公钥加密主要优点是原本不认识的双方之间的通信变得很容易,受信任的公钥基础设施层次使这一点称为可能
7.4.1 证书
数字证书为通信双方提供了保证,保证在与之通信的人确实具有他们所宣称的身份
7.4.2 证书授权机构
证书授权机构(CA)将基础设施绑定在一起,中立的组织机构为数字证书提供公证服务
7.4.3 证书的生成与撤销
注册
采取某种方式向证书授权机构证明身份的过程被称为注册
验证
通过CA的公钥检查CA的数字签名来验证证书,接着检查证书没在CRL(证书撤销列表)
撤销
证书撤销原因:证书遭到破坏、证书被错误的发放、证书的细节发生变化、安全性关联发生变化
证书撤销的技术:
证书撤销列表:缺点是必须顶起下载并交叉参照,证书的撤销和通知用户撤销之间存在时间延迟
联机证书状态协议:解决认证撤销列表的固有延迟
7.4.4 非对称秘钥的管理
选择加密系统
选择秘钥
使用公钥加密时,一定要保证私钥的机密性
秘钥在服务一段时期后应当停止使用
秘钥备份
7.5 密码学的应用
7.5.1 便携式设备
目前主流操作系统都包括磁盘加密功能、商业工具提供额外的功能和管理能力
7.5.2 电子邮件
电子邮件规则
邮件机密性,加密邮件
邮件完整性,进行散列运算
邮件身份认证和完整性,进行数字化签名
邮件机密性、完整性、身份认证和不可否认性,对邮件加密和数字化签名
电子邮件标准
可靠隐私(PGP)商业版RSA、IDEA加密协议,使用MD5生成消息摘要;免费版使用Diff-Hellman秘钥交换,CAST128位的加密/解密算法以及SHA-1散列函数
S/MIME(安全多用途互联网邮件扩展协议):依靠X.509证书交换密码系统秘钥,这一支持AES、3DES和RSA
7.5.3 Web应用
SSL协议,SSL的目标是建立安全的通信通道
POODLE攻击(贵宾犬攻击)的攻击表明在TLS的SSL 3.0反馈机制中存在重大缺陷,很多机构放弃对SSL的支持,依靠TLS的安全性。
隐写术和水印
隐写术:使用密码学技术在另一条消息内嵌入秘密消息的方法
水印:检测拷贝并且跟踪拷贝来源
7.5.4 数字版权管理(DRM)
音乐、电影、电子书、视频游戏、文档
7.5.5 网络连接
链路加密
链路加密使用软件或硬件解决在两个点之间建立一条安全隧道
端到端加密有终于保护双方之间的通信安全,并且可以独立于链路加密实施
链路加密和端到端的加密区别:链路加密中,所有的数据都会被加密,下一条重新解密然后加密,降低了路由速度,端到端的加密不加密头、尾、地址和路由数据,容易被嗅探和偷听者攻击
SSH是一个端到端的加密
IPSec(Internet密钥交换(IKE)解决了在不安全的网络环境(如Internet)中安全地建立或更新共享密钥的问题。)
IPSec通过公钥密码学提供加密、访问控制、不可否认性以及消息身份认证,并且一般使用IP协议
IPSec组件:
身份验证头(AH),提供完整性和不可否认性的保证、提供身份认证和访问控制,并可以防止重放攻击
安全封装有效载荷(ESP) 提供数据包内容的机密性和完整性,提供有限的身份认证,防止重放攻击
IPSec两种操作模式:
运输模式:只有数据包有效载荷被加密,为对等通信设计
隧道模式:整个数据包都会被加密,为网关间通信设计
ISAKMP(网络安全关联秘钥管理协议)
通过协商、建立、修改和删除安全关联为IPSec提供后台的安全支持服务
ISAKMP基本要求:
对通信对等进行身份关联
建立并管理安全关联
提供秘钥生成机制
防止遭受威胁
无线互联
有限等价隐私(WEP)
WiFi安全访问:(WPA )通过TKIP(临时秘钥完整协议)消除危害WEP的密码学弱点(客户端到无线接入点)
7.6 密码学攻击
分析攻击:试图降低算法复杂性的代数运算,关注算法本身的逻辑
实现攻击:利用密码学系统的实现中的弱点,涉及错误与权限,编写加密系统程序所使用的方法
统计攻击:试图发现驻留密码学应用程序的硬件或操作系统中的漏洞
蛮力攻击:尝试有可能的、有效的秘钥或密码组合,彩虹表和转为蛮力涉及和开发的专业化、可扩展的硬件
频率分析和仅知密文攻击:拥有加密后的密文信息,即仅知密文攻击;频率分析就是一种已证明可行的对抗简单密码的技术
已知明文攻击:攻击者具有已加密消息的副本以及用以产生密文的明文消息
选定密文攻击:攻击者能够解密所选的部分密文信息,并且可以使用已解密的部分消息来发现秘钥
选定明文攻击:攻击者能够加密所选的明文信息,可以分析加密算法输出的密文
中间相遇攻击:针对使用两轮加密的算法
中间人攻击:怀有恶意的人置身于通信双方之间的位置并截获所有的通信
生日攻击:冲突攻击或逆向散列匹配,寻找散列函数一一对应特性中的缺陷,基于两个不同的消息使用相同的散列函数产生共同的消息摘要的概率
重放攻击:拦截通信双方的加密消息,重放捕捉的信息以打开新的会话
————————————————
版权声明:本文为CSDN博主「北航程序员小C」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Runnymmede/article/details/133364283
相关文章:
CISSP 第7章:PKI和密码学应用
第七章 PKI和密码学应用 7.1 非对称密码学 对称密码系统具有共享的秘钥系统,从而产生了安全秘钥分发的问题 非对称密码学使用公钥和私钥对,无需支出复杂密码分发系统 7.1.1 公钥与私钥 7.1.2 RSA(兼具加密和数字签名) RSA算法依赖…...
dji uav建图导航系列()ROS中创建dji_sdk节点包(二)实现代码
在前文 【dji uav建图导航系列()ROS中创建dji_sdk节点包(一)项目结构】中简单介绍了项目的结构,和一些配置文件的代码。本文详细说明目录src下的节点源代码实现。 文章目录 1、代码结构2、PSDK部分3、ROS部分3.1、头文件3.1.1、外部调用 node_service.h3.1.2、节点类定义…...

数字化工厂产品推荐 带OPC UA的分布式IO模块
背景 近年来,为了提升在全球范围内的竞争力,制造企业希望自己工厂的机器之间协同性更强,自动化设备采集到的数据能够发挥更大的价值,越来越多的传统型工业制造企业开始加入数字化工厂建设的行列,实现智能制造。 数字化…...
使用OHOS SDK构建opus
参照OHOS IDE和SDK的安装方法配置好开发环境。 从github下载源码。 执行如下命令: git clone --depth1 https://github.com/xiph/opus进入源码所在的目录,创建批处理文件ohos_build.cmd,内容如下: echo off setlocalset OHOS_…...

K-means 聚类算法分析
算法简述 K-means 算法原理 我们假定给定数据样本 X ,包含了 n 个对象 ,其中每一个对象都具有 m 个维度的属性。而 K-means 算法的目标就是将 n 个对象依据对象间的相似性聚集到指定的 k 个类簇中,每个对象属于且仅属于一个其到类簇中心距离…...
uniapp获取定位
Uniapp 是一种跨平台应用开发框架,它能够快速地构建出针对不同平台的应用程序。在Uniapp中,实现定位功能也变得十分简单,只需要简单的配置就能轻松实现。 一、高德地图根据指定位置获取经纬度 参考地址:地理/逆地理编码-基础 API…...

Python 面向对象之反射
Python 面向对象之反射 【一】概念 反射是指通过对象的属性名或者方法名来获取对象的属性或调用方法的能力反射还指的是在程序额运行过程中可以动态获取对象的信息(属性和方法) 【二】四个内置函数 又叫做反射函数 万物皆对象(整数、字符串、函数、模块、类等等…...

HPM6750开发笔记《DMA接收和发送数据UART例程深度解析》
目录 概述: 端口设置: 代码分析: 运行现象: 概述: DMA(Direct Memory Access)是一种计算机系统中的数据传输技术,它允许数据在不经过中央处理器(CPU)的直…...
SQL IN 操作符
IN 操作符 IN 操作符允许您在 WHERE 子句中规定多个值。 SQL IN 语法 SELECT column1, column2, ... FROM table_name WHERE column IN (value1, value2, ...); 参数说明: column1, column2, ...:要选择的字段名称,可以为多个字段。如果…...

如何使用Plex在Windows系统搭建个人媒体站点公网可访问
文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频,已经算是生活中稀松平常的场景了,特别是各…...

web前端——clear可以清除浮动产生的影响
clear可以解决高度塌陷的问题,产生的副作用要小 未使用clear之前 <!DOCTYPE html> <head><meta charset"UTF-8"><title>高度塌陷相关学习</title><style>div{font-size:50px;}.box1{width:200px;height:200px;backg…...

centos用yum安装mysql详细教程
1 查询安装mysql的yum源,命令如下 ls /etc/yum.repos.d/ -l 界面如下图所示,未显示mysql的安装源 2 安装mysql相关的yum源,例如: 例如:rpm -ivh mysql57-community-release-el7.rpm 要注意 mysql的版本和系统的版本匹配 mysql57-communi…...

冲刺2024年AMC8竞赛的专题突破:匹克定律和不规则形状面积的求法
先温馨提示:2024年AMC8比赛报名今天是最后一天,如果还想参加比赛的孩子今天务必完成报名,错过今天再等一年。需要AMC8自由报名通道可以问我。 到昨天为止,六分成长已经把过去20多年的AMC8竞赛真题都给大家过了一遍,今天为大家做一…...

阿里云迁移AWS视频点播技术攻坚
文章目录 🐷 背景🦥 简述🐥 Aws服务🦜 AWS CloudFormation🐞 问题🐉 落地方案🦉 Aws vs Aliyun🍄 避坑指南 🐷 背景 由于AWS整体成本略低于阿里云,公司决定将…...
Scrum敏捷认证CSM官方认证班Certified ScrumMaster - CSM认证班
课程简介 Scrum是目前运用最为广泛的敏捷开发方法,是一个轻量级的项目管理和产品研发管理框架,旨在最短时间内交付最大价值。根据2021年全球敏捷状态报告,Scrum及Scrum衍生方法的应用占比达到81%。 在企业的敏捷转型历程中,Scru…...
深度解析qt核心机制:信号槽的多线程行为与对象的线程依附性
对象的线程依附性 每一个学过C以及系统编程的程序员,对于变量会与特定线程有关联都会感到不可思议;在qt中所说的对象的线程依附性,只是针对继承自QObject的对象而言的;对象的线程依附性,并不是代表真的某个底层线程才…...

关于时间格式yyyy-M-d或yyyy-MM-d到yyyy-MM-dd的转换
工作时遇到前端传的时间格式是"2023-12-3 17:41:52",和"2023-1-1 17:41:52"但是我想要的是"2023-12-03 17:41:52"和"2023-01-01 17:41:52"。下面给大家分享几个解决方法 方法一: 找前端!让他改&…...

【Windows】之微软输入法配置小鹤双拼
前言 Windows 自带的输入法微软输入法本身就是个最简洁、最方便的输入法,不需要去安装多余的第三方输入法软件。同时,微软中文拼音输入法支持双拼输入法,但微软自带的双拼输入法不包含小鹤双拼方案的。所以,在这里将会讲解如何配置…...

【AI】使用Jan.ai在本地部署大模型开启AI对话(含通过huggingface下载大模型,实现大模型自由)
文章目录 前言一、Jan.ai是什么?二、下载大模型1. 找到大模型文件地址2. 下载大模型3. 修改model.json文件 三、使用Jan调用大模型进行对话总结 前言 2023年是AIGC元年。以后,每个人多少都会接触到GPT带来的变化。别人都在用,我们也不能落下…...

C++摸版(初阶)----函数模版与类模版
本专栏内容为:C学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:C 🚚代码仓库:小小unicorn的代码仓库&…...

Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...