摘要: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作为密钥交换算法。

  • 认证算法

目前主流的是RSA算法,需注意算法长度小于2048bits为不安全算法,推荐使用长度大于3072bits的安全算法。

  • 加密算法

数据加密使用对称加密算法,常见的加密算法有 AES-CBC、3DES、AES-GCM等,注意使用安全的加密算法,对于已被认为不安全的算法应禁止使用。

分组加密场景,产品应优先选择GCM模式。TLS的算法套件的选择,是按照顺序从前到后逐个匹配的,需要把优选的套件放在前面,次选的放在后面。

  • 完整性算法

为了避免网络中传输的数据被非法篡改,SSL/TLS利用基于MD5或SHA的MAC算法来保证消息的完整性。其中基于MD5的算法已被证明不安全,禁止使用,基于SHA的算法需使用安全的SHA3、SHA25或以上。

想了解GuassDB(DWS)更多信息,欢迎微信搜索“GaussDB DWS”关注微信公众号,和您分享最新最全的PB级数仓黑科技,后台还可获取众多学习资料哦~

点击关注,第一时间了解华为云新鲜技术~

带你了解数仓安全测试的TLS协议的更多相关文章

  1. 从读写角度,带你了解数仓的IO基本框架

    摘要:本文从读取和写入的角度分别描述了行存和列存的IO模型,并对文件结构做了简单介绍. 本文分享自华为云社区<GaussDB(DWS)基本IO框架>,作者: Naibaoofficial. ...

  2. 使用JMeter进行一次简单的带json数据的post请求测试

    使用JMeter进行一次简单的带json数据的post请求测试 原文:https://www.cnblogs.com/summer-mm/p/7717812.html 1.启动jmeter:在bin下 ...

  3. 好程序员带你了解一下HTTPS和SSL/TLS协议的背景与基础

    >> 相关背景知识 要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义 大致了解 HTTP 和 TCP 的关系(尤其 ...

  4. soapUI 使用soapUI测试http+json协议接口简介

    使用soapUI测试http+json协议接口简介 by:授客 QQ:1033553122 SoapUI-Pro-x64-5.1.2_576025(含破解文件),软件下载地址: http://pan. ...

  5. 使用JMeter测试基于WebSocket协议的服务

    使用JMeter测试基于WebSocket协议的服务 :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba( ...

  6. 一文详解数仓GaussDB(DWS) 函数出参带出方式

    摘要:本文主要讲解DWS函数出参带出方式. 本文分享自华为云社区<GaussDB(DWS)功能 -- 函数出参 #[玩转PB级数仓GaussDB(DWS)]>,作者:譡里个檔 . DWS的 ...

  7. 微软自带的Serialization和Newtonsoft简单测试

    刚刚对这两个进行了一下小小的测试 发现 当转换的内容少的时候  微软自带的比Newtonsoft速度要快一些,内容多的时候反之,当内容多到一定量的时候微软自带的就不能转换了,需要修改一下MaxJson ...

  8. Spring Boot整合log4j实战(一):排除自带依赖、日志重定向、测试类验证

    〇.参考资料 1.springboot整合log4j全过程详解 https://blog.csdn.net/m0_60845963/article/details/123307232 2.Spring ...

  9. 使用JMeter进行一次简单的带json数据的post请求测试,json可配置参数

    配置: 1.新建一个线程组: 然后设置线程数.运行时间.重复次数. 2.新建Http请求: 设置服务器域名,路径,方法,编码格式,数据内容. 可以在函数助手中,编辑所需要的变量,比如本例中的随机生成电 ...

  10. 详解数仓中sequence的应用场景及优化

    摘要:本文简单介绍sequence的使用场景及如何修改sequence的cache值提高性能. 本文分享自华为云社区<GaussDB(DWS)关于sequence的那些事>,作者:Arro ...

随机推荐

  1. 学习一下Java的ArrayList和contains函数和扩容机制

    起因 在Leetcode上做题写了两种暴力解法,但是执行效率上不太一样. 时间上差很远,内存虽然差不多但是前者击败30%,后者击败94%.这两种解法区别是用一条ArrayList还是两条来存数据,所以 ...

  2. C# ConfigMan.cs

    public static class ConfigMan { public static string ReadKey(string key) { return ConfigurationManag ...

  3. Cookie入门实例

    cookie介绍:Cookie通常用于网站记录客户的某些信息,比如客户的用户名.客户的喜好(比如,上一次浏览的宝贝)等.一旦用户下次登录,网站可以获取到客户相关的信息,根据这些客户信息,网站可以对客户 ...

  4. 🔥🔥Java开发者的Python快速进修指南:函数基础

    话不多说,今天我们要介绍的是函数.本系列文章追求短而精,今天我们将重点讨论函数以及与Java方法的区别.与Java方法不同,函数不需要像Java方法一样讲究修饰符等其他特性,它只需要使用"d ...

  5. PTA作业4、5、6及期中考试的总结

    一.前言 本次博客是针对面向对象程序设计课程布置的PTA第4.5.6次作业以及期中考试的编程题而写的总结分析,重点分析了菜单计价系列题目.期中考试的编程题等具有一定难度和特色的问题. 二.PTA第四次 ...

  6. 基于资源编排服务(ROS)实现存量资源的IaC化

    背景 如今,基础设施即代码(Infrastructure as code,IaC)是云资源管理和编排的趋势,基于 IaC 的管理模式,在提升云资源自动化管理能力,降低管理成本的同时,可以大大降低云资源 ...

  7. java.util.List如何用

    起因是这样,我在学习Javaweb,然后就突然有很多类似的语句 这是什么意思呢?让我们一起来解决看看吧! List有序集合(也成为序列),用户可以精确控制列表中每个元素的插入位置.用户可以通过整数索引 ...

  8. pta三次实验的总结

    第一次pta作业 在pta第一次作业,因为是第一次作业所以大体是比较容易,但是也有几个要注意的点,就是两个double的值相加减相乘的值与实际值会有一定的误差,误差大小为0.0000001,所以在写p ...

  9. [ABC244G] Construct Good Path

    Problem Statement You are given a simple connected undirected graph with $N$ vertices and $M$ edges. ...

  10. 接收json数据

    1.导入坐标: <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId& ...