博客主页:christine-rr-CSDN博客
专栏主页:软考中级网络工程师笔记
大家好,我是christine-rr !目前《软考中级网络工程师》专栏已经更新三十篇文章了,每篇笔记都包含详细的知识点,希望能帮助到你!
今天的笔记是是应用层安全协议,主要包括SSL/TLS,HTTPS和SHTTP,SET和PGP,S/MIME,Kerberos等相关安全协议。
目录
一、应用层安全协议
1.SSL/TLS
- SSL是传输层安全协议,主要用于实现Web安全通信。
- TLS起源:IETF基于SSL3.0版本,制定了传输层安全标准TLS
- SSL包含三个部分:
- 记录协议:运行在传输层协议TCP上,用于封装各种上层协议。
- 警告协议
- 握手协议:用于协商参数
- SSL和IPSec都支持:数据保密、身份认证和完整性校验
- HTTPS协议栈:在应用层和传输层中间插入SSL
HTTP 应用层 |
SSL |
TCP 传输层 |
IP 网络层 |
- SSL协议栈
SSL握手协议 | SSL改变密码协议 | SSL警告协议 | HTTP |
SSL记录协议 |
TCP |
IP |
2.HTTPS和S-HTTP
1)HTTPS
- 基于SSL的超文本传输协议HTTPS(Hypertext Transfer Protocol over Secure Socket Layer):不是一个单独的协议,是两个协议的结合,即在加密的安全套阶层或传输层安全(SSL/TLS)上进行普通的HTTP交互传输。
- 功能:提供了一种免于窃听或中间人攻击的合理保护。
- HTTPS默认端口443,HTTP默认端口80(缝缝补补)
2)S-HTTP
- S-HTTP:安全的超文本传输协议(Security HTTP)
- 本质:还是HTTP,基本语法和HTTP一样
- 与HTTP区别:只是报文头有所区别,进行了数据加密。(另起炉灶)
- 端口:80
3)HTTP、HTTPS和SHTTP对比
特性 | HTTP | HTTPS | SHTTP (Secure HTTP) |
---|---|---|---|
协议层级 | 应用层 | 应用层 + 传输层加密(SSL/TLS) | 应用层(独立加密) |
端口 | 80(明文传输) | 443(加密传输) | 通常 80(可自定义) |
加密方式 | 无加密 | 传输层加密(SSL/TLS) | 应用层加密(如 PGP、对称加密) |
安全性 | 低(明文传输,易被窃听、篡改) | 高(加密传输,支持身份验证) | 中等(端到端加密,但配置复杂) |
证书机制 | 无 | 需要 CA 颁发的数字证书 | 可选(需手动配置密钥) |
兼容性 | 所有浏览器和服务器支持 | 现代浏览器和服务器广泛支持 | 兼容性差(需双方支持,已淘汰) |
性能开销 | 低 | 中等(加密/解密增加计算开销) | 高(应用层逐条加密) |
主要用途 | 普通网页浏览 | 安全敏感场景(登录、支付、API) | 早期安全需求(现已被 HTTPS 取代) |
标准化 | RFC 2616(HTTP/1.1) | RFC 2818(HTTPS) | RFC 2660(S-HTTP) |
关键区别说明
加密层次:
- HTTP:无加密,数据明文传输。
- HTTPS:在传输层(TCP)通过 SSL/TLS 加密整个通信通道。
- SHTTP:在应用层对单个消息或文件加密(如对 HTTP 报文内容单独加密)。
安全机制:
- HTTPS:依赖证书颁发机构(CA)验证服务器身份,防止中间人攻击。
- SHTTP:需手动交换密钥或使用数字签名,未普及且配置复杂。
应用现状:
- HTTP:仍用于非敏感场景(如静态页面)。
- HTTPS:现代网站标配(Google 优先索引 HTTPS 页面)。
- SHTTP:已被 HTTPS 取代,仅在历史或特定旧系统中存在。
3. HTTPS协议栈与工作过程
- 建立连接:HTTPS基于TCP协议,首先需要完成三次握手建立连接
- 证书验证:服务器返回公钥证书(非私钥),客户端需验证证书有效性(包括验证证书需使用CA公钥验证、有效期检查等)
- 密钥交换:验证通过后,客户端生成随机数并用服务器公钥加密传输,服务器用私钥解密获得随机数
- 会话密钥:双方基于随机数R通过协商算法(如DH)生成相同的会话密钥
- 数据加密:后续通信使用会话密钥进行对称加密(如AES),提高加密效率
1)例题#密钥名称
- ①公钥证书:服务器返回的是包含公钥的数字证书(CA用私钥签名)
- ②服务器公钥:客户端用服务器公钥加密随机数(来自证书)
- ③服务器私钥:服务器用私钥解密获得随机数
- ④会话密钥:基于随机数通过协商算法生成(如DH算法)
- ⑤会话密钥:用于对称加密通信数据(如AES)
- 验证要点:CA签名验证需使用CA公钥验证证书真伪
2)例题#HTTPS加密方式(网工2023年5月)
43题答案D:
- 排除法:公钥加密会导致数据膨胀(如10T数据可能变为100T),实际采用会话密钥+对称加密
- 原理:会话密钥通过公钥算法交换,但数据加密使用对称加密
44题答案C:
- 证书撤销后果:客户端无法信任服务器,浏览器会显示安全警告
- 类比:与证书过期情况相同,都会中断信任链
45题答案B:
- 安全隐患:可能使用伪造公钥,导致会话密钥泄露,第三方可解密通信
- 攻击场景:中间人可能替换证书中的公钥,获取加密数据
考试技巧:该题型常考核心是区分对称/非对称加密的应用场景,证书信任机制是关键考点
4. SSL/TLS算法总结
1)对称加密特点:
- 使用相同密钥进行加解密
- 加密速度快,适合大数据量加密
- 不具备膨胀性(加密后数据量基本不变)
- 典型算法:AES、DES、3DES
2)非对称加密特点:
- 公钥公开,私钥保密(1vN关系)
- 用于身份验证和密钥协商
- 加密速度慢,不适合大数据量加密
- 典型算法:RSA、ECC、DH
3)哈希算法特点:
- 不可逆运算
- 输出长度固定
- 具有雪崩效应(微小输入变化导致输出巨大变化)
- 用于完整性校验
- 典型算法:MD5、SHA系列
5. 应用案例
1)例题#SSL协议安全机制
- SSL安全机制组成:
- 身份验证(11空)
- 数据加密(已给出)
- 消息完整性验证(12空)
- 算法应用原理:
- 非对称算法用于密钥交换:握手阶段通过公钥加密方式安全交换会话密钥
- 对称算法用于数据加密:使用协商好的对称密钥加密传输数据
- 记忆口诀:"非对称传密钥,对称加密数据"
- 证书申请流程:
- 需向CA机构(14空)申请数字证书
- 注意区分CA和RA的职能(考试中通常只需答CA)
- 解题技巧:
- 题干中"为应用层建立安全连接"明确指向SSL而非IPsec
- 历年考题题干常包含解题线索,需仔细阅读
- 简答题抓住关键点即可得分,不必过度展开
典型错误:
- 混淆SSL与IPsec的应用层级
- 将RA作为证书申请主体(除非题目明确要求)
- 过度描述密钥交换细节(考试简答只需核心要点)
- 核心记忆点:
- SSL安全三要素:认证、加密、完整性
- 算法分工:非对称管密钥,对称管数据
- 证书申请主体:CA机构
- 核心记忆点:
4. SET和PGP
1)SET协议
- 安全电子交易(Secure ELectronic Transaction,SET)
- 应用场景: 主要用于解决用户、商家和银行之间通过信用卡支付的安全交易问题,类似于支付宝的支付功能。
- 安全目标: 保障支付信息机密性、支付过程完整性、商户及持卡人身份合法性以及系统可操作性。
- 加密算法:
- 对称加密: 默认使用DES算法
- 公钥加密: 采用RSA算法
- 散列函数: 使用SHA算法
- 考试重点: 主要考察选择题,需牢记三种算法的组合。
2)PGP协议
- PGP(Pretty Good Privacy)
- 功能定位: 完整的电子邮件安全软件包,工作在应用层。
- 核心功能:
- 数据加密
- 数字签名
- 数据完整性校验(虽未明确提及但实际具备)
- 技术实现:
- 身份验证: 使用RSA公钥证书
- 数据加密: 采用IDEA算法
- 完整性验证: 使用MD5算法
- 典型考题: 曾考察PGP不包含的功能(如数据压缩),需注意虽然实际PGP支持压缩功能,但考试侧重安全功能。
5. S/MIME
1)基本概念
- 安全多用途互联网邮件拓展协议(Security/Multiplurpose Internet Mail Extensions,S/MIME),
- SMTP、MIMIE和S/MIME对比:
- SMTP:仅支持文本,发送ASCII码
- MIME:支持多媒体拓展,不安全
- S/MIMIE:保障安全
- 协议关系: 是MIME的安全增强版本,传统MIME仅支持多媒体邮件扩展但不具备安全功能。
- 核心功能: 提供电子邮件安全服务,包括但不限于加密和签名。
- 算法组合:
- 数字指纹: 使用MD5生成
- 数字签名: 采用RSA算法
- 签名加密: 使用3DES算法
- 区分要点: 必须注意带"S"前缀的版本才具有安全功能,普通MIME仅实现多媒体扩展。
2)对比记忆
- 技术差异: SET、PGP和S/MIME三者的算法实现各有特点,需对比记忆:
- SET:DES+RSA+SHA
- PGP:RSA+IDEA+MD5
- S/MIME:MD5+RSA+3DES
- 考试提示: 可能通过选择题考察各协议的技术组合,需特别注意算法间的对应关系。
6. Kerberos
1)核心组件与流程
- 作用:用于身份认证的
- 核心组件:包含密钥分发中心(KDC)、认证服务器(AS)、票据分发服务器(TGS)和应用服务器,其中KDC包含AS和TGS。关系如下
- 密钥分发中心KDC:
- 认证服务器AS
- 票据分发服务器TGS
- 应用服务器
- 密钥分发中心KDC:
- 票据功能:分发票据/凭证(Ticket)是Kerberos的核心功能,票据英文称为ticket。
- 工作流程:
- 认证阶段:用户向KDC的认证服务器AS提交身份认证,通过后获得初始许可凭证
- 授权阶段:用户持初始凭证向授权服务器TGS请求访问凭据,获取访问权限凭证
- 访问阶段:用户向应用服务器提交访问权限凭证,获取资源访问
- 权限控制:不同用户(如教师/学生)获得的初始票据不同,最终访问权限也不同
- 设计目的:避免频繁传输用户名密码,防止密码泄露(类比食堂饭票机制)
2)kerberos与PKI体系对比
- PKI核心:包含RA(注册机构)、CA(证书颁发机构)、证书三大组件
- Kerberos核心:KDC、AS、TGS、票据(ticket)
- 关键区别:
- PKI使用数字证书,Kerberos使用票据
- PKI采用非对称加密,Kerberos采用对称加密(DES/3DES)
- 认证服务器(AS)属于Kerberos体系,CA属于PKI体系
3)例题#Kerberos防重放攻击
- 考点:Kerberos防止重放攻击的机制
- 正确方法:加入时间戳或随机数(也可采用一次一密)
- 原理:使重复的请求失效
- 答案:B(时间戳)
4)例题#Kerberos认证协议叙述判断
- 选项分析:
- A错误:KDC只包含AS和TGS,不包括客户机
- B错误:采用对称加密(DES/3DES),非公钥加密
- C错误:用户与AS服务器需要共享长期密钥,与应用服务器使用票据不需要长期共享密钥
- D正确:协议目的就是获取服务许可票据
- 答案:D
5)例题#Kerberos初始票据申请处
- 流程定位:认证流程第一步
- 正确组件:认证服务器(AS)
- 答案:A
6)例题#Kerberos认证说法判断
- 选项分析:
- B错误:公钥基础设施是PKI
- C错误:CA属于PKI体系
- D错误:应向AS申请票据
- 关键记忆:Kerberos采用单密钥体制(对称加密)
- 答案:A
7)例题#SSL子协议及其功能
- 核心知识:
- SSL子协议:记录协议、警告协议、握手协议
- 握手协议功能:协商加密算法及密钥等参数
- 排除法:AH和ESP属于IPsec协议
- 答案:
- (45)C(警告协议和握手协议)
- (46)B(握手协议)
8)例题#Kerberos认证说法判断
- 选项分析:
- A正确:开放网络身份认证
- B错误:CA不属于Kerberos体系
- C正确:KDC(实际是AS)保存用户凭证
- D正确:使用时间戳防重放
- 关键区分:CA与AS的体系归属
- 答案:B
二、知识小结
知识点 |
核心内容 |
考试重点/易混淆点 |
难度系数 |
SSL/TLS协议 |
传输层安全协议,用于网页安全通信(HTTPS)。 SSL由网景公司开发,TLS基于SSL 3.0由IETF制定。 |
子协议:记录协议(封装数据)、握手协议(协商参数)、警告协议(错误告警)。 功能:数据保密性、身份认证、完整性校验。 |
⭐⭐⭐ |
HTTPS协议栈 |
HTTP + SSL/TLS = HTTPS,端口443(HTTP为80)。 工作流程: 1. 客户端请求证书; 2. 服务器返回公钥证书; 3. 客户端验证证书; 4. 生成随机数并用服务器公钥加密; 5. 服务器解密后生成会话密钥; 6. 对称加密通信。 |
关键点: - 证书验证用CA公钥。 - 会话密钥用于加密数据(对称加密)。 - 非对称加密仅用于密钥交换。 |
⭐⭐⭐⭐ |
S-HTTP |
安全的HTTP协议(另起炉灶开发),端口仍为80,但未广泛应用。 |
与HTTPS区别: - HTTPS是HTTP+SSL补丁,S-HTTP是独立协议。 - 考试易混淆:哪种更常用?(HTTPS) |
⭐⭐ |
PKI vs Kerberos |
PKI:CA/RA/证书,用于公钥分发。 Kerberos:KDC(含AS和TGS)、票据(Ticket),用于身份认证。 |
易混淆点: - PKI用证书,Kerberos用票据。 - CA≠KDC,AS/TGS属于Kerberos体系。 |
⭐⭐⭐⭐ |
Kerberos流程 |
1. 用户→AS认证→初始票据; 2. 用户→TGS→访问凭证; 3. 用户→应用服务器(凭票据访问)。 |
核心组件:AS(认证)、TGS(授权)、KDC(密钥分发中心)。 防重放攻击:时间戳/随机数。 |
⭐⭐⭐ |
PGP/SET/S-MIME |
PGP:邮件安全(RSA签名、IDEA加密、MD5校验)。 SET:电子交易(DES加密、RSA公钥、SHA哈希)。 S-MIME:安全邮件扩展(MD5/RSA/3DES)。 |
考试重点: - PGP功能(加密/签名/校验,不含压缩)。 - 各协议算法差异。 |
⭐⭐⭐ |
SSL/TLS算法应用 |
对称加密(AES/3DES)→加密数据。 非对称加密(RSA/DH)→密钥交换。 哈希算法(SHA/MD5)→完整性校验。 |
易错点: - 非对称加密不用于加密大数据(速度慢/膨胀)。 |
⭐⭐⭐ |