现代密码学复习——第一章

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 现代密码学复习——第一章

第一讲:保密学基础

1:保密学的基本概念

什么是保密学?

定义:保密学是研究信息系统安全保密的科学,它包括两个分支,一是密码学,对信息进行编码实现隐蔽信息的科学,二是密码分析学,研究分析破译密码的科学。二者相互对立,而又互相促进地向前发展。

其他相关概念

image.png

从上图我们可以看出,加密器和解密器分别对应一个密钥,主动攻击是从信道进行介入的,被动攻击也是从信道进行窃听的。

保密系统相关参数解读

1:明文消息空间M

2:密文消息空间C

3:密钥空间K1和K2、在单钥体制下,K=K1=K2,此时密钥k∈K,需经安全的密钥信道由发方传给收方。

4:加密变换与解密变换

保密系统应当满足的要求

image.png

认证与认证系统

  • 认证系统

为了防止消息被篡改、删除、重放和伪造的一种有效方法,使发送的消息具有被验证的能力,使接收者或第三者能够识别和确认消息的真伪,实现这类功能的密码系统被称作为认证系统。

  • 保密性

保密性是使截获者在不知密钥条件下不能解读密文的内容。

  • 认证性

让任何不知密钥的人不能构造一个密报,让合法接收者明白哪些是合法的消息。认证理论和技术是保密学研究的一个重要领域。如传统的手写签字正在被更迅速、更经济和更安全的数字签字替代。

安全认证系统应当满足下面四个条件

序号 条件
1 合法接收者能够检验消息的合法性和真实性
2 消息的发送者对所发送的消息不能依赖
3 除了合法的消息发送者之外,其他人不能伪造合法的消息,而且在已经明文和密文的情况下不能推断出密钥和伪造密文
4 必要时可由第三方做出仲裁

完整性

在有自然和人为干扰条件下,系统保持检测错误和恢复消息和发送消息一致性的能力。实际中常常借助与纠检错技术和杂凑技术来保证消息的完整性。

2:密码体制分类

密码体制分类

  • 单钥体制:加密密钥和解密密钥相同。
  • 双钥体制:加密密钥和解密密钥不同。

单钥体制的两个主要方面

  • 密钥产生
  • 密钥管理

单钥保密体制流程图

image.png

单钥体制的分类

  • 流密码
  • 分组密码
    单钥体制不仅可以用于数据加密,也可用于消息的认证。

什么是公钥体制(也叫双钥体制)?

Diffie和Hellman1976年首次提出,每个用户都有一对选定的密钥(公钥K1和私钥K2),公开的密钥K1可以像电话号码一样进行公布。

  • 双钥体制是如何进行加解密的?

公钥体制的主要特点:加密和解密的能力分开

  • 公钥加密私钥解密:多个用户加密的消息,只能由一个用户进行解读,可用于公共网络中实现保密通信。
  • 私钥加密公钥解密 :只能由一个用户加密消息,而使多个用户可以解读,可用于认证系统中对消息进行数字签名。
  • 无需事先分配密钥。

双钥保密体制

  • 安全保障:从公开密钥Kb1和密文c不能推出B的私钥Kb2和明文。
  • 由于任何人都可以使用B的公钥进行加密,所以密文c不具有认证性。

双钥认证体制

双钥保密和认证体制

所谓的双钥保密和认证体制就是说,假如A想发送消息给B,先用A的私钥对明文m进行加密,然后再使用B的公钥进行加密,这样就进行了两次加密过程,在解密的时候同样也是需要两次,先是使用B的私钥进行一次解密,然后使用A的公钥进行一次解密,这样B就可以获得需要的明文。


相关文章
|
6月前
|
机器学习/深度学习 算法 JavaScript
密码学系列之四:一文搞懂序列密码
密码学系列之四:一文搞懂序列密码
|
1月前
|
存储 算法 区块链
第一章区块链基础概念
第一章区块链基础概念
42 0
|
存储 自然语言处理 算法
【趣学算法】第一章读书笔记
宕机就是死机,指计算机无法正常工作,包括一切原因导致的死机。计算机主机出现意外故障而死机,一些服务器死锁,服务器的某些服务停止运行等,都可以称为宕机。
2018《软件工程导论》知识点复习【第一章】
2018《软件工程导论》知识点复习【第一章】
77 0
2018《软件工程导论》知识点复习【第一章】
2018《软件工程导论》知识点复习【第三章】
2018《软件工程导论》知识点复习【第三章】
70 0
2018《软件工程导论》知识点复习【第三章】
2018《软件工程导论》知识点复习【第二章】
2018《软件工程导论》知识点复习【第二章】
83 0
2018《软件工程导论》知识点复习【第二章】
2018《软件工程导论》知识点复习【第五章】
2018《软件工程导论》知识点复习【第五章】
69 0
2018《软件工程导论》知识点复习【第五章】
|
C++ iOS开发
C++ 基础复习系列 1
C++ 基础复习系列 1
102 0
C++ 基础复习系列 1
|
算法 索引
算法入门很简单:算法题的破解之道上篇
滑动窗口用于对给定数组和链表的特定窗口大小执行所需的操作 1.问题输入是线性数据结构。例如链表、数组或字符串 2.要求找到最长/最短的子字符串,子数组或所需的值
C#编程-15:基本概念复习
C#编程-15:基本概念复习
112 0
C#编程-15:基本概念复习