网络安全基础

网络安全基础

网络安全概述

网络安全通信的基本属性

  1. 机密性:只有发送方和接收方能理解报文内容;
  2. 消息完整性:消息未被篡改,发生篡改一定会被检测到;
  3. 可访问与可用性:对授权用户提供有效服务;
  4. 身份认证:双方确认彼此的真实身份。

典型的网络安全威胁

  1. 报文传输:传输过程中面临窃听、插入、假冒、劫持等安全威胁;
  2. 拒绝服务DoS(Denial of Service)、分布式拒绝服务DDoS;
  3. 映射:先探路,再攻击;
  4. 分组“嗅探”:Wireshark是一个典型的分组嗅探软件;
  5. IP欺骗。

数据加密

通信加密模型

简写 含义
M 明文空间
C 密文空间
K 密钥空间
E 加密算法
D 解密算法

通信加密分类

根据密码体制的特点、出现的先后时间,进行划分:

  1. 传统加密方式
  2. 对称密钥加密
  3. 非对称密钥加密

传统加密方式

替代密码:凯撒密码

例:对明文 "bob, I love you, Alice" ,利用 K=3 的凯撒密码加密,得到的密文是什么 ?

加密:K=3 的含义就是明文的每个字母按照字母表顺序推后3位。

密文:"ere, L oryh brx, Dolfh"

换位密码(置换密码):列置换密码

根据一定规则重新排列明文,以便打破明文的结构特性。只改变明文结构,不改变内容。

例:假设采用密钥 K=nice 的列置换密码,对明文 "bob i love you" 进行加密,加密得到的密文是什么 ?

第一步:确定密钥的长度(几个字母),并且确定密钥字母在字母表中的先后顺序,用数字表示。

密钥 K=nice ,则密钥长度为:4,密钥的字母先后顺序为:4312

第二步:将明文按密钥长度分组,每组一行。

1 2 3 4
b o b i
l o v e
y o u $

$:明文长度不是密钥长度的整倍数,则使用双方提前约定的字符进行填充。

第三步:输出顺序确定。看密钥字母顺序,和排列好后的表格对应。

当前密钥的字母顺序:4312

4 3 1 2
b o b i
l o v e
y o u $

第四步:输出密文。按照数字顺序,按照列输出字母。

密文:bvu ie$ ooo bly

对称密钥加密

加密密钥和解密密钥是 相同 的。

分类

  1. 分组密码(块密码):DES、AES、IDEA
  2. 流密码(序列密码)

DES

DES加密算法(Data Encryption Standard, 数据加密标准)

加密:明文分为64位分组,使用 56位的密钥,进行16轮加密。

三重 DES:使用两个密钥,执行三次DES算法,密钥长度达到 112位

AES

AES加密算法(Advanced Encryption Standard, 高级加密标准)

密钥长度:128192256

特点:

  1. 分组长度和密钥长度均 可变
  2. 循环次数允许在一定范围内根据安全要求 进行修改
  3. 安全、效率、易用、灵活;
  4. 抗线性攻击和抗差分攻击的能力大大增强;
  5. 如果1秒暴力破解DES,则需要149万亿年破解AES。

IDEA

IDEA加密算法(International Data Encryption Algorithm, 国际数据加密算法)

非对称密钥加密(公共密钥加密)

加密密钥和解密密钥是 不同 的。

通信双方都有两个密钥:公钥(任何人可见)和私钥(仅自己可见)。

典型的公开密钥加密算法

  1. Diffie-Hellman 算法:基于数学中 素数原根 理论;
  2. RSA 算法:基于数论设计,安全性建立在 大数分解 的难度上。应用比较广泛,安全性高。

非对称密钥加密过程

公钥
私钥
明文

消息完整性与数字签名

散列函数

典型的散列函数

  1. MD5:128 位散列值;
  2. SHA-1:160 位散列值。

散列函数的特性

  1. 散列函数算法公开;
  2. 快速计算;
  3. 对任意长度报文进行散列产生定长输出;
  4. 对于任意报文无法预知器散列值;
  5. 不同报文不产生相同的散列值;
  6. 单向性。

消息完整性的目标

  1. 证明报文确实来自声称的发送方;
  2. 验证报文在传输过程中没有被篡改;
  3. 预报报文的 时间顺序 被篡改;
  4. 预报报文 持有期 被篡改;
  5. 预防 抵赖

消息完整性检测方法

用散列函数,对报文进行进行散列化。

报文认证

消息的接收者能够检验收到的消息是否真实的方法。

报文认证要完成 消息源的认证消息的认证

简单报文验证

发送方:对 报文m 应用 散列函数H,得到固定长度的散列码,获取 报文摘要h,将 扩展报文(m, h) 发送给接收方。

接收方:收到 扩展报文(m, h) 后,提取出 报文m报文摘要h,同样对 报文m 应用 散列函数H 获得 新的报文摘要H(m),将 报文m新的报文摘要H(m) 进行对比。

判断:若相同,报文认证成功。否证报文认证失败。

不足:无法对 消息源 认证。

报文认证码MAC

前提:发送方和接收方 共享 一个 认证密钥s

发送方:对 报文m认证密钥s 应用 散列函数H 得到 报文认证码h,将 扩展报文(m, h) 发送给接收方。

接收方:收到 扩展报文(m, h) 后,提取出 报文m报文认证码h,对 报文m认证密钥s 应用 散列函数H 得到 新的报文认证码H(m + s),将 报文认证码h新的报文认证码H(m + s) 进行对比。

判断:若相同,报文认证成功。否证报文认证失败。

不足:无法保证消息在 接收方没有别篡改

数字签名

在公开密码体制中,一个主体使用自己的 私钥加密 消息,得到的密文。密文可以使用该主体的 公钥解密 消息,恢复成原来的消息。公钥密码提供的这种消息认证服务可以看成是对消息原作者的签名。

数字签名的满足条件

  1. 接收方能够确认发送方的签名,但 不能伪造
  2. 发送方发出签名的消息给接收方后,就 不能再否认 它所签发的消息;
  3. 接收方对已收到的签名消息 不能否认,有收报认证;
  4. 第三者可以确认收发双方之间的消息传递,但 不能伪造 这一过程。

简单数字签名

发送方:利用自己的 私钥报文 加密,创建 签名报文。将 扩展报文(报文,签名报文) 发送给接收方。

接收方:收到扩展报文后,利用 发送方的公钥 解密 签名报文,并检验 解密后的报文报文 是否一致。

判断:若一致,则签名报文的一定是发送方的私钥。

签名报文摘要

发送方:对 报文m 应用 散列函数H 生成 报文摘要H(m),然后通过自己的 私钥报文摘要H(m) 进行加密生成 加密的报文摘要,将 扩展报文(报文,加密的报文摘要) 发送给接收方。

接收方:收到扩展报文后,利用 发送方的公钥 解密 加密的报文摘要 得到 原来的报文摘要,对 报文m 应用 散列函数H 得到 新的报文摘要,并校验 报文摘要新的报文摘要 是否一致。

身份认证

身份认证(身份鉴别):一个实体经过计算机网络向另一个实体证明其身份的过程。

在身份认证的过程中,使用 一次性随机,来预防 重放攻击

基于共享对称密钥的身份认证

  1. 发送方接收方 发送 报文
  2. 接收方 生成一个 一次性随机,然后把这个随机数发送给 发送方
  3. 发送方 使用与 接收方 共享的 对称密钥 加密这个这个随机数,并发送给 接收方
  4. 接收方加密后的随机数 进行解密,并与原来的随机数进行对比,完成认证。

基于公开密钥的身份认证

  1. 发送方接收方 发送 报文
  2. 接收方 生成一个 一次性随机,然后把这个随机数发送给 发送方
  3. 发送方 使用 自己的私钥 加密这个随机数,并发送给 接收方
  4. 接收方发送方 索要 发送方的公钥
  5. 发送方 发送 自己的公钥接收方;
  6. 接收方 使用 发送方的公钥 解密,并与原来的随机数进行对比,完成认证。

密钥分布中心与证书认证机构

密钥分布中心(KDC)

对称密钥 分布的典型解决方案:通信各方建立一个大家都信赖的密钥分布中心,解决对称密钥安全可靠的分布。

通信发起方生成会话密钥

  1. 发送方接收方 进行保密通信。发送方 随机选择一个 会话密钥。用 发送方KDC 之间长期的 共享密钥 加密会话密钥,发送给 KDC
  2. KDC 得到后,解密获取会话密钥,以及所希望通信方。KDC 利用和 接收方 之间长期的 共享密钥 加密会话密钥,发送给 接收方
  3. 接收方 解密,获取 会话密钥

KDC生成会话密钥

  1. 发送方 希望和 接收方 通信时,首先向 KDC 发送请求信息;
  2. KDC 收到请求后,随机选择一个 会话密钥,并将会话密钥分别用和 发送方接收方 的长期 共享密钥 加密,再分别发送给 发送方接收方;
  3. 发送方接收方 收到 KDC 的密文后,分别解密,得到 会话密钥

证书认证机构(CA)

非对称密钥 的典型解决方法,将公钥与特定的实体绑定。

作用

  1. CA可以证实一个实体的真实身份;
  2. 一旦CA验证了某个实体的身份,CA会生成一个把其身份和实体的 公钥 绑定起来的证书,其中包含该实体的公钥及其全局唯一的身份识别信息等,并由CA对证书进行数字签名。

防火墙与入侵检测系统

防火墙

隔离组织内部网络与公共互联网,允许某些分组通过,而组织其他分组进入或离开内部网络的软件、硬件或者软件硬件结合的一种设施。

防火墙的分类

  1. 无状态分组过滤器:典型部署在 内部网络网络边缘路由器 上的防火墙。根据 访问控制表(Access Control Lists, ASC) 实现;
  2. 有状态分组过滤器:跟踪每个 TCP 连接建立、拆除,根据状态确认是否允许分组通过;
  3. 应用网关:实现 授权 用户通过网关访问外部网络的服务。

入侵检测系统

入侵检测系统(IDS),是当观察到潜在的 恶意流量 时,能够产生警告的设备或系统。

网络安全协议

安全电子邮件

服务于 应用层

电子邮件对网络安全的需求

  1. 机密性
  2. 完整性
  3. 身份认证性
  4. 抗抵赖性

安全电子邮件标准:PGP标准(Pretty Good Privacy)

  1. 邮件加密;
  2. 报文完整性;
  3. 数字签名;
  4. 加密算法:公钥加密算法(RSA)、对称加密算法(3DES)、散列算法(SHA-1)

安全套接字层 SSL

服务于 传输层

SSL是介于 TCPHTTP 等应用层协议之间的一个可选层,大多数应用层协议直接建立在SSL协议之上,SSL是两层协议。

当 HTTP 协议使用 SSL 进行安全通信时,称为安全HTTP,简称为 HTTPS

应对Web浏览器威胁(恶意程序)方案

  1. 在电子商务背景下,提出 HTTP 安全电子商务交易协议
  2. 在传输层之上构建一个安全层:安全套接字层(Secure Socket Layer, SSL)

SSL协议栈(协议的总和)

  1. SSL握手协议:协商和建立密码组、服务器认证与鉴别和客户认证与鉴别;
  2. SSL更改密码协议:通信双方修改密码组;
  3. SSL警告协议:警告级别和警告代码;
  4. SSL记录协议:描述了信息交换过程中的消息格式,前面3个协议需要记录协议进行封装与传输。

虚拟专用网VPN和IP安全协议IPSec

服务于 网络层

虚拟专用网VPN

建立在公共网络上的安全通道,是用户通过公用网络建立的临时的、安全的连接。实现远程用户、分支机构、业务伙伴等于机构总部网络的安全连接,从而构建针对特定组织机构的专用网络。

重要特点:虚拟

涉及技术:隧道技术(核心)数据加密身份认证密钥管理访问控制网络管理

IPSec

网络层使用最广泛的安全协议,是一个安全体系。

IPSec 体系结构:

  1. 封装安全载荷协议(ESP):源认证、消息完整性、机密性;
  2. 认证头(AH):源认证、消息完整性;
  3. 安全关联(SA):连接发送方和接收方;
  4. 密钥交换与管理(IKE)

IPSec 传输模式:

  1. 传输模式:数据报的发送和接收都由 端系统 完成;
  2. 隧道模式:部署在 网络边缘路由器 上,在路由器之间建立安全隧道,数据报在其中封装传输。

IPSec 传输模式和协议组合:

  1. 传输模式AH
  2. 隧道模式AH
  3. 传输模式ESP
  4. 隧道模式ESP:最广泛和最重要的 IPSec 形式

你可能感兴趣的:(网络安全基础)