openGauss之全密态数据库

打印 上一主题 下一主题

主题 1016|帖子 1016|积分 3048

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x

大家好,欢迎大家收看本节课程
对于初学者入门的学习,一些理论不轻易明白或记住,所以本节课程【创新】采用了【正、反对比联想影象】的方法,
引入模拟场景中的肖荏盖的小故事。(模拟场景为虚构演绎,仅供教学,不要对号入座,懂不懂?明白吗?)
【数据库的功能都是正向的,模拟场景中的肖荏盖做的事变都是反向的。】
全密态数据库
1.软硬融合全密态概述
2.使用gsql操作软硬融合全密态数据库
3.使用JDBC驱动操作软硬融合全密态数据库
------------------------------
软硬融合全密态数据库
提到软硬融合这个词,更直观的明白还是可以通过一个模拟场景中肖荏盖的反面小故事来加强对这个词的明白。
肖荏盖这个人,看起来就是软软的,唯唯诺诺的,懦弱的一个受气包、怯夫的形象。
但是可不能被肖荏盖的表象所疑惑,肖荏盖办事但是非常不讲原则,不择本领,给他惹急眼了,他硬气的连谁都敢气。
在肖荏盖创业从前,在信息干系公司上班,其时他和程亥梁是同事,为了把程亥梁的研究成果占为己有,
肖荏盖多次文质彬彬的向他其时的领导们提出无理要求,企图霸占程亥梁研究成果,
在多次遭到领导们同等的拒绝意见之后,肖荏盖简直气疯了,向来以巧取豪夺为主要本领的肖荏盖,
回抵家,饭也不吃了,发疯:“好啊,你们这帮老家伙,多次拒绝我的申请,你们这是要气死我啊,可气死我啦”,
对他患有精神病儿子的肖皓墨喊道:“拿酒来”。
酒过三巡,肖荏盖坐在墙角,扒拉着那些摆的像刚打完的保龄球一样缭乱的酒瓶,恶向胆边生。
肖荏盖盯上了另一个让他讨厌的同事,袁忠慧,于是心生一毒计,肖荏盖做了一个扣,通过窜改袁忠慧的电脑技术文档,
把他写的一篇研究英语的文档进行了窜改,也不知道上面改了多少内容,把肖荏盖想骂的话全写上了,把文档给领导们看,
“上班时间学英语,您们看看学的这是啥!”
领导们看完了肖荏盖窜改的文章,全部气病,住院的住院,输液的输液,无一幸免。
肖荏盖一看这个诡计得逞了,给肖荏盖高兴的啊,内心盘算着:“你们这一帮傻瓜,全被骗了吧,哈哈”。
袁忠慧在自己完全不知情的情况下,就被冤枉了,还好领导们明察秋毫,这个事变终极还是给袁忠慧洗脱了冤枉,
同时,领导们也都知道肖荏盖从中窜改这个事实,
为了让自己少生气,也表面上给了肖荏盖一点实惠,让肖荏盖别再作妖了,但是肖荏盖在领导们的心中,已经彻底是一个不折不扣的谁人什么了。
袁忠慧很不解的问道:“义父,肖荏盖这么缺德,为什么还要给他实惠,给他开了不就完了吗,肖荏盖技术那么LOW,他就算到了竞争对手公司,也不会有什么作为啊,您为什么这么惯着肖荏盖这种人?”
袁总也是在气头上,不耐烦的回答道:“孩子,你想让我像你米伯伯那样,被肖荏盖给气死啊!你要记住啊,越是肖荏盖这种人,越不能冒犯,以后离肖荏盖这种人远一点啊!”
所以提示大家,不要像模拟场景中的肖荏盖全家学习。
言归正传
1.软硬融合全密态数据库
1> 全密态数据库意在解决数据全生命周期的隐私保护问题,使得系统无论在何种业务场景和情况下,
数据在传输、运算以及存储的各个环节始终都处于密文状态。
当数据拥有者在客户端完成数据加密并发送给服务端后,在攻击者借助系统脆弱点偷取用户数据的状态下
仍然无法得到有用的价值信息,从而起到保护数据隐私的本领。
2> 全密态数据库现在支持两种连接方式:gsql连接和jdbc连接
2.软硬结合全密态--特性描述
1> 从用户视角来看,整个密态等值查询的主要功能分为三部分,主要通过新增的keyTool工具以及
openGauss的加强gsql客户端来实现。
2> 起首是客户端密钥管理功能,用户借助新增的keyTool工具来实现CMK的生成、销毁和更新,
同时支持密钥导入导出。通过该keyTool工具的导入导出功能,CMK可以在不同的客户端间进行传输;
同时,keyTool实现了单个客户端侧的密钥管理,通过设置管理文件,可以对密钥的存储、更新进行管理。
3> 其次该特性提供密钥创建功能和加密表创建功能,通过新增SQL语法“CERATE CLIENT MASTER KEY”
和“CREATE COLUMN ENCRYPTION KEY”实现在数据库侧纪录和管理CMK和CEK元信息,
CMK和CEK信息被纪录在新增的系统表中。
通过扩展“CREATE TABLE”语法为表的每一个敏感信息列指定列加密密钥和加密算法,方便后续数据密文存储。
4> 最后该特性对用户提供密态等值查询本领,该部分功能是整个特性的焦点,虽然用户对整个密文查询无感知,
但是在指定数据的加密信息后,针对该敏感数据的查询将受限于当前密态等值查询的支持规格。
5> 从整体视角来看,该特性所实现的功能主要是为了用户基于敏感数据保护的诉求来存储管理数据并基于密文数据信息实现查询任务。
3.软硬融合全密态 -- 特性约束
1.不支持不同数据范例之间的隐式转换
2.不支持不同数据范例之间的聚集操作
3.不支持加密列创建范围分区
4.不支持从加密表到文件之间的copy操作
5.不支持包括排序、范围查询以及含糊查询等在内的除等值意外的各种密态查询
6.不支持多条SQL语句一起执行,insert into语句多批次执行场景不受此条约束限制
7.密态数据库对长度为零的空字符串不进行加密

4.使用gsql操作软硬融合全密态数据库
1> 以操作系统用户omm登录CN所在主机
执行以下命令打开密态开关,连接密态数据库
gsql -p PORT postgres -r -C
2> 创建客户端主密钥CMK和列加密密钥CEK
创建客户端加密主密钥(CMK)
CREATE CLIENT MASTER KEY imgCMK1 WITH (KEY_STORE=localkms,KEY_PATH="key_path_value1",ALGORITH=RSA_2048);
CREATE CLIENT MASTER KEY imgCMK WITH (KEY_STORE=localkms,KEY_PATH="key_path_value2",ALGORITHM=RSA_2048);
CREATE COLUMN ENCRYPTION KEY imgCMK1 WITH VALUES (CLIENT_MASTER_KEY=imgCMK1,ALGORITHM=AEAD_AES_256_CBC_HMAC_SHA256);
CREATE COLUMN  ENCRYPTION KEY imgCMK WITH VALUES (CLIENT_MASTER_KEY=imgCMK,ALGORITHM=AEAD_AES_256_CBC_HMAC_SHA256);
3> 查询存储密钥信息的系统表
select * from gs_client_global_keys;
select column_key_name,column_key_distributed_id,global_key_id,key_owner from gs_column_keys;
4> 创建加密表
CREATE TABLE CREDITCARD_INFO(id_number int,name text encrypted with (column_encryption_key=imgCEK,encryption_type=DETERMINISTIC),credit_card varchar(19) encrypted with (column_encryption_key=imgCEK1,encryption_type=DETERMINISTIC));
5> 向加密表插入数据并进行等值查询
INSERT INTO creditcard_info VALUES(1,'Gai','42424242424242');
INSERT INTO creditcard_info VALUES(2,'EM','44444444444444');
select * from creditcard_info where name ='Gai';
select id_number,name from credicard_info;
6> 对加密表进行alter和update操作
ALTER TABLE creditcard_info ADD COLUMN age int ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY=imgCEK,
ENCRYPTION_TYPE=DETERMINISTIC);
5.使用JDBC驱动操作软硬融合全密态数据库
1> JDBC支持密态数据库干系操作,必要设置enable_ce=1
2> 使用JDBC操作密态数据库时,一个数据库连接对象对应一个线程,否则,不同线程变更可能导致冲突
3> 使用JDBC操作密态数据库时,不同connection对密态设置数据有变更,由客户端调用
isvalid方法包管connection能够持有变更后的密态设置数据,此时必要包管参数
refreshClientEncryption为1(默认值为1),在单客户端操作密态数据场景下,
refreshClientEncryption参数可以设置为0。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

玛卡巴卡的卡巴卡玛

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表