当前位置: 首页 > news >正文

策划书网站项目目标需求分析担路做网站

策划书网站项目目标需求分析,担路做网站,推广软件赚钱违法吗,凡科一个注册做2个网站前言 写此文章的目的#xff0c;主要是验证#xff1a; openGauss 5.0.0 数据库能够实现哪种加密方式的全密态全密态数据库的特点 一、全密态介绍 全密态数据库意在解决数据全生命周期的隐私保护问题#xff0c;使得系统无论在何种业务场景和环境下#xff0c;数据在传…前言 写此文章的目的主要是验证 openGauss 5.0.0 数据库能够实现哪种加密方式的全密态全密态数据库的特点 一、全密态介绍 全密态数据库意在解决数据全生命周期的隐私保护问题使得系统无论在何种业务场景和环境下数据在传输、运算以及存储的各个环节始终都处于密文状态。当数据拥有者在客户端完成数据加密并发送给服务端后在攻击者借助系统脆弱点窃取用户数据的状态下仍然无法获得有效的价值信息从而起到保护数据隐私的能力。 由于整个业务数据流在数据处理过程中都是以密文形态存在通过全密态数据库可以实现 1保护数据在云上全生命周期的隐私安全。无论数据处于何种状态攻击者都无法从数据库服务端获取有效信息。2帮助云服务提供商获取第三方信任。无论是企业服务场景下的业务管理员、运维管理员还是消费者云业务下的应用开发者用户通过将密钥掌握在自己手上使得高权限用户无法获取数据有效信息。3让云数据库服务借助全密态能力更好的遵守个人隐私保护方面的法律法规。 全密态数据库目前支持两种连接方式gsql连接和jdbc连接。 二、环境准备 本次实验使用的操作系统是centos7.9openGauss版本是5.0.0实验直接在一台服务器上面进行。 操作系统数据库版本 三、实验过程 1、创建用户 使用管理员用户登录然后参加一个qmttest用户密码设置为qwer1234!#$CREATE USER qmttest PASSWORD qwer1234!#$; 使用qmttest用户登录,连接密态数据库. -C是打开密态开关 gsql -p 15400 -d postgres -U qmttest -r -C 2、创建用户密钥 全密态数据库有两种密钥即客户端主密钥CMK和数据加密密钥CEK。CMK用于加密CEKCEK用于加密用户数据。密钥创建的顺序和依赖依次为创建CMK 创建CEK。 从这里开始验证加密方式的组合。 序号 主密钥CMK 数据加密密钥CEK 1 RSA_2048 AEAD_AES_256_CBC_HMAC_SHA256 2 RSA_3072 AEAD_AES_128_CBC_HMAC_SHA256 3 SM2 SM4_SM3 2.1 创建客户端主密钥CMK 密钥存储路径默认情况下localkms将在LOCALKMS_FILE_PATH路径下生成/读取/删除密钥文件用户可手动配置该环境变量。但是用户也可以不用单独配置该环境变量在尝试获取LOCALKMS_FILE_PATH失败时localkms会尝试获取$GAUSSHOME/etc/localkms/路径如果该路径存在则将其作为密钥存储路径。密钥相关文件名使用CREATE CMK语法时localkms将会创建四个与存储密钥相关的文件。示例当KEY_PATH “key_path_value”, 四个文件的名称分别为key_path_value.pub、key_path_value.pub.rand、 key_path_value.priv、 key_path_value.priv.rand。所以为了能够成功创建密钥相关文件在密钥存储路径下应该保证没有已存在的与密钥相关文件名同名的文件。 2.1.1 RSA_2048 使用RSA_2048加密算法进行创新CMK 名称qmt_rsa2048CREATE CLIENT MASTER KEY qmt_rsa2048 WITH (KEY_STORE localkms , KEY_PATH qmt_rsa2048, ALGORITHM RSA_2048); 查看生成的相应加密文件 2.1.2 RSA_3072 使用RSA_3072加密算法进行创建CMK 名称qmt_RSA3072CREATE CLIENT MASTER KEY qmt_RSA3072 WITH (KEY_STORE localkms , KEY_PATH qmt_RSA3072, ALGORITHM RSA_3072); 查看生成的相应加密文件 2.1.3 SM2 使用SM2加密算法进行创建CMK 名称qmt_SM2CREATE CLIENT MASTER KEY qmt_SM2 WITH (KEY_STORE localkms , KEY_PATH qmt_SM2, ALGORITHM SM2); 查看生成的相应加密文件 2.2 创建数据加密密钥CEK 2.2.1 AEAD_AES_256_CBC_HMAC_SHA256 使用 RSA_2048 AEAD_AES_256_CBC_HMAC_SHA256 创建CEK 名称RSA_2048_256_CEKCREATE COLUMN ENCRYPTION KEY RSA_2048_256_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_rsa2048, ALGORITHM AEAD_AES_256_CBC_HMAC_SHA256); 使用 RSA_3072 AEAD_AES_256_CBC_HMAC_SHA256 创建CEK 名称RSA_3072_256_CEKCREATE COLUMN ENCRYPTION KEY RSA_3072_256_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_RSA3072, ALGORITHM AEAD_AES_256_CBC_HMAC_SHA256); 使用 SM2 AEAD_AES_256_CBC_HMAC_SHA256 创建CEK 名称SM2_256_CEK 创建失败CREATE COLUMN ENCRYPTION KEY SM2_256_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_SM2, ALGORITHM AEAD_AES_256_CBC_HMAC_SHA256); 有报错ERROR(CLIENT): National secret algorithm must be used together. 国家密码算法必须一起使用 2.2.2 AEAD_AES_128_CBC_HMAC_SHA256 使用 RSA_2048 AEAD_AES_128_CBC_HMAC_SHA256 创建CEK 名称RSA_2048_128_CEKCREATE COLUMN ENCRYPTION KEY RSA_2048_128_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_rsa2048, ALGORITHM AEAD_AES_128_CBC_HMAC_SHA256); 使用 RSA_3072 AEAD_AES_128_CBC_HMAC_SHA256 创建CEK 名称RSA_3072_128_CEKCREATE COLUMN ENCRYPTION KEY RSA_3072_128_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_RSA3072, ALGORITHM AEAD_AES_128_CBC_HMAC_SHA256); 使用 SM2 AEAD_AES_128_CBC_HMAC_SHA256 创建CEK 名称SM2_128_CEK 创建失败CREATE COLUMN ENCRYPTION KEY SM2_128_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_SM2, ALGORITHM AEAD_AES_128_CBC_HMAC_SHA256); 有报错ERROR(CLIENT): National secret algorithm must be used together. 国家密码算法必须一起使用 2.2.3 SM4_SM3 使用 RSA_2048 SM4_SM3 创建CEK 名称RSA_2048_SM4_SM3_CEK 创建失败CREATE COLUMN ENCRYPTION KEY RSA_2048_SM4_SM3_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_rsa2048, ALGORITHM SM4_SM3); 有报错ERROR(CLIENT): National secret algorithm must be used together. 国家密码算法必须一起使用 使用 RSA_3072 SM4_SM3 创建CEK 名称RSA_3072_SM4_SM3_CEK 创建失败CREATE COLUMN ENCRYPTION KEY RSA_3072_SM4_SM3_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_RSA3072, ALGORITHM SM4_SM3); 有报错ERROR(CLIENT): National secret algorithm must be used together. 国家密码算法必须一起使用 使用 SM2 SM4_SM3 创建CEK 名称SM2_SM4_SM3_CEKCREATE COLUMN ENCRYPTION KEY SM2_SM4_SM3_CEK WITH VALUES (CLIENT_MASTER_KEY qmt_SM2, ALGORITHM SM4_SM3); 2.3 总结 序号 数据加密密钥CEK 主密钥CMK 组合名称 是否创建成功 1 AEAD_AES_256_CBC_HMAC_SHA256 RSA_2048 RSA_2048_256_CEK 是 2 AEAD_AES_256_CBC_HMAC_SHA256 RSA_3072 RSA_3072_256_CEK 是 3 AEAD_AES_256_CBC_HMAC_SHA256 SM2 SM2_256_CEK 否 4 AEAD_AES_128_CBC_HMAC_SHA256 RSA_2048 RSA_2048_128_CEK 是 5 AEAD_AES_128_CBC_HMAC_SHA256 RSA_3072 RSA_3072_128_CEK 是 6 AEAD_AES_128_CBC_HMAC_SHA256 SM2 RSM2_128_CEK 否 7 SM4_SM3 RSA_2048 RSA_2048_SM4_SM3_CEK 否 8 SM4_SM3 RSA_3072 SA_3072_SM4_SM3_CEK 否 9 SM4_SM3 SM2 SM2_SM4_SM3_CEK 是 国密加密算法 SM2 SM4_SM3 不能和其他加密方式组合。 目前创建数据加密密钥CEK是成功的下面进行使用测试。 3、表加密测试 3.1 使用RSA_2048_256_CEK创建加密表 表名称RSA_2048_256_TBCREATE TABLE RSA_2048_256_TB (id_number int, name text encrypted with (column_encryption_key RSA_2048_256_CEK, encryption_type DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key RSA_2048_256_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO RSA_2048_256_TB VALUES (1,joe,6217986500001288393); INSERT INTO RSA_2048_256_TB VALUES (2,joy,6219985678349800033); 客户端查询数据select * from RSA_2048_256_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from RSA_2048_256_TB 可以看出数据已经加密。 加密成功查询成功 3.2 使用RSA_3072_256_CEK创建加密表 名称RSA_3072_256_TBCREATE TABLE RSA_3072_256_TB (id_number int, name text encrypted with (column_encryption_key RSA_3072_256_CEK, encryption_type DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key RSA_3072_256_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO RSA_3072_256_TB VALUES (1,joe,6217986500001288393); INSERT INTO RSA_3072_256_TB VALUES (2,joy,6219985678349800033); 客户端查询数据select * from RSA_3072_256_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from RSA_3072_256_TB; 3.3 使用RSA_2048_128_CEK创建加密表 名称RSA_2048_128_TBCREATE TABLE RSA_2048_128_TB (id_number int, name text encrypted with (column_encryption_key RSA_2048_128_CEK, encryption_type DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key RSA_2048_128_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO RSA_2048_128_TB VALUES (1,joe,6217986500001288393); INSERT INTO RSA_2048_128_TB VALUES (2,joy,6219985678349800033); 客户端查询数据select * from RSA_2048_128_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from RSA_2048_128_TB; 3.4 使用RSA_3072_128_CEK创建加密表 名称RSA_3072_128_TBCREATE TABLE RSA_3072_128_TB (id_number int, name text encrypted with (column_encryption_key RSA_3072_128_CEK, encryption_type DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key RSA_3072_128_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO RSA_3072_128_TB VALUES (1,joe,6217986500001288393); INSERT INTO RSA_3072_128_TB VALUES (2,joy,6219985678349800033); 客户端查询数据select * from RSA_3072_128_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from RSA_3072_128_TB; 3.5 使用SM2_SM4_SM3_CEK创建加密表 名称SM2_SM4_SM3_TBCREATE TABLE SM2_SM4_SM3_TB (id_number int, name text encrypted with (column_encryption_key SM2_SM4_SM3_CEK, encryption_type DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key SM2_SM4_SM3_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO SM2_SM4_SM3_TB VALUES (1,joe,6217986500001288393); INSERT INTO SM2_SM4_SM3_TB VALUES (2,joy,6219985678349800033); 客户端查询数据select * from SM2_SM4_SM3_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from SM2_SM4_SM3_TB; 4、组合加密方式验证 同一个表中不同的列使用不同的加密方式。 表名称all_TB 说明不同的列使用不同的加密方式。列id_number:不使用加密列name1RSA_2048_256_CEK列credit_card1RSA_3072_256_CEK列name2RSA_2048_128_CEK列credit_card2RSA_3072_128_CEK列name3SM2_SM4_SM3_CEK CREATE TABLE all_TB (id_number int, name1 text encrypted with (column_encryption_key RSA_2048_256_CEK, encryption_type DETERMINISTIC),credit_card1 varchar(19) encrypted with (column_encryption_key RSA_3072_256_CEK, encryption_type DETERMINISTIC),name2 text encrypted with (column_encryption_key RSA_2048_128_CEK, encryption_type DETERMINISTIC),credit_card2 varchar(19) encrypted with (column_encryption_key RSA_3072_128_CEK, encryption_type DETERMINISTIC),name3 text encrypted with (column_encryption_key SM2_SM4_SM3_CEK, encryption_type DETERMINISTIC)); 插入数据INSERT INTO all_TB VALUES (1,joe1,6217986500001288393,joe2,6217986500001288393,joe3); INSERT INTO all_TB VALUES (2,joy1,6219985678349800033,joy2,6219985678349800033,joy3); 客户端查询数据select * from all_TB; 通过不加 -C 登录查询数据gsql -p 15400 -d postgres -U qmttest -r select * from all_TB; 四、总结 在openGauss 3.0 版本中国密SM2SM4_SM3组合使用中在查询时是有问题的openGauss 5.0.0 这个版本中这个问题已经解决。同一个表中列可以是加密的也可以是不加密的。同一个表中可以有不同的加密方式。想要查询到明文客户端必须有密钥文件密钥文件需要进行妥善保管。
http://www.hkea.cn/news/14420471/

相关文章:

  • ssh网站怎么做可以把网站建设在云主机上吗
  • 大学生兼职网网站建设计划书wordpress 添加媒体库
  • 重庆秀山网站建设移动端网站模板
  • 同声传译公司网站建设自己能够做投票网站吗
  • 设计一个网站重点是什么免费门户网站源码
  • 网站制作套餐常州网站建设企业网站
  • 模块化网站建设 局域网做竞价的网站有利于优化吗
  • 网站搭建素材群网站分站系
  • 灰色风格的网站影盟自助网站建设
  • python做网站用什么wordpress阅读量统计
  • 嘉定php网站开发培训前台网站开发
  • 大连模板建站代理设计软件网站推荐
  • 福州网站建设软件自媒体怎么申请注册
  • 手机端 网站 模板网站seo怎么做知乎
  • vue 做企业网站番禺网站建设多少钱
  • 怎么给网站设置搜索关键词 wordpress业务员用什么软件找客户
  • 网站建设和维护视频app开发哪个公司专业
  • 深圳网站制作开发排名网站网页建设实训心得
  • 最新的网站建设软件有哪些手机站点
  • 备案用网站建设方案济南小程序开发
  • 徐汇网站制作材料信息价查询网站
  • 小企业网站建设口碑非上海注册公司缴纳上海社保
  • 五里桥街道网站建设网络营销工作内容和职责
  • 信息无障碍 网站建设网站页面大小
  • 做衣服视频有些什么网站联盟营销网站有哪些
  • 网站备案安全吗工信部怎么查网站备案
  • 电子商务网站建设开题报告个人网站有前途吗
  • 网站制作能赚多少钱陕西省建设厅网站ca验证失败
  • 自己可以接单做网站吗汉中做网站电话
  • 广州住建厅官方网站江门网站推广深圳公司