网络安全理论与协议
大纲
网络安全基本概念
a) 网络安全特征;常见的不安全原因、因素;常见攻击手段
b) 网络安全模型、网络访问安全模型
PKI 体系
a) PKI 基本概念、组成和基本结构
b) PKI 基本功能 、证书的生命周期、证书链、交叉认证
IPSec:AH、ESP 与 IKE
a) 熟悉 SA、SAD/SPD
b) IKE:相关密钥的推导和作用;认证和密钥协商过程
c) AH/ESP 头标、保护范围
d) 工作模式:传输模式和隧道模式
e) VPN 的种类、功能
f) IPSec VPN 的处理流程
SSL/TLS
a) SSL 的基本层次结构、安全服务
b) SSL 协议的基本描述
c) 安全操作流程:握手协议、会话重用
d) 相关密钥的生成(派生方法)
防火墙和 NAT
a) 防火墙种类、功能
b) 包过滤型防火墙和状态检测型防火墙之间的差异
c) NAT 基本原理、作用;
d) 数据访问 SNAT 和 DNAT 的处理流程和数据包的变化
e) 基本组网原理:交换机、路由器等的基本功能
应用层安全和无线安全
a) PGP 的基本功能、安全服务
b) SET 协议的基本概念、双重数字签名等
c) WLAN 的基本概念,WEP 安全服务、增强方案举例
1. 网络安全基本概念
a) 网络安全特征;常见的不安全原因、因素;常见攻击手段
1. 网络安全特征
- 机密性:确保信息不会泄露给未经授权的用户或实体。
- 完整性:保证数据在传输或存储过程中未被非法修改或破坏。
- 可用性:确保授权用户可以随时访问并使用所需的信息。
- 可控性:具备控制信息传播及其内容的能力,防止未经授权的操作。
2. 常见的不安全原因与因素
- 物理因素:设备安全不足或电磁泄漏等问题可能导致信息泄露或设备损坏。
- 系统因素:系统漏洞、病毒感染和入侵等问题容易被利用进行攻击。
- 网络因素:网络协议漏洞、数据篡改、网络拥塞或拒绝服务攻击使得网络容易被攻击者利用。
- 管理因素:管理员安全意识薄弱或误操作可能导致安全策略缺陷,增加系统风险。
3. 常见攻击手段
- 社会工程:通过欺骗或伪装身份获取敏感信息,如钓鱼攻击。
- 口令破解:使用工具破解口令或通过窃听、猜测等方式获得用户凭证。
- 地址欺骗:伪造IP地址或电子邮件地址,假装是信任来源,进行欺诈性操作。
- 连接盗用:攻击者在合法连接建立后劫持会话,冒充一方与另一方通信。
- 网络窃听:监听网络通信,获取传输中的敏感信息。
- 数据篡改:截获并修改数据,破坏其完整性。
- 拒绝服务攻击(DoS):通过大量请求阻塞系统或网络,导致服务不可用。
b) 网络安全模型、网络访问安全模型
1. 网络安全模型
网络安全模型用于保护数据在传输中的安全,主要目标是确保端到端的通信不受窃听、篡改或伪造。这种模型依赖于各种安全机制,如加密、身份认证和数据完整性保护,以防止恶意攻击。
- 主动攻击:更改或伪造数据流的攻击,如伪装、重放、篡改数据、拒绝服务。
- 被动攻击:窃听或监视数据流,获取敏感信息,如窃听攻击、流量分析。
主动与被动攻击的区别:是否对目标系统有修改或者伪造。
特点:主动攻击易于发现,难以防护;被动攻击难以发现,但易于防护。
2. 网络访问安全模型
网络访问安全模型侧重于保护网络本身免遭未经授权的访问和操作。通过访问控制、身份验证和资源管理,确保只有授权用户能够进入系统并操作特定资源。
- 认证:验证通信双方的身份,确保是合法用户。
- 访问控制:限制未经授权的用户访问网络资源。
- 数据机密性:通过加密保护数据不被泄露。
- 数据完整性:防止数据被篡改或破坏。
- 不可否认性:确保通信双方不能否认参与了通信或交易。
八类特定安全机制:
- 加密:用加密算法对信息加密。保护信息的机密性
- 数字签名:用签名算法对信息进行计算,计算结果附加于信息单元。用于身份认证、数据完整性和非否认服务
- 访问控制:用于实施资源访问权限的机制
- 数据完整性:用于确保信息的完整性
- 认证交换:确保信息交换的实体是所声称的实体,通过信息交换以确保实体身份,包括公知密码、特征、位置信息等
- 流量填充:填充信息,防止流量分析
- 路由控制:能够为特定数据选择特定路由
- 公证:采用可信任的第三方以确保一些信息交换的性质
五类安全服务:
认证(Authentication):提供某个实体的身份保证
对等实体认证、数据源认证
访问控制(Access control):保护资源,防止对它的非法使用和操纵
数据机密性(Data encryption):保护信息不被泄露
连接保密性、无连接保密性、选择域保密性、流量保密性
数据完整性(Integrity):保护信息以防止非法篡改
具有恢复功能的连接完整性、无恢复功能的连接完整性、选择与连接完整性、无连接完整性、选择域无连接完整性
不可否认性(No-repudiation):防止参与通信的一方事后否认
源点的不可否认性、信宿的不可否认性
安全机制与安全服务的关系:
安全服务/安全机制 加密 数字签名 访问控制 完整性 认证 流量填充 路由控制 公证 对等实体认证 Y Y Y 数据源认证 Y Y 访问控制 Y 机密性 Y Y 流量机密性 Y Y Y 数据完整性 Y Y Y 非否认服务 Y Y Y 可用性 Y Y
网络各层的安全协议:
- 链路层:链路隧道协议、加密技术
- 网络层:包过滤机制、NAT、IPsec协议、VPN(注意是在网络层)
- 传输层/会话层 :SSL/TLS 协议
- 应用层:SHTTP、HTTPS、PGP、S/MIME等
2. PKI体系
a) PKI 基本概念、组成和基本结构
1. PKI 基本概念
公钥基础设施(Public Key Infrastructure,PKI)是基于非对称加密算法的安全框架,主要用于提供安全服务,如身份认证、数据加密、数字签名等。PKI通过公钥和私钥的配对管理,支持信息的安全传输。它为电子商务、电子政务等应用中的信息安全提供了统一的标准和可信的第三方服务。
- 非对称加密:PKI利用非对称加密技术,其中公钥用于加密,私钥用于解密。
- 公钥证书:PKI使用证书来验证实体的身份,证书通过认证机构(CA)签发,保证公钥的真实性。
2. PKI的组成
- 认证机构(CA,Certificate Authority):负责签发、管理和撤销证书。CA是PKI体系中权威可信的第三方。
- 注册机构(RA,Registration Authority):负责验证申请证书用户的身份,并将信息传递给CA进行证书签发。
- 证书库(Certification Library):存储证书和证书撤销列表(CRL),供公众查询,通常使用LDAP协议进行访问。
- 密钥备份与恢复系统:确保加密密钥在丢失后能够恢复,以保证数据解密的连续性。
- 证书撤销列表(CRL,Certificate Revocation List):当证书失效或被撤销时,CRL用于通知相关方证书不再有效。
3. 证书的基本结构
- 证书版本号:标识证书的版本。
- 证书序列号:CA分配的唯一标识符。
- 签名算法标识:指示用于生成证书签名的算法。
- CA名称:签发证书的认证机构名称。
- 有效期:证书的起始和终止时间。
- 用户信息:证书持有者的身份信息和公钥。(<<–证书的核心)
- 扩展项:包括密钥用途、策略扩展等信息。
b) PKI 基本功能 、证书的生命周期、证书链、交叉认证
1. PKI 基本功能
- 认证:通过数字证书验证实体身份,确保数据来源的真实性。
- 完整性:通过数字签名和消息摘要,确保数据在传输过程中的完整性,防止篡改。
- 保密性:通过数字信封技术,加密传输会话密钥,保证通信内容的保密性。
- 不可否认性:通过数字签名,防止通信双方事后否认参与过通信。
- 公证服务:CA作为可信第三方,为交易或通信提供公证服务,确保信息的合法性和真实性。
2. 证书的生命周期
初始化阶段:用户通过RA向CA申请证书,经过身份验证后,CA签发证书并将证书存储在证书库中,供公众查阅。
使用阶段:证书持有者使用私钥进行数据签名,接收方通过验证证书和数字签名,确保数据来源的真实性。
撤销阶段:当证书失效、用户密钥泄露或用户身份不再有效时,CA会将证书列入CRL,并通知各方证书已被撤销。
何时需要撤销证书:用户私钥泄露,证书不被信任,CA不被信任,CA私钥泄露
证书更新:在证书即将过期时,CA可自动或手动更新证书,签发新的证书。
3. 证书链
证书链是一系列从终端用户证书到根CA证书的连续证书,用于验证证书的可信度。每一级证书由上一级CA签名,最终由根CA签名。验证时,接收方会从用户的证书开始,一直追溯到根CA,确保整个链条的可信性。
示例:A<<B>>B<<C>>C<<D>>D<<E>>,此时建立了A和E的认证(安全获取E的公钥)
4. 交叉认证
- 交叉认证:在多个独立运行的PKI系统之间建立信任关系的方式。CA之间通过交叉签发证书,确保不同PKI体系中的用户可以互相验证证书。
- 信任模型:PKI体系的信任模型可以是层次模型、分布式模型或混合模型。层次模型中,根CA控制整个体系;分布式模型中,多个CA相互独立,但通过交叉认证建立信任;混合模型则结合了两者的特点。
通过交叉认证,PKI可以实现全球互通性,支持跨域安全通信和数据交换。
3. IPSec
1. SA、SAD/SPD
SA(Security Association)安全关联:在IPSec中,SA是通信双方之间的单向安全连接,用于指定加密和认证的方式。
SA三元组:安全参数索引(SPI)、目的IP地址和使用的协议(AH或ESP)。
SA是单向的,因此在双向通信时,需要两个SA来分别保护每个方向的流量(不同方向的传输可能存在不同的策略)。
SAD(Security Association Database):数据库,存储所有当前活动的SA,每个SA条目包含认证和加密算法、密钥、序列号等(存储协商完成后的SA参数)。
SPD(Security Policy Database):数据库,定义IPSec处理的策略,用于决定哪些数据流需要进行IPSec处理,策略包括IPSec协议(AH或ESP)、操作模式(传输或隧道模式)等。
2. IKE 相关密钥的推导和作用;认证和密钥协商过程
IKE(Internet Key Exchange):因特网密钥交换协议,是一个以受保护的方式动态协商IPsec SA的协议。
IKE通过Diffie-Hellman密钥交换生成会话密钥,保护后续的IPSec数据传输。IKE还负责协商IPSec的SA,确保双方使用相同的加密算法、密钥和安全参数。密钥推导使用PRF函数生成不同用途的密钥,如SKEYID_d(派生密钥)、SKEYID_a(认证密钥)、SKEYID_e(加密密钥)。
IKE密钥协商与DH的优势:
- 可以防止阻塞/拒绝服务攻击
- 使用临时交互号防止重放攻击
- 对DH交换的数据进行认证,防止中间人攻击
3. AH/ESP 头标、保护范围
AH(Authentication Header):认证
- 提供数据包的完整性和源身份认证,但不提供加密。
- AH的保护范围包括IP头和数据载荷,但不包括某些变化的IP头字段(如TTL)。
ESP(Encapsulating Security Payload):加密
- 提供加密、数据完整性和源身份认证。
- ESP保护IP包的载荷,但不会对IP头本身进行认证或加密。
- ESP通常用于保证数据保密性和防止重播攻击。
4. 工作模式:传输模式和隧道模式
- 传输模式(Transport Mode):只保护IP包的载荷,主要用于端到端的通信,适合主机之间的通信。
- 隧道模式(Tunnel Mode):保护整个IP包,将整个包封装在一个新的IP包中,用于网关到网关或网关到主机的通信。隧道模式常用于VPN,保护整个数据包。
5. VPN 的种类、功能
- VPN(Virtual Private Network):通过公用网络(如互联网)在远程用户或不同站点之间建立安全的通信通道。基于IPSec的VPN通常用于:
- 站点到站点VPN:用于连接两个或多个局域网,通常用于公司分支机构之间的通信。
- 远程访问VPN:允许远程用户通过VPN访问公司内网资源。
- 客户端到站点VPN:用户使用VPN客户端软件连接到企业网络。
6. IPSec VPN 的处理流程
- SA协商:通过IKE协商IPSec的SA,包括加密和认证算法的选择。
- AH/ESP头的插入:根据所选择的IPSec协议(AH或ESP),在传输层或网络层插入对应的头标。
- 数据包的加密和认证:使用ESP进行加密或使用AH进行认证,保护数据的完整性和保密性。
- SA生命周期管理:根据协商的参数,定期进行SA的重新协商或密钥更新,确保通信的持续安全。
IPSec对外出IP分组的处理流程:
IPSec对进入IP分组的处理流程:
4. SSL/TLS
a) SSL 的基本层次结构和安全服务
SSL 基本层次结构:
SSL 协议是在传输层(TCP 之上)实现的安全协议,分为两个主要层次:
- 记录层:管理数据传输,提供数据加密、完整性保护。
- 握手层:在通信开始时建立安全参数,包括身份认证和密钥协商。
SSL 提供的安全服务:
- 身份认证:验证客户端和服务器的合法性,通常通过 X.509 证书实现。
- 数据保密性:通过对称加密算法(如 DES、Triple DES、AES、RC4 等)确保数据在传输过程中无法被窃听。
- 数据完整性:通过 MAC(消息认证码)和散列算法(如 MD5 或 SHA-1)来确保数据未被篡改。
b) SSL 协议的基本描述
SSL(Secure Socket Layer)是一种为客户端和服务器之间的通信提供加密通道的协议,最初由 Netscape 开发,现已被 TLS 取代。SSL 使用公钥和对称密钥加密技术来确保数据的机密性、完整性和身份认证。它通过记录协议和握手协议来管理连接。
- 握手协议:在会话开始时协商加密算法、认证身份并生成会话密钥。
- 记录协议:负责加密和解密实际传输的数据,并确保数据的完整性。
SSL/TLS 采用的是分层结构,记录协议在握手协议之上运行,提供机密性和完整性保护。
c) 安全操作流程:握手协议、会话重用
握手协议:
SSL 握手协议包括多个阶段:
- 客户端发送 ClientHello 消息:包含支持的 SSL 版本、加密算法、会话 ID 以及随机数。
- 服务器回应 ServerHello 消息:选择 SSL 版本、加密算法,并返回会话 ID 和随机数。
- 服务器发送证书(可选):用于客户端验证服务器身份。
- 密钥交换:客户端生成 Pre-Master Secret,通过服务器的公钥加密后发送给服务器。
- 生成主密钥(Master Secret):客户端和服务器利用 Pre-Master Secret 以及双方的随机数生成 Master Secret。
- 更改密码规范:双方通知对方开始使用协商好的加密算法和密钥。
- 握手完成:双方交换 Finished 消息,确保握手过程未被篡改,之后即可开始加密通信。
会话重用:
会话重用允许客户端和服务器在相同会话 ID 下重用以前协商的加密参数,避免重新进行完整的握手过程。通过这一机制,SSL 减少了握手时使用的计算资源,并加快了连接建立速度。
d) 相关密钥的生成(派生方法)
密钥生成与派生:
预主密钥(Pre-Master Secret):客户端生成 48 字节的 Pre-Master Secret,并使用服务器的公钥加密后发送。
主密钥(Master Secret):客户端和服务器使用相同的 Pre-Master Secret 和随机数生成 Master Secret,公式为:
1 | Master Secret = PRF(Pre-Master Secret, "master secret", ClientHello.random + ServerHello.random)[0..47] |
- 派生会话密钥:Master Secret 被用来生成加密密钥、MAC 密钥和初始化向量(IV),分别用于数据的加密和完整性保护。这些密钥由 Master Secret 和随机数结合通过特定的伪随机函数(PRF)派生。SSL 3.0 和 TLS 1.0 使用不同的密钥派生方法。
注意密钥派生时,PRF的输入除了主密钥,还需要服务端与客户端一开始交换的随机数
在此过程中,SSL 使用了 HMAC、MD5、SHA-1 等算法来确保密钥生成的安全性。
5. 防火墙和 NAT
a) 防火墙种类、功能
防火墙种类:
- 包过滤型防火墙(Packet Filtering Firewall):基于IP和传输层协议(如TCP/UDP)的头信息过滤数据包,决定是否转发或丢弃数据包。
- 状态检测防火墙(Stateful Inspection Firewall):除了基于头信息过滤,还跟踪连接的状态,通过建立连接记录来判断数据包的合法性。
- 应用级网关防火墙(Application-level Firewall):在应用层上针对特定应用协议(如HTTP、FTP)进行数据包过滤,支持内容级别的安全控制。
- 代理服务型防火墙(Circuit-level Gateway):通过代理服务,将外部访问与内部资源隔离,提供通信过程的中继和隔离功能。
- 复合型防火墙(Hybrid Firewall):结合包过滤、状态检测和应用级网关技术,提供更为综合的安全防护能力。
防火墙的功能:
- 访问控制:过滤、代理、隔断外部对内部网络的非法访问。
- 加密与认证:实现VPN等加密通信,提供用户身份验证。
- 地址翻译(NAT):隐藏内部网络结构,映射外部IP。
- 日志与审计:记录网络访问情况,提供安全审计与报警。
- 负载均衡与流量控制:优化流量分布,防止资源耗尽。
- 内容过滤:扫描传输数据,阻止恶意内容或不安全流量(如病毒、恶意网址)。
b) 包过滤型防火墙和状态检测型防火墙之间的差异
- 包过滤型防火墙:
- 基于网络层的规则,直接分析每个独立的数据包。
- 优点:简单高效、对用户透明、易于实现。
- 缺点:无法识别连接的状态,不能处理多包攻击,不能验证数据流的上下文,无法进行用户认证。
- 状态检测型防火墙:
- 不仅检查每个数据包,还跟踪连接的状态,确保数据包符合当前连接状态。
- 优点:能够防范基于连接上下文的攻击,处理复杂协议更为有效,安全性较高。
- 缺点:需要维护大量连接状态信息,消耗更多的系统资源。
c) NAT 基本原理、作用
NAT(Network Address Translation):NAT 是一种地址转换技术,用于在私有网络和公有网络之间进行 IP 地址的转换。它可以将私有 IP 地址转换为公共 IP 地址,以隐藏内部网络结构并减少公有 IP 地址的需求。
NAT 的作用:
- 地址复用:通过将多个私有 IP 地址映射到一个公共 IP 地址,缓解 IP 地址短缺问题。
- 网络隔离:隐藏内部网络结构,增强网络安全。
- 负载均衡:通过动态映射,分配外部请求到不同的内部服务器,实现流量均衡。
d) 数据访问 SNAT 和 DNAT 的处理流程和数据包的变化
两种NAT:源地址NAT与目的地址NAT:
- SNAT(Source NAT):用于改变数据包的源 IP 地址。典型应用是内网设备访问公网时,NAT 将内网设备的私有 IP 地址转换为公网 IP 地址。
- 处理流程:
- 数据包从内部主机发送到 NAT 设备。
- NAT 设备将数据包的源 IP 地址替换为公共 IP 地址,并记录映射关系。
- 外部网络接收数据包并响应时,NAT 将响应数据包的目标 IP 地址还原为内部主机的私有 IP。
- 处理流程:
- DNAT(Destination NAT):用于改变数据包的目标 IP 地址,常用于实现外网访问内网服务。
- 处理流程:
- 外部设备发出请求,数据包到达 NAT 设备。
- NAT 将目标 IP 地址转换为内部网络服务器的 IP 地址,并将数据包转发到目标主机。
- 内部服务器响应时,NAT 再次修改数据包的源 IP 地址,将其恢复为外部设备原始请求的目标 IP。
- 处理流程:
e) 基本组网原理:交换机、路由器等的基本功能
- 交换机(Switch):
- 工作在数据链路层(第二层)。
- 主要用于在同一网络中的多个设备之间建立连接,基于 MAC 地址进行数据帧的转发。
- 通过交换技术提高网络性能,减少冲突域。
- 路由器(Router):
- 工作在网络层(第三层)。
- 负责在不同网络之间转发数据包,基于 IP 地址决定数据包的最佳传输路径。
- 提供广域网连接,支持不同的子网和协议间的通信。
这些网络设备共同构建网络通信的基础,交换机用于本地网络中的通信,而路由器则连接不同网络并实现跨网络的数据转发。
课后题:分析FTP主动模式和 被动模式下,包过滤型和状态检测型两种防火墙的过滤策略
在讨论防火墙的过滤策略前,了解 FTP 的两种工作模式很重要。
- FTP 主动模式(Active Mode):
- 客户端通过端口 21 与服务器建立控制连接,并告诉服务器它在哪个端口(通常大于 1023)接收数据连接。
- 服务器从其 20 号端口主动连接客户端指定的端口,进行数据传输。
- FTP 被动模式(Passive Mode):
- 客户端通过端口 21 建立控制连接。
- 服务器被动地开放一个高端口(大于 1023)并告知客户端,客户端再连接该端口来进行数据传输。
包过滤型防火墙的过滤策略
包过滤型防火墙通过预设的规则,根据数据包的源地址、目标地址、源端口、目标端口和协议等信息进行过滤。
1. 主动模式下的过滤策略
- 控制连接:允许客户端的任何高端口连接到服务器的 21 号端口。
- 规则示例:允许 出站 TCP 数据包从客户端高端口连接到服务器的 21 号端口。
- 允许 入站 TCP 数据包从服务器的 21 号端口返回到客户端的高端口。
- 数据连接:服务器会从其 20 号端口主动连接到客户端的高端口,这要求防火墙开放客户端的高端口。
- 规则示例:允许 入站 TCP 数据包从服务器的 20 号端口连接到客户端的高端口。
- 允许 出站 TCP 数据包从客户端的高端口返回到服务器的 20 号端口。
问题:由于服务器在主动模式下发起数据连接,客户端的防火墙必须开放大量高端口,增加了攻击面。
2. 被动模式下的过滤策略
- 控制连接:同主动模式,允许客户端从高端口连接到服务器的 21 号端口。
- 规则示例:允许 出站 TCP 数据包从客户端高端口连接到服务器的 21 号端口。
- 允许 入站 TCP 数据包从服务器 21 号端口返回到客户端的高端口。
- 数据连接:服务器在被动模式下开放高端口,客户端连接该高端口。
- 规则示例:允许 出站 TCP 数据包从客户端高端口连接到服务器指定的高端口。
- 允许 入站 TCP 数据包从服务器的高端口返回到客户端的高端口。
问题:需要开放服务器的动态高端口以允许数据连接,但比主动模式更安全。
状态检测型防火墙的过滤策略
状态检测防火墙能够跟踪连接的状态信息,不仅基于 IP 和端口进行过滤,还能根据连接状态动态生成规则。这提高了安全性和效率。
1. 主动模式下的过滤策略
控制连接:跟踪 FTP 控制连接,识别出客户端和服务器之间的控制会话。
- 规则示例:跟踪并允许控制连接的状态变化。
数据连接:当控制连接中检测到 PORT 命令,防火墙可以动态允许服务器从 20 号端口连接客户端的高端口,而不需要提前开放大量高端口。
- 规则示例:在控制连接中监测到 PORT 命令后,动态生成允许服务器 20 号端口访问客户端指定高端口的规则。
优势:动态生成的规则大大减少了开放端口的范围,提高了安全性。
2. 被动模式下的过滤策略
- 控制连接:与主动模式相同,跟踪控制连接的状态。
- 规则示例:跟踪并允许控制连接的状态变化。
- 数据连接:当防火墙检测到 PASV 命令时,它会动态开放服务器返回的高端口,并允许客户端连接该端口进行数据传输。
- 规则示例:检测到 PASV 命令后,动态生成允许客户端访问服务器指定高端口的规则。
优势:不需要预先开放所有服务器高端口,而是根据实际连接动态开放,大幅提高了安全性。
总结
- 包过滤型防火墙:只能根据静态规则过滤数据包,主动模式下需要开放大量高端口,不太安全;被动模式下也需要开放服务器高端口,存在攻击面。
- 状态检测型防火墙:通过动态跟踪 FTP 控制连接,可以根据 FTP 命令动态开放相应的端口,大大提高了安全性和灵活性。
6. 应用层安全和无线安全
a) PGP 的基本功能、安全服务
(1)PGP提供的基本安全服务
PGP(Pretty Good Privacy)是用于电子邮件和文件加密的安全协议,提供如下基本功能和安全服务:
注意PGP流程顺序不可改变:签名 - 压缩 - 加密(在压缩前签名,压缩后加密)
签名-压缩-加密顺序的原因:
签名后再压缩:是为了方便保存未压缩的报文和签名,为了以后存储方便,如果签名是对压缩后报文进行的,势必要保存一份压缩的文档与之对应,或者增加部分计算。但相同的压缩算法可能产生略微不同的压缩结果。
压缩后加密:可以节约传输文件的存储空间,加快加密速度,且因为压缩,减少了原文中的关联性,使密码分析也更困难。
- 加密:PGP 使用对称加密算法(如 IDEA、3-DES 或 CAST-128)加密邮件内容。为解决对称密钥分发问题,PGP 使用接收者的公钥加密一次性会话密钥,然后将加密后的会话密钥和邮件一起发送。
- 认证:PGP 支持数字签名,通过使用发件人的私钥对消息摘要(使用 SHA-1 或 MD5 计算)进行签名,以确保消息的来源和不可抵赖性。接收者使用发件人的公钥验证签名。
- 压缩:为了节省存储空间并提高加密效率,PGP 在加密之前压缩邮件。先签名再压缩,以确保签名针对未压缩的内容。
- 兼容性:PGP 使用 Radix-64 编码将二进制加密数据转换为 ASCII 字符,确保兼容所有电子邮件系统。
- 这一步会将报文扩展33%
- 分段与重组:当邮件超过长度限制时,PGP 自动将其分段,并在接收端重新组装。
PGP 提供的安全服务:
- 机密性:通过加密确保邮件内容仅能被指定的接收者解密和查看。
- 认证性:通过数字签名确认发件人的身份。
- 完整性:通过消息摘要和签名确保邮件在传输过程中未被篡改。
- 不可抵赖性:发送者无法否认其发送的消息,因为签名是用其私钥生成的。
(2)PGP的处理流程
当需要同时提供机密性与认证时,需要如下流程:
- 对消息做Hash得到消息摘要
- 使用发送方的私钥签名
- 合并消息摘要与签名
- 压缩数据
- 使用对称密码算法加密,密钥随机生成
- 将对称密钥使用接收方的公钥加密,作为数字信封
- 将数字信封与加密的密文拼接发送给对方
(3)PGP的密钥管理
PGP使用四级密钥:
- 一次性会话的对称密钥
- 公钥
- 私钥
- 基于对称密钥的口令
此时出现对应的三种问题:
- 随机生成会话密钥(需要伪随机生成器)
- 需要手段来标识公钥
- 每个PGP实体需要维护一个保存其公钥/私钥对的文件 和一个保存通信对方公钥的文件
密钥标识符:KeyID
一个用户有多个公钥/私钥对时,接收者如何知道发送者是用了哪个公钥来加密会话密钥?
方法:
- 将公钥与消息一起传送
- 将一个标识符与一个公钥关联,对一个用户来说做到一一对应
定义KeyID 包括64个有效位,(KUa mod 2^64)。
密钥环:Key Rings
需要一种系统化的方法存储和组织接收方和发送方的密钥号keyID,以在消息中提供保密和认证功能。
PGP在每一个节点上提供一对数据结构:
- 存储该节点拥有的公钥/私钥对私钥环(使用口令保护密钥)
- 存储本节点知道的其他用户的公钥环
密钥环主要作用是存储公钥-私钥与密钥标识符的对应,相对于一个映射表。
(4)公钥管理
PGP虽然采用公钥密码体系,但不是基于PKI证书体系。
需要保证公钥确实是所指定用户的合法公钥。
实现方式:
- 直接索取,其他方式确认
- 从可信任证书机构获得B的公钥
- 采用信任关系保护(从可信第三方)公钥
- 完全信任、部分信任、不信任
S/MIME与PGP:
- S/MIME 旨在成为商业和机构使用的工业标准;
- S/MIME强化了证书的作用:使用X.509证书,它的密钥管理方案介于严格的 X.509证书层次结构和PGP信任网之间
- PGP 为个人e-mail 提供安全。
b) SET 协议的基本概念、双重数字签名
SET(Secure Electronic Transaction)协议是由 Visa 和 MasterCard 为了保障互联网信用卡交易的安全性而开发的协议。它是一个为电子商务设计的开放规范,确保交易中涉及的各方数据的机密性、完整性和身份认证。
SET协议的三方:消费者、商家和银行。
确保了网上 交易数据的保密性,数据的完整性以及交易的不可抵赖性。 特别是能保证不将消费者银行卡号暴露给商家,不将消费 者的购物信息暴露给银行等优点,因此它成为目前公认的 信用卡/借记卡网上交易安全标准.
SET 协议的基本概念:
- 信息的机密性:通过加密确保信用卡信息和交易细节的机密性。
- 数据完整性:通过数字签名和哈希函数(如 SHA-1)确保传输过程中数据未被篡改。
- 身份认证:通过使用 X.509 数字证书对持卡人、商家和支付网关进行身份认证,确保交易参与方的合法性。
- 不可抵赖性:使用 RSA 签名保证交易的不可抵赖性。
双重数字签名(Dual Signature):
- 概念:在 SET 中,双重签名用于在信用卡支付中同时保护订单信息和支付信息,并将其分离。商家可以看到订单信息,但不能看到支付信息;银行可以看到支付信息,但不能查看订单信息。这种机制通过双重签名来实现。
- 实现过程:
- 客户分别生成两个哈希值:一个用于订单信息,另一个用于支付信息。
- 将这两个哈希值连接起来,并对其进行签名,生成双重签名。
- 商家和银行可以验证双重签名,确保交易信息的完整性和机密性。
c) WLAN 的基本概念,WEP 安全服务、增强方案举例
1. WLAN 的基本概念
WLAN(无线局域网,Wireless Local Area Network)是一种通过无线电波连接终端设备(如笔记本、手机)和网络的技术,通常用于短距离内的网络通信。它可以通过无线接入点(Access Point, AP)提供局域网的连接,主要特点包括:
- 灵活性:WLAN 安装方便,用户可以在接入点覆盖范围内自由移动。
- 易于部署:无需有线连接,网络部署更加简便。
- 应用广泛:WLAN 被广泛应用于家庭、企业以及公共场所的互联网接入。
WLAN 标准:
- IEEE 802.11 系列标准:是 WLAN 的主要协议族,包含多个不同的版本,例如 802.11b、802.11g、802.11a、802.11n、802.11ac 等,提供不同频段和速率的无线通信服务。
WLAN 的架构:
- Ad-hoc 模式:不依赖接入点,设备间直接通信,适用于小型临时网络。
- Infrastructure 模式:所有设备通过接入点连接,形成局域网,是主流的 WLAN 架构。
2. WEP 安全服务
WEP(Wired Equivalent Privacy,等效于有线保密)是 WLAN 的早期安全协议,旨在提供类似于有线网络的保密性。它的设计目的是防止未经授权的用户访问无线网络并保护无线数据传输的机密性和完整性。WEP 的安全服务包括:
- 访问控制:要求所有连接 WLAN 的设备共享一个静态密钥,只有拥有正确 WEP 密钥的用户才能接入网络。
- 数据机密性:使用 RC4 流加密算法对数据进行加密,确保通信内容无法被第三方窃听。WEP 使用一个 40-bit 或 104-bit 的密钥,加上 24-bit 的初始化向量(IV)生成密钥流来加密数据。
- 数据完整性:使用 CRC-32(循环冗余校验)来确保数据在传输过程中未被篡改。
WEP 的工作流程:
- 密钥共享:所有 WLAN 设备共享一个静态的对称密钥。
- 加密数据:发送方通过 RC4 算法对数据进行加密,生成密文。
- 校验完整性:发送方使用 CRC-32 对数据进行校验,并将校验值附加到加密后的数据中。
3. WEP 的安全弱点
虽然 WEP 提供了基本的加密和完整性检查,但其设计存在多个严重的安全漏洞:
- IV 长度不足:WEP 使用的 24-bit IV 过短,容易出现 IV 重复。攻击者可以通过捕获大量无线数据包,利用重复的 IV 值破解加密密钥。
- RC4 弱点:RC4 算法存在已知的密钥调度攻击漏洞,攻击者可以通过分析弱密钥流推断出 WEP 密钥。
- CRC-32 不安全:WEP 使用的 CRC-32 校验具有线性特性,攻击者可以通过修改数据包并重新计算校验值来进行攻击。
- 静态密钥:所有设备共享同一个静态密钥,没有动态密钥管理机制,增加了密钥泄露的风险。
4. WEP 的增强方案举例
为了应对 WEP 的安全弱点,后来提出了多种增强方案,主要包括:
- WPA(Wi-Fi Protected Access):
- 过渡方案:WPA 是一种临时解决方案,用来替代 WEP,直到 IEEE 802.11i 标准(即 WPA2)正式通过。它可以兼容旧设备,提供更强的安全性。
- TKIP(临时密钥完整性协议,Temporal Key Integrity Protocol):WPA 引入了 TKIP,动态生成每个会话的加密密钥,并增加了 IV 长度(48-bit),有效减少了 IV 重复问题。
- 消息完整性检查:WPA 使用更强的消息完整性检查算法(MIC,Message Integrity Check),防止篡改攻击。
- WPA2(Wi-Fi Protected Access II):
- 最终方案:WPA2 是 802.11i 标准的一部分,完全替代 WEP,提供更高的安全性。
- AES 加密:WPA2 使用 AES(Advanced Encryption Standard)作为加密算法,提供更强的机密性。
- CCMP 模式:WPA2 使用 CCMP(Counter Mode with Cipher Block Chaining Message Authentication Code Protocol)作为加密和认证协议,确保数据包的机密性、完整性和源验证。
- 802.1X 认证:
- 基于端口的网络访问控制:802.1X 提供了基于 RADIUS 等外部服务器的认证机制,支持动态分配密钥,防止静态密钥问题。
- EAP 扩展认证协议:802.1X 支持多种认证方式(如 EAP-TLS、EAP-PEAP 等),提高身份认证的灵活性和安全性。
- WAPI(WLAN Authentication and Privacy Infrastructure):
- 中国标准:WAPI 是中国提出的 WLAN 安全标准,采用了椭圆曲线加密算法和对称加密算法,提供强大的认证和加密服务,尽管其算法未公开。