zoukankan      html  css  js  c++  java
  • 第八章、网络安全基础

    一、网络安全概述

    网络安全的基本特征:相对性、时效性、相关性、不确定性、复杂性以及重要性等。
    网络安全:指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。

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

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

    典型的网络安全威胁:

    • 1、报文传输:主要包括窃听、插入、假冒、劫持等安全威胁。
    • 2、拒绝服务DoS 、分布式拒绝服务DDoS:在网络安全威胁中,拒绝服务DoS是指通过向接收方恶意泛洪分组,淹没接收方,导致带宽耗尽,资源耗尽等过载资源情况。
    • 3、映射:先探路,再攻击。Namp 是国外广为使用的端口扫描工具之一
    • 4、分组“嗅探”:Wireshark是一个典型的分组嗅探软件。
    • 5、IP欺骗:黑客利用IP地址进行欺骗攻击

    二、数据加密

    密码学:

    • 密码编码学:指将密码变化的客观规律应用于编制密码来保守通信秘密
    • 密码分析学:研究密码变化客观规律中的固有缺陷,并应用于破译密码以获取通信情报

    通信加密模型、传统加密方式、对称密钥加密、非对称/公开密钥加密

     

    密码分类:

    1、密码体制的特点、出现的先后时间

    • 1、传统加密方式
    • 2、对称密钥加密
    • 3、非对称 / 公开密钥加密

    2、依据处理数据的类型

    • 分组密码:又称块密码,将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为 n 的组,每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。
    • 序列密码:又称流密码,利用密钥产生一个密钥流,然后对明文串分别加密的过程。解密时使用相同的密钥流,是加密的逆过程。

    ============传统加密方式===========

    1、替代密码:凯撒密码
    2、换位密码:列置换密码

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

    换位密码(置换密码):列置换密码,根据一定规则重新排列明文,以便打破明文的结构特性。只改变明文结构,不改变内容。

     =============对称密钥加密============

    无论是简单的替代密码还是换位密码,安全性都很低,很容易被攻破。现代密码学将替代密码和换位密码相结合,并利用复杂的加密过程,提高密码的安全性。

    现代密码学:对称密钥加密和非对称密钥加密。

    • 对称密钥加密:加密密钥和解密密钥是相同的。
    • 非对称密钥加密(公开密钥加密系统):加密密钥和解密密钥是不同的。

    1、对称密钥加密

    DES加密算法(Data Encryption Standard):

    • 1、加密:明文分为64位分组,使用56位的密钥,进行16轮加密。
    • 2、三重DES:使用两个密钥,执行三次DES算法,密钥长度达到112位。

    DES过时的原因:密钥长度太短,利用高性能计算机可在短时间内蛮力攻击破解

    AES加密算法(Advanced Encryption Standard):密钥长度:128/192/256位,AES 加密过程 4 种操作:字节替代、行移位、列混淆、轮密钥加;解密过程分别为对应的逆过程

    AES加密算法的特点:

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

    IDEA加密算法(International Data Encryption Algorithm):密钥长度128位。

    对称密钥加密面临一个最大问题是密钥分发问题
    2、非对称 / 公开密钥加密

    通信双方都有两个密钥

    • 公钥:任何人都可以得到
    • 私钥:只有自己知道

    加密过程:

    • 1、Alice用Bob的公钥加密明文,发送。
    • 2、Bob收到密文后,用自己的私钥解密得到明文。

    非对称密钥加密(公开密钥加密)的算法:

    • 典型的公开密钥加密算法:Diffie-Hellman算法和RSA算法;Diffie-Hellman算法:基于数学中素数原根理论。
    • RSA算法:基于数论设计,安全性建立在大数分解的难度上;应用比较广泛,安全性高。

    三、消息完整性与数字签名

    消息完整性(报文认证)的目标

    • 1、证明报文确实来自声称的发送方;
    • 2、验证报文在传输过程中没有被篡改;
    • 3、预防报文的时间、顺序被篡改;
    • 4、预防报文持有期被篡改;
    • 5、预防抵赖:如发送方否认已发送的消息或接收方否认己接收的消息

    消息完整性检测方法:用散列函数,对报文m进行散列化。
    典型的散列函数

    • 第一种:MD5(Message-Digest Algorithm 5):128位散列值。
    • 第二种:SHA-1:作为散列数据的标准,SHA-1 可产生一个 160 位的散列值。SHA-1 是典型的用于创建数字签名的单向散列算法

    散列函数的特性:

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

    ================报文认证=======================

    • 消息完整性检测一个重要目的:完成报文认证的任务。
    • 报文认证:使消息的接受者能够检验收到的消息是否是真实的方法。

    报文(消息)认证的目的:

    • ①消息源的认证,即验证消息的来源是真实的;
    • ②消息的认证,即验证消息在传送过程中未被篡改。

    报文摘要:对报文m应用散列函数H,得到固定长度的散列码。

     A、报文认证的第一种方式:简单报文验证

    • 发送方对报文m应用散列函数,得到固定长度的散列码H(m),获得报文摘要h,将扩展报文(m,h)发送给接收方
    • 接收方收到扩展报文后,提取出报文m和报文摘要h,同样对报文m应用散列函数H获得新的报文摘要H(m),将H(m)和h比较。
    • 若相同,报文认证成功。否则报文认证失败。

    简单报文认证缺点:无法达到对消息源认证

    B、报文认证的另外一种方式:报文认证码MAC(Message Authentication Code)

    • 发送方和接收方共享一个认证密钥s,发送方对报文m和认证密钥s应用散列函数H得到报文认证码h,将扩展报文(m,h)发送给接收方。
    • 接收方收到扩展报文后,提取出报文m和报文认证码h,对报文m和认证密钥s应用散列函数H获得新的报文认证码H(m+s),将H(m+s)与h比较。
    • 若相等,则报文认证成功。否则失败

    报文认证码MAC的不足:无法保证消息在接收方没有被篡改。

    ==============数字签名==============

    数字签名:在公开密码体制中,一个主体使用自己的私钥加密消息,得到的密文。密文可以使用该主体的公钥解密,恢复成原来的消息。如此生成的“密文”对该消息提供认证服务。

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

    1、数字签名的一种方式:简单数字签名

    • Bob利用自己的私钥对报文m加密,创建签名报文。将扩展报文(报文,签名报文)发送给Alice。
    • Alice收到扩展报文。利用Bob的公钥解密签名报文,并检验解密后的签名报文和报文m是否一致。
    • 若一致,则签名m的一定是Bob的私钥。

    2、数字签名的另外一种方式:签名报文摘要

    • Bob对报文m应用散列函数H生成报文摘要H(m),然后Bob通过其私钥对报文摘要进行加密生成加密的报文摘要,将扩展报文(报文,加密的报文摘要)发送给Alice。
    • Alice收到报文m以及加密的报文摘要。Alice利用Bob的公钥解密加密的报文摘要,并对m应用散列函数生成新的报文摘要。
    • 如果两者一致,则签名报文m的一定是Bob的私钥。

    四、身份认证

    身份认证:身份鉴别。一个实体经过计算机网络向另一个实体证明其身份的过程。
    1、基于共享对称密钥的身份认证;
    2、基于公开密钥的身份认证;

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

    • 1、Alice向Bob发送报文“我是Alice”
    • 2、Bob选择一个一次性随机数R,然后把这个值发送给Alice
    • 3、Alice使用她与Bob共享的对称秘密密钥加密这个一次性随机数,然后把加密的一次性随机数发回给Bob。
    • 4、Bob解密收到的报文。

    基于公开密钥的身份认证

    • 1、Alice向Bob发送报文“我是Alice”
    • 2、Bob选择一个一次性随机数R,然后把这个值发送给Alice
    • 3、Alice使用她的私钥来加密R,然后把加密的一次性随机数发回给Bob。
    • 4、Bob向Alice索要她的公钥。
    • 5、Alice向Bob发送自己的公钥。
    • 6、Bob利用Alice的公钥解密收到的报文。

    五、密钥分发中心(KDC)与证书认证(CA)

    对称密钥分发的典型解决方案:通信各方建立一个大家都信赖的密钥分发中心(Key Distribution Center , KDC);解决对称密钥安全可靠的分发。

    密钥分发中心(Key Distribution Center , KDC):解决对称密钥安全可靠的分发

    证书认证机构(CA):解决非对称密钥问题

    • 要使公钥密码有效,需要证实你拥有的公钥,实际上就是要与你通信的实体的公钥。
    • 将公钥与特定的实体绑定,通常由认证中心(Certification Authority,CA)完成。

    认证中心(Certification Authority,CA)的作用:

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

    方式一:通信发起方生成会话密钥

    • 1、Alice和Bob进行保密通信。Alice随机选择一个会话秘钥。用Alice和KDC之间长期的共享密钥加密会话秘钥,发送给KDC。
    • 2、KDC得到后,解密获得会话密钥,以及所希望通信方Bob。KDC利用其和Bob的长期共享密钥加密密钥,发送给Bob。
    • 3、Bob解密,获得会话秘钥,并且得知期望和自己通信的是Alice。

    方式二:KDC为Alice、Bob生成通信的会话秘钥

    • 1、Alice在希望和Bob通信时,首先向KDC发送请求消息。
    • 2、KDC收到请求消息后,随机选择一个会话秘钥,并将会话秘钥分别用和
    • Alice、Bob的长期共享密钥加密,再分别发送给Alice、Bob。
    • 3、Alice、Bob收到KDC的密文后,分别解密,获得会话秘钥。

    六、防火墙与入侵检测系统

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

    防火墙的分类

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

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

    七、网络安全协议

    自顶向下各层解决安全性的实例协议

    • 1、安全电子邮件(应用层)
    • 2、安全套接字层SSL(传输层)
    • 3、虚拟与用网VPN和IP安全协议IPSec(网络层)

    1、安全电子邮件(电子邮件对网络安全的需求):

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

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

    • PGP提供的服务:邮件加密;报文完整性;数字签名;
    • 加密算法:公钥加密算法(如RSA)、对称加密算法(如3DES)、散列算法(如SHA-1)

    2、  网络安全协议

    安全套接字层SSL

    • 1、一般Web服务器越强大,包含安全漏洞的概率越高。
    • 2、Web浏览器也会遇到各种各样的安全威胁。
    • 3、普通Web应用的应用层数据,在传输过程中都已明文形式传输,可能受到攻击
    • 4、在电子商务背景下,提出HTTP安全电子商务交易协议;
    • 5、在传输层之上构件一个安全层:安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)

    SSL可以提供的服务:机密性、完整性、身份认证等安全服务。

    SL协议栈(协议的总和):SSL是介于TCP和HTTP等应用层协议之间的一个可选层,大多数应用层;协议直接建立在SSL协议之上,SSL是两层协议。
    SSL协议栈:

    SSL握手协议:在插、握手过程中需要用到SSL握手协议、SSL更改密码规格协议、SSL警告协议。主要作用:协商密码组和建立密码组;服务器认证与鉴别和客户认证与鉴别

    SSL警告协议:为对等实体传递SSL警告或终止当前连接。包含两个字段:警告级别和警告代码。

    SSL记录协议:描述了信息交换过程中的消息格式,前面3个协议需要记录协议进行封装与传输。
    3、虚拟专用网VPN和IP安全协议IPSec

    虚拟与用网VPN:建立在公共网络上的安全通道,是用户通过公用网络建立的临时的、安全的连接;实现进程用户、分支机构、业务伙伴等与机构总部网络的安全连接,从而构建针对特定组织机构的专用网络。虚拟转用网最重要的特点就是虚拟。虚拟转用网一般指的是构建在Internet上能够自我管理的专用网络;关键技术:隧道技术,如IPSec。
    VPN涉及的关键技术:隧道技术(核心) 、数据加密 、身份认证、密钥管理 、访问控制、 网络管理

    隧道:通过Internet提供的点对点的数据传输的安全通道。通过数据加密保证安全;数据进入隧道时,由VPN封装成IP数据报,通过隧道在Internet上传输;离开隧道后,进行解装,数据便不再受VPN保护。

    IPSec体系简介:IPSec是网络层使用最广泛的安全协议,但IPSec不是一个单一的协议,而是一个安全体系;主要包括:封装安全载荷协议( ESP)、认证头( AH)协议

    IPSec传输模式:传输模式和隧道模式

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

    传输模式和协议组合

    • 1、传输模式AH
    • 2、隧道模式AH
    • 3、传输模式ESP
    • 4、隧道模式ESP:最广泛和最重要的IPSec形式。
  • 相关阅读:
    QT 应用程序关闭某个窗口时,关闭打开的所有其他窗口并退出程序 【转】
    XP配置DCOM服务【转】
    Android最佳性能实践(二)——分析内存的使用情况
    Android最佳性能实践(一)——合理管理内存
    快速实现 ListView下拉,图片放大刷新操作
    Android布局实现圆角边框
    android 自定义文字跑马灯 支持拖拽,按住停止滚动,自定义速度
    Android NDK 环境搭建 + 测试例程
    Android -- 桌面悬浮,仿360
    android-async-http AsyncHttpClient介绍
  • 原文地址:https://www.cnblogs.com/jalja365/p/12561440.html
Copyright © 2011-2022 走看看