网络安全——安全协议
为TCP/IP每一层(网络接口层以上)设计了特有的安全协议
序号安全协议对应TCP/IP的层功能1DNSSec、PGP,SET等应用层实现两个应用进程之间消息的安全传输2SSL/TLS传输层实现两个进程之间TCP报文的安全传输3IPSec网际层实现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)对比,即可知是否解密成功。
- 数据加密为了实现数据加密,双方需要先约定好加密密钥和加密算法
- 数据完整性检测为了实现完整性检测,双方需要先约定好加密密钥、加密算法和报文摘要算法
- 防重放攻击防止重放攻击有两种方法:- 发送端:为不同的报文设置不同的序号,接收端在收到序号相同的报文时将其丢弃,那么就需要在报文中增加序号字段;- 接收端:设置序号窗口,在接受到序号不属于序号窗口的报文时将其丢弃,那么就需要接收端有动态调整序号窗口的能力。
版权归原作者 Neonline254 所有, 如有侵权,请联系我们删除。