带你了解数仓安全测试的TLS协议
摘要:SSL/TLS协议是业界常用的加密通信协议,通过该协议可以完成通信双方身份认证,会话密钥协商,通信内容加密和完整性保护。本文分享自华为云社区《GaussDB(DWS)安全测试之TLS协议》,作者:ACBD 。
1. 协议安全机制 SSL/TLS协议是业界常用的加密通信协议,通过该协议可以完成通信双方身份认证,会话密钥协商,通信内容加密和完整性保护。SSL/TLS协议的算法套件包含4种算法:密钥交换、认证、加密、MAC算法。如TLS_DHE_RSA_WITH_AES_128_CBC_SHA256算法套件,DHE是密钥交换算法,RSA是认证算法,AES_128_CBC是对称加密算法,SHA256是做完整性保护的MAC算法。如果没有显示密钥交换算法和认证算法,那么这两者都是RSA算法,如:TLS _RSA_WITH_AES_128_CBC_SHA。如果套件中的有一种算法不安全,那么就应该禁用该算法套件。
文章图片
SSL/TLS协议体系结构
SSL/TLS协议实现的安全机制包括:
? 密钥配送的安全性:利用密钥协商算法来保障密钥本身的安全性。
? 数据传输的机密性:利用对称密钥算法对传输的数据进行加密。
? 身份验证机制:基于证书利用数字签名方法对服务器和客户端进行身份验证,其中客户端的身份验证是可选的。
? 消息完整性验证:消息传输过程中使用MAC算法来检验消息的完整性。
上述四个部分构成了SSL/TLS加密套件。
例如TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,由协议名称TLS、密钥交换算法 KeyExchange(密钥协商)ECDHE、认证算法 Au (身份验证)RSA、对称加密算法 Enc (信息加密)AES_256_CBC和信息摘要 Mac(完整性校验)SHA384组成。
文章图片
SSL/TLS协议组成
TLS/SSL的功能实现主要依赖于三类基本算法:非对称加密、对称加密和散列函数 Hash,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。
2. 测试关注点 ? 协议版本
? SSL协议:SSL协议各版本均存在安全漏洞,因此禁止使用,包括0、2.0和3.0。
? TLS协议:禁止使用0、TLS1.1协议,荐使用TLS1.2或者TLS1.3。
? 密钥协商交换算法
在客户端和服务器开始交换TLS所保护的加密信息之前,他们必须安全地交换或协定加密密钥和加密数据时要使用的密码。DH/ECDH的密钥协商协议不能验证服务器或用户,易受中间人攻击因此不能使用,需要使用能提供前向保密能力的DHE/ECDHE算法,且禁止使用RSA作为密钥交换算法。
- 认证算法
- 加密算法
分组加密场景,产品应优先选择GCM模式。TLS的算法套件的选择,是按照顺序从前到后逐个匹配的,需要把优选的套件放在前面,次选的放在后面。
- 完整性算法
想了解GuassDB(DWS)更多信息,欢迎微信搜索“GaussDB DWS”关注微信公众号,和您分享最新最全的PB级数仓黑科技,后台还可获取众多学习资料哦~
【带你了解数仓安全测试的TLS协议】点击关注,第一时间了解华为云新鲜技术~
推荐阅读
- 死结。
- 基于微信小程序带后端ssm接口小区物业管理平台设计
- 精神,带我走向人生的天堂!
- 带有Hilt的Android上的依赖注入
- python自定义封装带颜色的logging模块
- 你再这样提问,就没人愿意回答你了
- 皮夹克
- 油菜花田的小路像绶带
- 不废话,代码实践带你掌握|不废话,代码实践带你掌握 强缓存、协商缓存!
- 《离开却带走了“能量的魔杖”(52)》能量爱情公寓