首页 > 代码库 > 第10章 网络安全(1)_对称加密和非对称加密
第10章 网络安全(1)_对称加密和非对称加密
1 网络安全概述
1.1 计算机网络面临的安全威协
(1)截获:攻击者从网络上窃听他人的通信内容,通常把这类攻击称为“截获”。在被动攻击中,攻击者只是观察和分析某一个协议数据单元(PDU)而不干扰信息流。
(2)篡改:攻击者篡改网络上传递的报文。这里包括彻底中断传递的报文,甚至把完全伪造的报文传送给接收方,这种攻击也有时也称为“更改报文流”。如DNS劫持(域名劫持),安装黑客软件Cain可以进行验证。
(3)恶意程序:是一种特殊的主动攻击形式。如计算机病毒、蠕虫、木马程序、逻辑炸弹等。病毒是一种应用程序,不会存储在交换机、路由器这些网络设备中,因此这些设备不会中毒,但他们会通过网络传播到其他计算机中,当计算机中了病毒也会反过来影响网络设备的正常工作(如发送大量ARP广播包,造成内网堵塞)
(4)拒绝服务攻击:攻击者向因特网上的服务器不停发送大量分组,使因特网或服务器无法提供正常服务,这种攻击被称为拒绝服务(Denial of Service, DoS)。如果攻击者操纵因特网上的成百上千的网站集中攻击一个网站,则称为分布式拒绝服务(Distributed Denial of Service, DDoS)。有一种DDoS攻击叫做CC(Challenge Collapsar, 挑战黑洞软件)
1.2 一般的数据加密模型
(1)A和B事先预先协商好一个密钥K,然后A明文前通过加密算法E后得出密文Y。一般的加密表示方法为Y=Ek(X)
(2)B收到密文Y后,根据密钥K解密明文X。发送前将数据加密,在接收端B解密得到明文。解密运算表示为Dk(Y) = Dk(Ek(X)) = X
(2)如果加密密钥和解密密钥是同一个密钥,这种加密技术称为“对称加密”。如果两个密钥不同,这种加密技术称为“非对称加密”
2. 对称加密和非对称加密
2.1 对称密码体制
(1)加密密钥和解密密钥是相同的密码体制。常用的算法有DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK和AES等。
(2)对称加解密算法的优缺点
①优点:算法公开、计算量小、加密速度快、加密效率高。
②缺点:数据传送前,发送方和接收方必须商定好密钥,然后双方都要保管好密钥。如果一方的密钥被泄露,那么加密信息就不安全了。此外,如果每对用户每次使用对称加密算法时都需要使用其他人不知道的唯一密钥,就会使收、发双方所拥有的钥匙数量巨大,密钥管理成为双方的负担。
2.2 非对称密码体制
(1)公钥密码体制。常见的算法有RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆线加密算法)
①发送数据前,B产生一个密钥(B的公钥PK和私钥SK),然后B将公钥PK通过网络传给A(即公钥是公开的,可能被C截获)
②A使用B的公钥(PK)加密明文,得到密文Y,发送给B。
③C捕获密文Y,使用前面截获的公钥PK不用解密出明文(公钥加密需用私钥解密),即便知道解密算法也无济于事。
④B收到密文Y后,使用B的私钥SK解密得到明文X。
(2)非对称加密的优缺点
①优点:与对称加密相比,其安全性更好。他使用一对密码,公开密钥用来加密,私钥用来解密。不需要像对称加密那样在通信之前要先同步密钥。
②缺点:加密和解密花费时间长、速度慢,只适合对少量数据进行加密
(3)对称加密与非对称的结合
①对称算法计算机小、加密速度快、加密效率高。但密钥在网络中传输存在被截获的风险。而非对称加密公钥不担心被截获,但加解密时间长,速度较慢,只适合少量数据的加密。
②两者的结合:用对称算法加密大文件,其密钥(CK)再经过非对称算法进行加密。如下图A产生一个对称密钥“123abc”,使用对称密钥加密500M文件,虽然文件较大,但对称加密效率高,很快完成。加密后,再使用B的公钥加密对称密钥“123abc”,然后将加密后的500M文件和加密后的对称密钥一起发给B,B收到后使用私钥解密得到对称密钥“123abc”,然后再使用“123abc”解密这500M的文件,效率高。
第10章 网络安全(1)_对称加密和非对称加密