WOLF-LAB沃尔夫网络实验室中国网络精英的发源地!
24小时咨询热线:173-1636-2402

技术文档

Technical documentation

您当前位置: 首页 > 技术文档 > 详情

加密学原理-CCIE培训Security网络安全技术分享-WOLFLAB

发布日期:2022-05-23 浏览次数:2060 来源:WOLF-LAB(沃尔夫)实验室

加密学原理-CCIE培训Security网络安全技术分享-WOLFLAB

官方微信:17316362402,CCIE培训各方向都在循环开班,联系网站客服,预约免费试听

安全的定义:

1.     私密性(加密,防止被不合法的获取内容)

2.     完整性(确保传输过程中没有被篡改)

3.     源认证(确认发送者的真实身份)

4.     不可否认性(事后不能否认曾经发送过此信息)

 

早期部署VPN的动机:

     早期部署VPN主要是为了节省费用问题。如下图,如果多个站点(site)间租用专线链路,是可以解决site和site之间私有网络的互访。但是面临着费用将及其昂贵。

     如果利用internet,借助VPN,那么site只需要付包月的费用,各个site之间就可以达到私有网络的互访。

简单的说,VPN是借助互联网跑内部私有的网络。从而达到私有网络的互通。称之为Virtual Private Network。

图片 1.png

图片 1.png

——付公有网络的费用,享受私有网络的效果

 

       VPN是借助互联网实现私有网络的互通,但是面临的问题是我们流量在internet上安全吗?租用专线费用高昂但是可以确保安全性(专有线路),VPN虽然费用低廉,安全问题如何保证?会遇到什么样的安全问题?如何去解决这些问题?

 

1.    窃听攻击 eavesdropping

当两台设备之间通讯的时候,你能通过协议分析工具抓到username和password,还有数据。原因是他们之间的通讯是明文的。这样的协议有Telnet、FTP、HTTP 、SNMP  etc..

下图是telnet 流量,通过抓包可以看到username 和password

图片 1.png

解决办法:加密 (Encryption)

 

2.    欺骗攻击 spoofing

假设一个攻击者(attacker)伪装、假冒成正常用户的身份来和对端(peer)进行通讯。这称之为欺骗攻击(spoofing)。在二层网络里有MAC spoofing 、ARP spoofing 、DoS、DDoS、Smurf 等,现实生活里有电话诈骗,短信诈骗。在我们拨打信用卡电话,人工服务的时候。接线员会随机问你几个问题,目的就是为了确定你的身份(identity)。

解决办法:身份认证(authenticators identity)

 

问:既然网络中数据在传输过程中已经加密了,只有持有解密的密钥peer才可以解密。不就等同于认证了吗?

答:问题在于attacker发送欺骗的加密的数据包到达对端peer,peer 需要解密,会白白消耗设备的资源。

 

3.    中间人攻击 Man-in-the-Middle Attack

指攻击者与通讯的两端分别建立独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。在中间人攻击中,攻击者可以拦截双方的通讯或插入新的内容。

 

中间人攻击中危害性最大的是  重放攻击(Replay Attack)

攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。

 

解决方法:

为了抵御重放攻击,现在的身份认证一般采用“挑战应答”(Challenge/Response)方式

针对TCP会话的重放攻击,还可以基于“防重放”技术,例如TCP序列号,思科的VPN也自带防重放功能。

  

一、私密性

为实现“私密性”,防止窃听攻击,需要了解——加密学:

加密学,分为古典加密学和现代加密学,古典加密学主要研究算法,现代加密学主要研究密钥。

密码学:(cryptography,在西欧语文中,源于希腊语kryptós“隐藏的”,和gráphein“书写”)是研究如何隐密地传递信息的学科。

 

最古典的加密技巧:

(1)移位式(Transposition cipher):将字母顺序重新排列,例如‘help me’变成‘ehpl em’

例如:

栅栏法——

明文  wolflab shanghai is at heromansion     密钥 431526

4

3

1

5

2

6

w

o

l

f

l

a

b

s

h

a

n

g

h

a

i

i

s

a

t

h

e

r

o

m

a

n

s

i

n

 

密文   lhies  lnsoo  osahn  wbhta  fairi  agamn   

(2)替代式(substitution cipher):有系统地将一组字母换成其他字母或符号,例如‘fly at once’变成‘gmz bu podf’(每个字母用下一个字母取代)。

例如:

凯撒算法——每个字母用之后的第三个字母替换

维吉尼亚算法——

图片 1.png

图片 1.png

从以上两种方式可以看出,都需要用到一个key。 算法和key是两个不同概念。算法可以是公开的,但是key是私密的。加密需要key;解密也需要key。

 

一个加密方法是否可靠,取决于算法的先进性,也取决于key的长度。

加密算法分为两类:

(1)对称密钥算法

图片 1.png

代表算法:DES、3DES、AES、RC4

 

特点:加密和解密使用相同的密钥

优点:速度快、安全、紧凑(加密后长度几乎不增加)

缺点:密钥如何安全的传递给可信任的对等体是个关键的问题;

密钥数量是参与者数量的指数增长;

数量过多带来的管理和存储问题

不支持数字签名和不可否认性

  

(2)非对称密钥算法

图片 1.png

代表算法:RSA、DH、ECC

 

特点:加密和解密使用不同的秘钥(一个秘钥加密,只能用另一个秘钥解密)

每个用户进入一个加密系统,都需要产生一对公钥和私钥。公钥共享给所有人,私钥自己保留,公钥无法推导出私钥。

公钥加密的文件,需要私钥才能解密(加密过程)

私钥加密的文件,需要公钥才能解密(签名过程)

优点:安全。不担心密钥被中途截获的问题(不发送私钥);不需要事先在各参与者之间建立关系以交换密钥。技术上支持数字签名和不可否认性。

缺点:速度非常慢(比对称加密算法慢1500倍),密文长度会显著增加。——所以仅用于做密钥交换,数字签名

 

两种算法显然各有优劣,需要各取所长,结合使用。

一个理想的解决方案需要:

(1)安全

(2)加密的速度足够快

(3)加密的密文紧凑

(4)能够适用于参与者数目很多的情况

(5)能够抵御密钥窃听攻击

(6)不要求事先在参与者之间建立关系

(7)必须支持数字签名和不可否认性

 

其中(1,2,3)可以用到对称加密算法,(4,5,6,7)用非对称加密算法。

例如:

(1)用一个随机产生的“对称密钥”对原文加密,形成密文

(2)使用接收者的公钥,加密这个“对称密钥”

(3)将 1,2 的结果一起发送给接收者

(4)接收者用自己的私钥解密,得到“对称密钥”

(5)接收者用“对称密钥”解密

 

二、完整性

散列函数(Hash)——将任意大小的数据,将其计算成一个固定大小的值,作为原始数据的指纹(fingerpring)或摘要。

如果原始数据有任意一点改变,输出的Hash值就会完全不同——雪崩效应

无法通过反向执行散列算法来恢复出原文——单向函数

H(x) =  H(y)  理论上是可能的,但极难实现——冲突避免

可用的算法有:MD5 (128bit),SHA-1(160bit),SHA-2(256bit或512bit)

所以数据如果不完整,或者被篡改过,Hash结果必然不相同。

 

三、源认证、不可否认性

如何利用Hash函数完成数据完整性和身份验证?——数字签名

(1)将原文数据做Hash运算,得到摘要(摘要很小)

(2)将摘要用签名者的私钥加密

(3)加密后的密文 ,附加这个加密后的摘要(两部分一起)发送给接收者

(4)接收方将两部分分别处理

(5)将加密内容解密,做Hash运算,得到一个摘要A

(6)将收到的摘要加密部分用签名者的公钥解密,得到摘要B

(7)对比摘要A和摘要B, 如果数据在传输过程中完整性改变,必然对比结果不相同

图片 1.png

数字签名就这样实现了数据完整性验证 和 源认证,这一系列过程关键在于对公钥的运用,但如何管理公钥,如何区分和确认公钥的持有者?——数字证书技术

 

一张数字证书包括:

(1)证书持有者的身份信息(姓名,地址,组织等)

(2)持有者的公钥

(3)证书有效期

(4)认证机构的数字签名

 

结合数字证书的示例:

(1)发送方发出的内容包括“加密的内容”,“加密的摘要”,还包括发送方的“数字证书”

(2)接收方首先提取“数字证书”部分,用证书认证机构的公钥来检验真实性。

(3)用检验过的数字证书里的公钥,来解密“加密的摘要”得到摘要B

(4)解密“加密的内容”,做Hash运算,得到摘要A

(5)对比摘要A和摘要B


CCIE培训网络安全课程免费学习资料,联系网站客服获取

返回目录
在线咨询