安全通信
-
机密性(confidentially)。通过加密,使报文无法被截获者理解。
-
报文完整性(message integrity)。报文在传输过程中未被篡改或意外改动。
-
端点鉴别(end-point authentication)。确信通信的另一方具有所声称的身份。
-
运行安全性(operational security)。通过防火墙等反制对网络的攻击。
机密性
- 加密算法:明文+**A–>密文。
- 解密算法:密文+**B–>明文。
-
对称**系统中,两个秘钥是相同且秘密的。
-
公开**系统中,一个**公开,另一个**只有本人知道。
对称秘钥
-
凯撒密码。每个字母用字母表后的k个字母替换。
-
单码代替密码。使用字母表中的一个字母代替另一个字母。
-
多码代替密码。交替使用不同规则的单码代替密码。
-
块密码。要加密的额报文被处理为k比特的块,根据k比特和**映射到加密的k比特块。
-
DES(Data Encryption Standard, 数据加密标准)。使用64比特块,56比特**。
-
AES(Advanced Encryption Standard, 高级加密标准)。使用128比特块,128、192、256比特**。
-
密码块链接(Cipher Block Chaining, CBC)仅第一个报文发送一个随机值,随后使用计算的编码块代替后继随机数,避免相同的代码块产生相同的密文,从而防止猜测明文。
- 发送方生成随机的k比特串,即初始向量(Initialization Vector, IV)c(0),通过明文发送给接收方。
- 对于第一个块,计算明文m(1)和IV的异或,然后通过加密算法得到密文块c(1)。
- 对于第i个块,
。
公开**
- A先取得B的公钥(public key),用它和加密算法加密报文发送给B。B通过自己的私钥(private key)和解密算法,得到初始报文。
- 任何一个人都可以使用公钥向B发送报文,需要使用数字签名绑定发送方和报文。
RSA算法
- 利用暂未找到因式分解一个数的快速算法的事实。
- 指数运算耗时,可以使用RSA加密对称**(会话**),然后利用该对称**加密报文。
- 生成公钥私钥:
- 选择两个**大素数**p、q,乘积为1024比特量级。
- 计算
n=pq,z=(p-1)(q-1)。
- 选择e用于加密,e
报文完整性
密码散列函数
-
MD5,生成128比特的散列。
-
SHA-1,生成160比特的散列。
报文鉴别码
- 使用鉴别**(authentication key)和散列算法保证报文完整性。
- 步骤:
- A生成报文m,和鉴别**级联为m+s,计算散列H(m+s),即报文鉴别码(Message Authentication Code, MAC)。
- A将MAC附加到m上,生成扩展报文(m,H(m+s)),发送给B。
- B收到扩展报文(m,h),由s计算H(m+s),若等于h,则正常。
- MAC**不涉及加密算法**。
- 鉴别**可以物理上直接配置,或者使用设备的公钥分发。
数字签名
-
数字签名(digital signature)证明发送方认可一个文件,并且提供报文完整性。
- 发送数字签名
- 由初始报文得到散列。
- 使用私钥加密散列,进行签名。
- 将初始报文和签名后的摘要一起发送。
- 验证数字签名
- 用发送方的公钥解密散列。
- 使用相同的散列函数散列明文报文得到散列。
- 两个散列匹配,则确保完整性和发送方。
公钥认证
-
公钥认证(public key certification),证实一个公钥属于某个特定实体。否则,可能公钥会和实体不匹配。
- 通常需要通过认证中心(Certification Authority, CA)完成公钥和特定实体的绑定。
- CA验证实体身份之后,会生成一个证书,包含公钥和全局唯一的身份识别信息,然后对证书数字签名。实体发送自身公钥时,需要带上该证书,证明公钥的合法性。
端点鉴别
IP
加密口令
- 使用口令鉴别,并对口令使用对称**加密。
- 缺点:回放攻击,发送口令的加密版本,伪装发送者。
不重数和对称**
- R为不重数(nonce),K为A和B共享的对称**。如果B解密得到的不重数与B发送的不重数相等,则可鉴别A,并确定A是活跃的。
安全电子邮件
- 机密性。使用对称会话**,解决公开**效率低下的问题。使用公开**加密分发会话**。
- A选择随机的会话**Ks,加密报文m。
- 用B的公钥Kb+加密对称**。
- 级联加密报文和加密对称**,发送给B。
- B使用私钥Kb-解密得到Ks,用Ks解密得到m。
- 发送方鉴别和报文完整性。使用报文摘要和数字签名。
- A对报文散列,得到摘要,随后用A的私钥加密摘要,得到数字签名。
- 级联报文和数字签名发送给B。
- B用A的公钥解密签名得到摘要,和对报文散列的摘要对比。
- 公钥的发放需要CA的证书验证。
-
PGP(Pretty Good Privacy)是一个电子邮件加密方案。
- 报文摘要,MD5或SHA。
- 对称**加密,CAST、三重DES、IEDA。
- 公开**加密,RSA。
SSL
-
安全套接字层(Secure Socket Layer, SSL),提供套接字接口,技术上位于应用层,但是是一个提供TCP的运输层协议。
握手
- B与A握手分为3个阶段。
- 创建TCP连接。
- A发送包括A公钥的证书,验证A是真实的A。
- 发送给A一个加密的主**(MS)。
- 二三步协商算法、彼此发送不重数用于会话**的生成,实际步骤如下:
- 客户发送支持的密码算法列表,和客户不重数。
- 服务器从列表中选择一种对称算法、一种公钥算法、一种MAC算法,连通证书和服务器不重数发送给客户。
- 客户验证证书,提取服务器公钥,生成前主**(Pre-Master Secret, PMS)。用服务器公钥加密PMS,发送给服务器。
- 使用相同**导出函数,客户服务器分别从PMS和不重数中计算主**(Master Secret, MS)。
- 客户发送所有握手报文的MAC。
- 服务器发送所有握手报文的MAC。
- 最后两步使得报文免受篡改。
- 每次会话的不重数不一样,可以防止连接重放攻击。如,第二天发送前一天的相同序列的报文,通过完整性检验。
**导出
- MS需要生成4个会话**。
- Ea,A到B的会话加***。
- Eb,B到A的会话加***。
- Ma,A到B的会话MAC**。
- Mb,B到A的会话MAC**。
- 如果对称**用CBC(密码块链接),则两个初始向量IV也从MS导出。
数据传输
- SSL将数据流分为记录,MAC是数据、MAC**、当前序号的散列。

- 每发送一个SSL记录,序号+1。阻止一个会话中重放或者重排分组。
连接关闭
- 发送SSL记录,在类型中指出该记录用于终止SSL会话。
- 如果直接终止底层TCP连接,可能被截断攻击。
IPsec和v*n
-
IP安全(IP Security)协议被称为IPsec,为网络层提供安IPsec可以创建运行在公共网络之上的虚拟专用网(virtual private network, v*n)。
- IPsec提供机密性、源鉴别、数据完整性、重放攻击防护。
协议
-
鉴别首部协议(Authentication Header, AH)和封装安全性载荷(Encapsulation Security Payload, ESP)。
- AH提供源鉴、数据完整性服务。ESP多提供机密性服务,所以ESP运用广泛。
安全关联
- IPsec数据报在源和目的实体之间创建网络层的逻辑关联,称为安全关联(Security Association, SA)。
- SA是一个单工逻辑连接。两个实体互发安全连接需要2个SA。
- IPsec实体需要维护许多SA的信息(例如,一个有n台主机和2个物理网络的v*n中,网关路由器需要维护2n+2个SA信息)。这些SA信息存储在它的安全关联数据库(Security Association Database, SAD),包括:
- SA的32比特标识符,安全参数索引(Security Parameter Index, SPI)。
- SA的初始接口和目的接口。
- 使用的加密类型(例如,有CBC的3DES)和加***。
- 完整性检查类型(例如,有MD5的HMAC)和鉴别**。
IPsec数据报
- IPsec有两种不同的分组模式,隧道模式(tunnel mode),运输模式(transport mode),隧道数据报分组格式如下
- 发送步骤:
- 在初始IPv4数据报后附加ESP尾部。下一个首部表示载荷类型,如UDP。
- 使用SA的算法和**加密初始数据报+ESP尾部。
- 在加密量之前附加ESP首部,得到enchilada。ESP首部中的序号可以防御重放攻击。
- 使用SA算法和**生成整个enchilada的鉴别MAC。
- 生成新的IPv4首部附加到载荷之前。IP地址为两个端点的路由器接口地址。
- 接收步骤。目的IP是自身,协议字段为50,需要IPsec ESP处理:
- 针对enchilada中的SPI,确定数据报属于哪个SA。
- 计算enchilada的MAC并确定与ESP MAC一致。
- 检查序号字段,确定数据报时新的。
- 使用SA关联的解密算法和**解密被加密的单元。
- 删除ESP尾部,抽取初始IPv4数据报。
- IPsec实体维护安全策略库(Security Policy Database, SPD),指示
- 哪些类型的数据报(源、目的IP地址,协议类型)需要IPsec处理。
- 处理之后使用哪个SA。
IKE
-
因特网**交换(Internet Key Exchange, IKE)协议,自动在两个IPsec实体间交换证书,协商算法、**、SPI,之后在SAD中键入SA信息。类似SSL握手。
运行时安全
防火墙
- 防火墙的目标:
- 从内部到外部和从外部到内部的所有流量都通过防火墙。
- 仅被授权的流量允许通过。
- 防火墙自身免于渗透。否则可能提供安全的假象。
-
传统分组过滤器。检验每个数据报,根据IP地址、TCP端口号、TCP标志比特等决定通过还是丢弃。

- 每个TCP连接第一个报文段ACK比特为0,其他所有报文段为1。过滤进入的所有SYN分组,即ACK为0的分组,可以阻止外部发起TCP连接,但是允许内部发起TCP连接。
- 路由器使用访问控制列表实现防火墙规则。
-
状态分组过滤器。跟踪TCP连接,通过FIN分组或者一段时间没有活动判断连接关闭,拒绝属于关闭连接的分组。
-
应用程序网关。可以处理应用层数据,如用户身份等。起到中继代理的作用。

- 仅对一种应用程序进行深度分组检查(deep packet inspection),深入查看分组携带的实际数据。
入侵检测系统
- 不仅可以检查分组首部,还能够对不同应用程序进行深度分组检查。
-
入侵检测系统(Intrusion Detection System, IDS)能够对潜在的恶意流量告警。
-
入侵防止系统(Intrusion Prevention System, IPS)可以消除可疑流量。
-
基于特征(signature-based)的IDS维护攻击特征库,匹配攻击。但是无法判断新的攻击,也有可能产生虚假警告。
-
基于异常(anomaly-based)的IDS观察流量,生成流量概况,寻找统计上不寻常的分组,如ping分组比例不寻常等。如何区分和统计流量难。
- 大多数IDS都是基于特征的,有些包含基于异常的特性。
相关文章:
-
2021-09-19
-
2022-12-23
-
2022-12-23
-
2021-05-15
-
2021-09-08
-
2021-10-31
-
2021-11-19
-
2021-05-22
猜你喜欢
-
2021-08-28
-
2021-07-08
-
2021-06-04
-
2021-08-12
-
2021-04-27
-
2021-06-08
-
2021-12-02
相关资源
-
下载
2023-04-07
-
下载
2023-02-23
-
下载
2022-12-20