网络安全——TCP/IP协议簇中的安全协议

网络安全——安全协议

  • 为TCP/IP每一层(网络接口层以上)设计了特有的安全协议
序号 安全协议 对应TCP/IP的层 功能
1 DNSSec、PGP,SET等 应用层 实现两个应用进程之间消息的安全传输
2 SSL/TLS 传输层 实现两个进程之间TCP报文的安全传输
3 IPSec 网际层 实现IP分组端到端的安全传输

更多关于IPSec
更多关于SSL/TLS,及HTTPS

  • 安全协议的目的(以IP层为例)

    • 解决源端鉴别问题

      由于IP分组首部的源IP地址是可以伪造的,从而可以实现源IP地址欺骗攻击。

    • 解决数据传输的保密性问题

      若没有对IP分组进行加密,且IP分组很容易被网络中存在各种手段嗅探、截获,这样攻击者就识别、利用其中的数据。

    • 解决数据传输的完整性问题

      IP分组很容易被网络中存在各种手段截获并篡改。

    • 解决身份鉴别问题

      网站中存在大量的伪造网站,应该对所访问的网站或数据接收方的身份进行鉴别。

安全协议各功能的实现原理

  • 身份鉴别(双向)

    • 基于共享密钥

      双方预先共享密钥k,这个k成为双方的身份标识信息,只要有一方能向对方发送P‖Ek(MD(P)),那么就可以证明自己的身份。

    • 基于证书+密钥

      双方预先从权威机构获得共享密钥k与对方身份标识信息之间绑定的证书,只要有一方能向对方发送P‖Esk(MD(P)),就可以向对方证明自己的身份

      在RSA中,公钥PK与私钥SK之间一一对应,所以只要身份标识符为x的一方向对方发送P‖Esk(MD(P)),就可以证明自己拥有与公钥PK对应的私钥SK,并且证明自己就是x。
      ①(MD指Message Digest,消息摘要运算):因为非对称加密的效率较低,所以此处对P进行消息摘要,以减小运算量;
      ②(Esk指使用私钥SK对内容进行加密),(Dpk是指使用公钥PK进行解密);
      ③只要接收方使用发送方发来的公钥PK能对Esk(MD(P))正常解密,那说明发送方持有对应的私钥SK,且这是不可抵赖的。

      具体如下:

      (i)将收到的P‖Esk(MD(P))截断为P和Esk(MD(P));
      (ii)Esk(MD(P) + Dpk() ==>
      Dpk(Esk(MD(P))) ==>
      加密解密互相抵消 ==>
      得到MD(P);
      (iii)将之前通过截断到的P,也以相同方式进行MD运算得到MD(P)',将其与解密得到的MD(P)对比,即可知是否解密成功。

  • 数据加密

    为了实现数据加密,双方需要先约定好加密密钥和加密算法

  • 数据完整性检测

    为了实现完整性检测,双方需要先约定好加密密钥、加密算法和报文摘要算法

  • 防重放攻击

    防止重放攻击有两种方法:

    • 发送端:为不同的报文设置不同的序号,接收端在收到序号相同的报文时将其丢弃,那么就需要在报文中增加序号字段
    • 接收端:设置序号窗口,在接受到序号不属于序号窗口的报文时将其丢弃,那么就需要接收端有动态调整序号窗口的能力

你可能感兴趣的:(网络安全,计算机网络,安全,网络,网络安全)