• 网络安全


    一、密码学

    块密码:是一种对称密钥,是将报文处理为k比特的块,每块进行独立加密。块密码应用于多种因特网协议的加密中,包括PGP、SSL。

    DES使用使用具有56比特密钥的64比特块,AES使用128比特块,能够用128、192以及256比特长的密钥进行操作

    公开密钥加密:一方将自己的公钥发给另一方,另一方使用该公钥加密后,将加密数据报发回给他,他再通过自己的私钥进行解密。

    1.1 RSA

    是一种公开密钥密码,它广泛的使用了模n算术运算

    但是它要求的指数运算相当耗费时间,因此将对数据加密转变为了对密钥加密,对密钥加密的就称为会话密钥。

    1.2 报文完整性和数字签名

    密码散列函数:MD5

    确定收发双方身份,加上双方共享的鉴别密钥,通过密码散列函数进行加密之后得到的散列值为报文鉴别码(mac密钥)。

    数字签名:私钥进行加密,公钥用来解密,确定签署人。引入了散列函数,将数据报的散列函数进行加密,减轻加解密开销。

    公钥认证:将公钥与特定实体进行绑定,由认证中心完(CA)成

    端点鉴别:一个实体经过计算机向另一个实体证明其身份的过程。ap4.0才用了在收发数据中添加不重复序号,防止入侵者冒充用户访问。

    1.3 PGP

    电子邮件加密方案,pgp允许用户选择是否对报文进行数字签名、加密报文,或同时进行数字签名和加密

    1.4 SSL

    安全套接字层(SSL)是TCP的强化版本,提供包括机密性、数据完整性以及端点鉴别的传输层安全服务。

    过程:

    握手

    1. 客户发送它支持的密码算法列表,以及一个不重复数。
    2. 从该列表中,服务器选择一种对称算法、一种公钥算法、一种MAC算法。它把自己的选择、证书以及不重复数返回给客户。
    3. 客户验证证书,并提取服务器公钥,生成前主密钥,用服务器公钥进行加密,并将加密后的pms发送给服务器
    4. 使用相同的密钥导出函数,客户和服务器独立的从PMS和不重复数中计算出主密钥(MS),再进行切片形成两个密码以及两个MAC密钥。客户和服务器之间的所有报文均被加密和鉴别。
    5. 客户发送所有握手报文的mac,服务器发送所有握手报文的mac

     终止对话,在ssl类型字段中指出该记录是否用于终止该ssl会话。

    1.5 IPsec

    许多机构使用IPsec创建了VPN。

    鉴别首部协议(AH)以及封装安全性载荷协议(ESP),AH提供源鉴别和数据完整性服务,ESP提供源鉴别、数据完整性以及机密性服务。esp协议使用更广泛

    安全关联

    在源实体向目的实体发送IPsec数据报之前,源和目的实体创建了一个网络层的逻辑连接,又称安全关联(SA)。如果两个实体之间需要互发数据,就要创建2个SA。

    在上图中,路由器将维护有关SA的状态信息,包括:

    • SA的32比特标识符,称为安全参数索引
    • SA的初始接口(即200.168.1.100)和SA的目的接口(即193.68.2.23)
    • 将使用的加密类型
    • 加密密钥
    • 完整性的检查类型
    • 鉴别密钥

    当它需要构建一个IPsec时,它会根据状态信息进行加密和鉴别。

    一个IPsec实体在安全关联数据库(SAD)中维护其所有的SA状态信息。SAD在操作系统内核中是一种数据结构。

    IPsec有两种分组形式,一种是隧道模式,一种是运输模式。

    从一个普通IPV4数据报转换为IPsec数据报的过程:

    1. 在初始的IPV4数据报后面附上ESP尾部
    2. 使用算法和由SA规定的密钥加密该数据报
    3. 在加密量前面加上ESP首部字段
    4. 使用算法和由SA规定的密钥生成一个覆盖整个目前得到的数据报的鉴别mac
    5. 该mac附加到整个数据报的后面
    6. 最后,生成一个具有IPV4首部字段的全新IP首部,并将该首部加到数据报之前

    在新加入的IPV4首部中的ip地址实际是位于隧道两端点的源和目的地路由器的接口,也就是200.168.1.100以及193.68.2.23。这个首部字段中的协议号不被设置为TCP、UDP或SMTP,而是被设置为50,表示该数据报是一个使用ESP的IPsec数据报。

    解析:

    • esp尾部包含了三个字段:填充、填充长度、下一个首部,填充是一段无意义的字节,使报文称为块的整数倍,下一个首部指的是载荷数据字段中数据的类型(如UDP)。载荷数据回合esp尾部一同加密
    • ESP首部由两部分组成:SPI、序号。SPI字段指示接受实体数据报属于哪个SA,接收实体能够用该SPI索引其SAD确定适当的解密/鉴别算法和密钥。序号字段则是防止重放攻击

    在R2接收到该IPsec数据报之后的处理过程:

    1. 通过ESP首部中的SPI知道该数据报属于哪个SA
    2. 计算MAC,与ESPmac作对比,确定数据报是否遭到篡改
    3. 检查序号字段,确定该数据报是全新的
    4. 使用与SA相关联的解密算法以及密钥解密数据报
    5. 删除填充,并抽取初始的IP数据报
    6. 将最后得到的IP数据报转发给真正的接收人。

    另:SPD:安全策略库,在发送方的路由器中,SPD指示那些类型(协议类型)的数据报将被IPsec处理,并决定这些被IPsec处理的数据包应当使用哪个SA。

  • 相关阅读:
    Python正则表达式(3)--字符串匹配开头结尾
    Python正则表达式(2)---字符串匹配多个字符
    Python正则表达式(1) --匹配单个字符
    Navicate Premium 永久破解
    升级pip指令
    爬虫(自学)之User Agent 第三方库my_fake_useragent 和 fake_useragent
    django drf 反序列化上传图片
    git的使用
    python 爬虫 基本库使用urllib之urlopen(一)
    吉他入门第三讲~~~~~和弦
  • 原文地址:https://www.cnblogs.com/yujin123456/p/10957548.html
Copyright © 2020-2023  润新知