CISSP学习笔记: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 散列函数

  • 散列函数的用途: 产生消息摘要
  • 散列函数的基本要求:
    1. 输入值可以是任意长度
    2. 输出值具有固定长度
    3. 散列函数在计算任何输入值要相对容易
    4. 散列函数是单向的
    5. 散列函数是不会发生冲突的

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 证书的生成与撤销

  1. 注册
    • 采取某种方式向证书授权机构证明身份的过程被称为注册
  2. 验证
    • 通过CA的公钥检查CA的数字签名来验证证书,接着检查证书没在CRL(证书撤销列表)
  3. 撤销
    • 证书撤销原因:证书遭到破坏、证书被错误的发放、证书的细节发生变化、安全性关联发生变化
    • 证书撤销的技术:
    • 证书撤销列表:缺点是必须顶起下载并交叉参照,证书的撤销和通知用户撤销之间存在时间延迟
    • 联机证书状态协议:解决认证撤销列表的固有延迟

7.4.4 非对称秘钥的管理

  • 选择加密系统
  • 选择秘钥
  • 使用公钥加密时,一定要保证私钥的机密性
  • 秘钥在服务一段时期后应当停止使用
  • 秘钥备份

7.5 密码学的应用

7.5.1 便携式设备

  • 目前主流操作系统都包括磁盘加密功能、商业工具提供额外的功能和管理能力

7.5.2 电子邮件

  1. 电子邮件规则
    • 邮件机密性,加密邮件
    • 邮件完整性,进行散列运算
    • 邮件身份认证和完整性,进行数字化签名
    • 邮件机密性、完整性、身份认证和不可否认性,对邮件加密和数字化签名
  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 网络连接

  1. 链路加密
    • 链路加密使用软件或硬件解决在两个点之间建立一条安全隧道
    • 端到端加密有终于保护双方之间的通信安全,并且可以独立于链路加密实施
    • 链路加密和端到端的加密区别:链路加密中,所有的数据都会被加密,下一条重新解密然后加密,降低了路由速度,端到端的加密不加密头、尾、地址和路由数据,容易被嗅探和偷听者攻击
    • SSH是一个端到端的加密
  2. IPSec(Internet密钥交换(IKE)解决了在不安全的网络环境(如Internet)中安全地建立或更新共享密钥的问题。)
    • IPSec通过公钥密码学提供加密、访问控制、不可否认性以及消息身份认证,并且一般使用IP协议
    • IPSec组件:
      • 身份验证头(AH),提供完整性和不可否认性的保证、提供身份认证和访问控制,并可以防止重放攻击
      • 安全封装有效载荷(ESP) 提供数据包内容的机密性和完整性,提供有限的身份认证,防止重放攻击
    • IPSec两种操作模式:
      • 运输模式:只有数据包有效载荷被加密,为对等通信设计
      • 隧道模式:整个数据包都会被加密,为网关间通信设计
  3. ISAKMP(网络安全关联秘钥管理协议)
    • 通过协商、建立、修改和删除安全关联为IPSec提供后台的安全支持服务
    • ISAKMP基本要求:
      • 对通信对等进行身份关联
      • 建立并管理安全关联
      • 提供秘钥生成机制
      • 防止遭受威胁
  4. 无线互联
  • 有限等价隐私(WEP)
    • WiFi安全访问:通过TKIP(临时秘钥完整协议)消除危害WEP的密码学弱点(客户端到无线接入点)

7.6 密码学攻击

  • 分析攻击:试图降低算法复杂性的代数运算,关注算法本身的逻辑
  • 实现攻击:利用密码学系统的实现中的弱点,涉及错误与权限,编写加密系统程序所使用的方法
  • 统计攻击:试图发现驻留密码学应用程序的硬件或操作系统中的漏洞
  • 蛮力攻击:尝试有可能的、有效的秘钥或密码组合,彩虹表和转为蛮力涉及和开发的专业化、可扩展的硬件
  • 频率分析和仅知密文攻击:拥有加密后的密文信息,即仅知密文攻击;频率分析就是一种已证明可行的对抗简单密码的技术
  • 已知明文攻击:攻击者具有已加密消息的副本以及用以产生密文的明文消息
  • 选定密文攻击:攻击者能够解密所选的部分密文信息,并且可以使用已解密的部分消息来发现秘钥
  • 选定明文攻击:攻击者能够加密所选的明文信息,可以分析加密算法输出的密文
  • 中间相遇攻击:针对使用两轮加密的算法
  • 中间人攻击:怀有恶意的人置身于通信双方之间的位置并截获所有的通信
  • 生日攻击:冲突攻击或逆向散列匹配,寻找散列函数一一对应特性中的缺陷,基于两个不同的消息使用相同的散列函数产生共同的消息摘要的概率
  • 重放攻击:拦截通信双方的加密消息,重放捕捉的信息以打开新的会话

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

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

相关文章

[论文笔记]UNILM

引言 今天带来论文Unified Language Model Pre-training for Natural Language Understanding and Generation的笔记,论文标题是 统一预训练语言模型用于自然语言理解和生成。 本篇工作提出了一个新的统一预训练语言模型(Unifield pre-trained Language Model,UniLM),可以同…

Linux基本操作符(2)

W...Y的主页 😊 代码仓库分享 💕 关于Linux的操作符,在上篇博客中我们已经讲述了一些,都是Linux最基本的操作符。今天我们继续了解一些关于对文件及目录增删查改的操作符,话不多说我们直接上内容。 目录 rm指令的回…

Git/GitHub/Idea的搭配使用

目录 1. Git 下载安装1.1. 下载安装1.2. 配置 GitHub 秘钥 2. Idea 配置 Git3. Idea 配置 GitHub3.1. 获取 GitHub Token3.2. Idea 根据 Token 登录 GitHub3.3. Idea 提交代码到远程仓库3.3.1. 配置本地仓库3.3.2. GitHub 创建远程仓库1. 创建单层目录2. 创建多层目录3. 删除目…

大数据-玩转数据-Flink Sql 窗口

一、说明 时间语义,要配合窗口操作才能发挥作用。最主要的用途,当然就是开窗口然后根据时间段做计算了。Table API和SQL中,主要有两种窗口:分组窗口(Group Windows)和 含Over字句窗口(Over Win…

卤制品配送经营商城小程序的用处是什么

卤制品也是食品领域重要的分支,尤其对年轻人来说,只要干净卫生好吃价格合理,那复购率宣传性自是不用说,而随着互联网发展,传统线下门店也须要通过线上破解难题或进一步扩大生意。 而商城小程序无疑是商家通过线上私域…

字符串函数与内存函数讲解

文章目录 前言一、字符串函数1.求字符串长度strlen 2.长度不受限制的字符串函数(1)strcpy(2)strcat(3)strcmp 3.长度受限制的字符串函数(1)strncpy(2)strncat(3)strncmp 4.字符串查找(1)strstr(2)strtok 5.错误信息报告(1)strerror(2)perror 二、内存函数1.memcpy2.memmove3.me…

Neural Networks for Fingerprint Recognition

Neural Computation ( IF 3.278 ) 摘要: 在采集指纹图像数据库后,设计了一种用于指纹识别的神经网络算法。当给出一对指纹图像时,算法输出两个图像来自同一手指的概率估计值。在一个实验中,神经网络使用几百对图像进行训练&…

第 365 场 LeetCode 周赛题解

A 有序三元组中的最大值 I 参考 B B B 题做法… class Solution { public:using ll long long;long long maximumTripletValue(vector<int> &nums) {int n nums.size();vector<int> suf(n);partial_sum(nums.rbegin(), nums.rend(), suf.rbegin(), [](int x…

golang工程——protobuf使用及原理

相关文档 源码&#xff1a;https://github.com/grpc/grpc-go 官方文档&#xff1a;https://www.grpc.io/docs/what-is-grpc/introduction/ protobuf编译器源码&#xff1a;https://github.com/protocolbuffers/protobuf proto3文档&#xff1a;https://protobuf.dev/programmin…

加入PreAuthorize注解鉴权之后NullPointerException报错

记录一次很坑的bug&#xff0c;加入PreAuthorize注解鉴权之后NullPointerException报错&#xff0c;按理来说没有权限应该403报错&#xff0c;但是这个是500报错&#xff0c;原因是因为controller层的service注入失败&#xff0c;然而我去掉注解后service注入成功&#xff0c;并…

使用VSCODE 调试ros2具体设置

vscode 调试 ROS2 张得帅&#xff01; 于 2023-09-09 15:39:39 发布 456 收藏 1 文章标签&#xff1a; vscode ros2 版权 1、在下列目录同层级找到.vscode文件夹 . ├── build ├── install ├── log └── src 2、 安装ros插件 3、创建tasks.json文件&#xff0c;添…

二十七、[进阶]MySQL默认存储引擎InnoDB的简单介绍

1、MySQL体系结构 MySQL大致可以分为连接层、服务层、引擎层、存储层四个层&#xff0c;这里需要注意&#xff0c;索引的结构操作是在存储引擎层完成的&#xff0c;所以不同的存储引擎&#xff0c;索引的结构是不一样的。 &#xff08;1&#xff09;体系结构示意图 &#xff0…

国庆10.01

TCPselect 代码 服务器 #include<myhead.h> #include<sqlite3.h> #define PORT 6666 //端口号 #define IP "192.168.0.104" //IP地址//键盘事件 int jp(fd_set tempfds,int maxfd) {char buf[128] ""; //用来接收数据char buf1[128] …

【算法|贪心算法系列No.2】leetcode2208. 将数组和减半的最少操作次数

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希望…

Spring注册Bean系列--方法1:@Component

原文网址&#xff1a;Spring注册Bean系列--方法1&#xff1a;Component_IT利刃出鞘的博客-CSDN博客 简介 本文介绍Spring注册Bean的方法&#xff1a;Component。 注册Bean的方法我写了一个系列&#xff0c;见&#xff1a;Spring注册Bean(提供Bean)系列--方法大全_IT利刃出鞘…

开绕组电机零序Bakc EMF-based无感控制以及正交锁相环inverse Park-based

前言 最近看论文遇到了基于反Park变换的锁相环&#xff0c;用于从开绕组永磁同步电机零序电压信号中提取转子速度与位置信息&#xff0c;实现无感控制。在此记录 基于零序Back EMF的转子估算 开绕组电机的零序反电动势 e 0 − 3 ω e ψ 0 s i n 3 θ e e_0-3\omega_e\psi_…

​68条萝卜刀《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书

​68条萝卜刀《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书 ​68条萝卜刀《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书

借助 ControlNet 生成艺术二维码 – 基于 Stable Diffusion 的 AI 绘画方案

背景介绍 在过去的数月中&#xff0c;亚马逊云科技已经推出了多篇博文&#xff0c;来介绍如何在亚马逊云科技上部署 Stable Diffusion&#xff0c;或是如何结合 Amazon SageMaker 与 Stable Diffusion 进行模型训练和推理任务。 为了帮助客户快速、安全地在亚马逊云科技上构建、…

【QT开发(6)】0926-QT 中加入 fastDDS 通信库的程序使用说明

在智能驾驶中&#xff0c;DDS有可能被广泛使用&#xff0c;因此推出这篇说明教程。 1、基于【QT开发&#xff08;5&#xff09;】教程的项目文档进行开发 2、安装DDS 查看《【eProsima Fast DDS&#xff08;1&#xff09;】安装eProsima Fast DDS》 至少安装: foonathan_m…

LeetCode每日一题:2136. 全部开花的最早一天(2023.9.30 C++)

目录 2136. 全部开花的最早一天 题目描述&#xff1a; 实现代码与解析&#xff1a; 贪心 原理思路&#xff1a; 2136. 全部开花的最早一天 题目描述&#xff1a; 你有 n 枚花的种子。每枚种子必须先种下&#xff0c;才能开始生长、开花。播种需要时间&#xff0c;种子的生…