云数据库RDS MySQL国密加密

希流
  • 收获赞:135
  • 擅长领域:这个同学很专业,但是有点神秘哟~

2012年3月,国家密码管理局正式公布了包含SM4分组密码算法在内的《祖冲之序列密码算法》等6项密码行业标准,本文为您介绍RDS MySQL国密加密方法。

概述

当前网络安全形势不容乐观,越来越多的国际通用密码算法屡屡被传出被破解、被攻击的传闻,存在较高的安全风险, 一旦被不法分子利用攻击,所产生的损失将不可估量; 此外,当前我国金融系统大多采用国外制定的加密算法,存在着大量的不可控因素。

方案介绍

RDS MySQL支持透明数据加密TDE,即对数据文件执行实时I/O加密和解密。即在数据写入磁盘之前对数据进行加密,从磁盘读入内存时进行解密。开启TDE不会增加数据文件大小。

与DES和AES算法类似,SM4算法是一种分组密码算法。其分组长度为128bit,密钥长度也128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构,以字(32位)为单位进行加密运算,每一次迭代运算均为一轮变换函数F。SM4算法加/解密算法的结构相同,只是使用轮密钥相反,其中解密轮密钥是加密轮密钥的逆序

目标读者

适用于对数据安全等级要求高的客户。

适用场景

数据库数据加密的场景

相关概念

如下图所示:加密方式由阿里云自动生成的密钥和使用自定密钥。

image.png

在TDE加密过程中所使用的密钥由密钥管理服务提供和管理。使用已有自定义密钥,需要在KMS中进行创建。

方案架构

方案架构图

image.png

方案实施

步骤一: 创建RDS MySQL实例

选择组织、资源集、区域、主节点可用区、数据类型、数据库版本、存储类型、网络连接类型、网络类型和IP白名单设置及实例详情。

123

1

步骤二: 创建数据库账户

1.点击账号管理,创建账号。12.填写数据库账号,选择账号类型,填写密码。账号类型两种可选:高权限账号和普通账号。

2

步骤三: 创建数据库

点击数据库管理,创建数据库。

图片.png图片.png图片.png3

步骤四: 配置数据库实例配置国密加密

在实例详情页点击数据安全性,上方选项栏选择"TDE",点击按钮进行TDE开启。12

步骤五: 创建国密密钥

接步骤五选择"使用已有自定义密钥"点击"前往创建"跳转至kms界面,进行密钥创建,密钥类型选择SM4。

图片.png2

步骤六: 创建数据库表和打开加密

图片.png图片.png图片.png

步骤七:数据写入正常

图片.png

常见问题

创建权限账号时如果选择的是最高权限账号,在控制台实例界面的数据管理创建的数据库,通过后台MySQL命令登录可以查询到,反之不行。

最高权限

图片.png图片.png图片.png

普通权限

图片.png图片.png1