网络安全基础

第一节 网络安全概述

一、基本概念

网络安全通信所需要的基本属性:

  1. 机密性

  2. 消息完整性

  3. 可访问与可用性

  4. 身份认证

二、网络安全威胁

  1. 窃听

  2. 插入

  3. 假冒

  4. 劫持

  5. 拒绝服务DoS和分布式拒绝服务DDoS

  6. 映射

  7. 嗅探

  8. IP欺骗


第二节 数据加密

数据加密

  • 明文:未被加密的消息

  • 密文:被加密的消息

  • 加密:伪装消息以隐藏消息的过程,即明文 \rightarrow→ 密文的过程.

  • 解密:密文 \rightarrow→明文的过程

一、传统加密方式

  1. 替代密码:用密文字母替代明文字母。

    移位密码加密函数:

    \color{red}{E_k(M)=(M+k)modq}Ek​(M)=(M+k)modq

    EE:加密过程

    MM:明文信息

    kk :密钥,表示移几位

    qq:如果是26个字母,那q就是26

    解密函数:

    \color{red}{D_k(C)=(K-k)modq}Dk​(C)=(K−k)modq

    DD:解密过程

    CC:密文

    kk:密钥

  2. 换位密码:根据一定规则重新排列明文。

    例题】如果对明文"bob.i love you. Alice",利用k=3的凯撒密码加密,得到的密文是什么?利用密钥 "nice" 进行列置换加密后得到的密文是什么?

    答案

    凯撒密码加密后得到的密文是:

    "ere l oryh brx Dolfh"

    列置换密码加密后得到的密文是:

    "iex bvu bly ooo"

    解析凯撒密码:

    以明文字母b为例,M=2(b的位置为2),k=3,q=26,则:

    密文C=(M+k)modq=(2+3)mod26=5C=(M+k)modq=(2+3)mod26=5,对应字母e,故b经过加密转为了e

    将明文全部替换后得到的密文 "ere l oryh brx Dolfh"

    列置换密码:

    密钥 "nice" 字母表先后顺序为 "4,3,1,2" ,因此,按这个顺序读出表中字母,构成密文:"iex bvu bly ooo",(密钥有几位就有几列,如果明文不够就补x,然后按列读取)

二、对称密钥加密

  1. 对称密钥密码:加密秘钥和解密秘钥相同(\color{blue}{密钥保密}密钥保密),例如用一个锁将箱子锁起来,这个锁有2把相同的钥匙,锁好之后把另一把钥匙派人送给他。

  2. 对称密钥密码分类

    • 分组密码:DES、AES、IDEA等。(分组处理)

      1)\color{blue}{DES}DES(数据加密标准):56位密钥,64位分组。(56位二进制数,每位的取值是0或1,则所有的取值就是2^{56}个)

      2)\color{blue}{三重DES}三重DES:使用两个秘钥(共112位),执行三次DES算法。(用1个密钥执行一次加密,再用另一个密钥执行一次解密,共执行三次)

      3)\color{blue}{AES}AES(高级加密算法):分组128位,密钥128/192/256位。

      4)IDEA:分组64位,密钥128位。

    • 流密码(挨个处理)

三、非对称/公开密钥加密

  1. 非对称密钥 密码:加密密钥和解密密钥不同,\color{blue}{密钥成对使用}密钥成对使用,其中一个用于加密,另一个用于解密。(私钥 :持有人所有 公钥:公开的)

  2. 加密密钥可以公开,也称公开密钥加密。

  3. 典型的公钥算法:

    • Diffie-Hellman算法

    • RSA算法


第三节 消息完整与数字签名

一、消息完整性检测方法

密码散列函数

  1. 特性:

    • 定长输出;

    • 单向性(无法根据散列值逆推报文)

    • 抗碰撞性(无法找到具有相同散列值的两个报文)

  2. 典型的散列函数

    • MD5:128位散列值

    • SHA-1:160位散列值

二、报文认证

报文认证是使消息的接收者能够检验收到的消息是否是真实的认证方法。来源真实,未被篡改。

  1. 报文摘要(数字指纹)

  2. 报文认证方法

    • 简单报文验证:仅使用报文摘要,无法验证来源真实性

    • 报文认证码:使用共享认证密匙,但无法防止接收方篡改

三、数字签名

身份认证、数据完整性、不可否认性

  1. 简单数字签名:直接对报文签名

  2. 签名报文摘要


第四节 身份认证

  1. 口令:会被窃听

  2. 加密口令:可能遭受回放/重放攻击

    加密的口令可能会被截获,虽然不知道口令是什么,但他将加密口令提交给服务器,说这是我加密的口令,这叫重放.

  3. 加密一次性随机数:可能遭受中间人攻击

Alice发给Bob说她是Alice,但Bob说你要向我证明,Bob生成一个随机数发给Alice,让Alice用自己的私钥进行加密,加密后再把数据发给Bob,然后Bob再向Alice要公钥进行解密解出来的随机数如果和Bob发给Alice的随机数一样的话,那就说明她是Alice。

这种方法会被中间人攻击,Alice发送的私钥加密被Trudy更换为自己用私钥加密的数据然后发给Bob,公钥也被Trudy换了,最后Bob用公钥加密数据发给Alice,Trudy截获了,用自己的私钥进行解密,获得了数据。


第五节 密匙分发中心与证书认证

密钥分发存在漏洞:主要在密钥的分发和对公钥的认证环节,这需要密匙分发中心与证书认证机构解决

一、密钥分发中心

双方通信时需要协商一个密钥,然后进行加密,每次通信都要协商一个密钥,防止密钥被人截获后重复使用,所以密钥每次都要更换,这就涉及到密钥分发问题。

基于KDC的秘钥生成和分发

  1. 通信发起方生成密钥,KDC进行分发
  2. KDC生成并分发密钥

二、证书认证机构

认证中心CA:将公钥与特定的实体绑定

  1. 证实一个实体的真实身份;

  2. 为实体颁发数字证书 (实体身份和公钥 绑定)。


第六节 防火墙与入侵检测系统

一、防火墙基本概念

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

前提:从外部到内部和从内部到外部的所有流量都经过防火墙

二、防火墙分类

  1. 无状态分组过滤器

    基于特定规则对分组是通过还是丢弃进行决策,如使用\color{blue}{访问控制列表(ACL)}访问控制列表(ACL)实现防火墙规则。

  2. 有状态分组过滤器

    跟踪每个TCP连接建立、拆除,根据状态确定是否允许分组通过。

  3. 应用网关

    鉴别用户身份 或针对授权用户 开放特定服务

三、入侵检测系统IDS

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


第七节 网络安全协议

一、安全电子邮件

  1. 电子邮件安全需求

    1)机密性

    2)完整性

    3)身份认证性

    4)抗抵赖性

  2. 安全电子邮件标准:\color{blue}{PGP}PGP

二、安全套接字层SSL

  1. SSL是介于\color{blue}{应用层}应用层和\color{blue}{传输层}传输层之间的安全协议.

  2. SSL协议栈

    (传统的TCP协议是没有安全协议的,传输都是明文,所以在TCP上面设置SSL协议保证安全性)

  3. SSL握手过程

    协商密码组,生成秘钥,服务器/客户认证与鉴别。

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

  1. VPN

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

    关键技术:\color{blue}{隧道技术}隧道技术,如IPSec。

  2. 典型的网络层安全协议 ------\color{blue}{IPSec}IPSec

    提供机密性、身份鉴别、数据完整性和防重放攻击服务。

    体系结构:认证头AH协议封装安全载荷ESP协议

    运行模式:传输模式 (AH传输模式、ESP传输模式)、隧道模式(AH隧道模式、ESP隧道模式)


小结:

本文主要介绍了网络安全基本概念、数据加密算法、消息完整性与数字签名、身份认证、密钥分发中心与证书认证机构、防火墙与入侵检测以及网络安全协议等内容。

\color{blue}{重难点}重难点回顾:

  1. 网络安全基本属性

  2. 典型数据加密算法;

  3. 消息完整性、数字前面以及身份认证原理。

相关推荐
qq_4170146044 分钟前
常用的网络安全靶场、工具箱
安全·web安全
李詹1 小时前
海外高防服务器延迟优化——跨国业务安全加速的底层逻辑
网络·安全·网络安全·负载均衡·网络攻击模型·ddos
AronTing2 小时前
300%性能提升!CompletableFuture异步编排四大核心模式与避坑指南
java·后端·安全
sszdlbw3 小时前
BUUCTF-web刷题篇(17)
安全·web安全·web·buuctf
卓豪终端管理3 小时前
黑白名单管理:构建安全高效的访问控制体系
运维·网络·安全·web安全·网络安全
christine-rr4 小时前
密码学基础——AES算法
网络·安全·密码学·加密
程序猿chen5 小时前
Vue.js组件化开发实战:从工程化到安全纵深设计
前端·vue.js·安全
一口一个橘子6 小时前
[ctfshow web入门] web23
web安全·网络安全
用户27784491049937 小时前
Python使用OWASP ZAP进行Web应用安全测试
python·安全
花木凋零成兰7 小时前
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
java·安全·ssl