IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 密码学:密钥管理、数字签名、散列函数与证书 -> 正文阅读

[系统运维]密码学:密钥管理、数字签名、散列函数与证书

密码学的主要用途

密码学的主要用途有:

  1. 确保消息的机密性:只有得到授权的用户才能阅读消息。
  2. 确保消息的完整性:在解密时消息没有被篡改过。
  3. 确保消息来源的真实性:消息应该来自声明发送了消息的人,且他以后也不能否认曾经发送过的消息。

四种攻击手段

在消息中添加完整层和认证层,并对密钥进行安全有效的管理,有助于抵御如下四种类型的攻击:

  • 操纵:攻击者截获并篡改消息
  • 伪装:攻击者伪装为通信者。
  • 重放:记录消息并在未来重新发送消息。
  • 否认:通信者否认曾经发出的消息。

密钥交换(Diffie-Hellman)

算法描述

Alice与Bob共享一个素数p以及该素数的本原根g(均可以公开)

客户端Alice选一个随机数PrivateA作为私钥( 1 ? PrivateA ? p?1 )
通过计算得到一个公钥PublicA = g^PrivateA mod p

服务器Bob选一个随机数PrivateB作为私钥( 1 ? PrivateB ? p?1 )
通过计算得到一个公钥PublicB = g^PrivateB mod p

双方通过公网交换公钥

此时Alice知道的信息有

自己的私钥:PrivateA
自己的公钥:PublicA
Bob的公钥:PublicB

Bob同理

Alice计算共享密钥KeyA : KeyA = (PublicB) ^ PrivateA mod p
Bob计算共享密钥KeyB: KeyB = (PublicA) ^ PrivateB mod p
可证得:KeyA = KeyB 统一用key表示
这样双方就得到了同一个共享密钥key

Eve能得到p, g,以及双方的公钥,但是求解 k 的方法只能通过计算双方的私钥得到,这个问题等价于离散对数难题。

缺陷

上述版本无法防止中间人攻击,Eve可以通过分别与Alice、Bob建立一次密钥交换来进行中间人攻击。
在这里插入图片描述
为了抵御这种攻击,又引入了一层公钥体制:
Alice有一个私钥 A 和一个公钥 g^A
Bob有一个私钥 B 和一个公钥 g^B
首先双方可以计算一个认证值 K = g ^ (A*B),这个认证值是第三方无法计算的,
然后上述过程的 PublicA = g ^ (privateA * K),B同理。

数字签名(如RSA)

Alice生成一个随机数random
用自己的私钥 PrivateArandom生成签名 RSA(PrivateA, random)
然后把签名和随机数random给Bob发过去
Bob收到后用Alice的公钥 PublicA 对签名进行验签得到签名中的random
如果签名中的random与一同发送来的随机数random一样
则证明消息是Alice发过来的

散列函数

六个要求

  1. 能够接受任何长度的消息作为输入。
  2. 能够给生成较短的定长输出。
  3. 对任何输入都能够快速容易地计算输出。
  4. 应该是一个单向函数,难以逆推。
  5. 能抵抗弱冲突(两个不同的输入产生相同的输出)。
  6. 能抵抗强冲突(找到两个有意义的消息使得其散列值相同)

MD5

MD5算法以512位分组来处理输入的任意长度的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

SHA

接受任何长度的输入消息,并生成160位的消息摘要,与MD5相似,这个算法操作划分为32位字的512位长度的块。

由于SHA-1生成的消息摘要比MD5的要长32位,因此抵抗强冲突的能力稍强一些。

PKI与证书

PKI(公钥基础设施)由几部分组成:

  • 数字证书认证中心CA:可信的运营PKI的第三方,负责发型证书,跟踪过期的或无效的证书。
  • 数字证书注册审批机构RA:为CA验证证书的内容。
  • 存储库:用户可用的证书数据库。
  • 归档库:证书的状态信息归档库。

遵循X.509国际标准的证书内容:

  • 证书格式版本号
  • 证书唯一序列号
  • 签名算法域:用于指示CA使用的签名算法和公钥加密算法。
  • 证书发行机构名
  • 有效期
  • 用户名称
  • 用户的公钥内容和公钥算法
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 19:10:50  更:2022-03-30 19:13:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:28:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码