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

无锡工程建设监察支队网站cnzz数据统计

无锡工程建设监察支队网站,cnzz数据统计,广告网站建设网,苏州制作网页哪家好前言 透明加密是指将数据库page加密后写入磁盘,当需要读取对应page时进行加密读取。此过程对于用户是透明, 用户无需干预。 该文档进行数据库V8R3版本测试透明加密功能,需要说明,该版本发布时间早于V8R6,所以只能进行表…

前言

透明加密是指将数据库page加密后写入磁盘,当需要读取对应page时进行加密读取。此过程对于用户是透明, 用户无需干预。

该文档进行数据库V8R3版本测试透明加密功能,需要说明,该版本发布时间早于V8R6,所以只能进行表加密,而没有表空间加密功能。

测试透明加密

参数说明:

a) encrypt_user_table:布尔型。
b) 参数级别:用户级。
c) 参数值域、默认值:默认值为off,表示不开启用户表默认加密。

实验数据库版本环境:

TEST=# select * from version();VERSION
-------------------------------------------------------------------------------------------------------------------------Kingbase V008R003C002B0340 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46), 64-bit
(1 row)

1、创建非默认加密表

此时的参数encrypt_user_table=off:

TEST=# show encrypt_user_table ;encrypt_user_table
--------------------off
(1 row)

create table 语法方式创建加密表,注意语法中加入了关键字ENCRYPTED:

SYSTEM用户创建加密表

TEST=# CREATE TABLE TABLE_ENCRYPT(a INT, b varchar(10)) ENCRYPTED;
CREATE TABLE
TEST=# SELECT RELNAME, RELISENCRYPTED, LENGTH(RELTDEKEY) FROM SYS_CLASS WHERE RELNAME='TABLE_ENCRYPT';RELNAME    | RELISENCRYPTED | LENGTH
---------------+----------------+--------TABLE_ENCRYPT | t              |     32
(1 row)

注:字段说明

relisencrypted bool 该对象是否是透明加密的。

创建索引也是加密的

TEST=# CREATE INDEX TABLE_ENCRYPT_INDEX ON TABLE_ENCRYPT(a);
CREATE INDEX
TEST=# SELECT RELNAME, RELISENCRYPTED, LENGTH(RELTDEKEY) FROM SYS_CLASS WHERE RELNAME='TABLE_ENCRYPT_INDEX';RELNAME       | RELISENCRYPTED | LENGTH
---------------------+----------------+--------TABLE_ENCRYPT_INDEX | t              |     32
(1 row)

插入数据,查看表文件:

TEST=# insert into TABLE_ENCRYPT values(1, 'aaaa');
INSERT 0 1
TEST=# insert into TABLE_ENCRYPT values(2, 'bbbb');
INSERT 0 1
TEST=# checkpoint;
CHECKPOINT
TEST=# select sys_relation_filepath('TABLE_ENCRYPT');SYS_RELATION_FILEPATH
-----------------------base/14941/49218
(1 row)

SYSTEM用户创建非加密表(普通表),并查看表文件:

TEST=# CREATE TABLE TABLE_NOENCRYPT(a INT, b varchar(10));
CREATE TABLE
TEST=# insert into TABLE_NOENCRYPT values(1, 'aaaa');
INSERT 0 1
TEST=# insert into TABLE_NOENCRYPT values(2, 'bbbb');
INSERT 0 1
TEST=# checkpoint;
CHECKPOINT

TEST=# select sys_relation_filepath('TABLE_NOENCRYPT');
SYS_RELATION_FILEPATH
-----------------------
base/14941/57411
(1 row)

如下图,使用操作系统命令hexdump 查看表已经加密成功:从输出结果已经看不到连续字符‘aaaa’,转为其他乱码字符显示。

img

下面的图片为非加密表的输出结果,可以看到输出了‘aaaa’表中的数据,说明表没有进行加密。

img

2、创建默认加密表:

确认修改配置文件,kingbase.conf,增加encrypt_user_table=on,重启数据库。

这里create table 创建表语法与创建普通表无异,不需要增加关键字ENCRYPTED

SYSTEM用户创建用户表:

TEST=# show encrypt_user_table ;
encrypt_user_table
--------------------
on
(1 row)

TEST=# CREATE TABLE TABLE_ENCRYPT(a INT, b varchar(10)) ;
CREATE TABLE查看视图sys_class中已经进行加密

TEST=# SELECT RELNAME, RELISENCRYPTED, LENGTH(RELTDEKEY) FROM SYS_CLASS WHERE RELNAME='TABLE_ENCRYPT';

RELNAME | RELISENCRYPTED | LENGTH

---------------+----------------+--------

TABLE_ENCRYPT | t | 32

(1 row)

插入数据,查看表文件:

TEST=# insert into TABLE_ENCRYPT values(1, 'aaaa');
INSERT 0 1
TEST=# insert into TABLE_ENCRYPT values(2, 'bbbb');
INSERT 0 1
TEST=# checkpoint;
CHECKPOINT
TEST=# select sys_relation_filepath('TABLE_ENCRYPT');SYS_RELATION_FILEPATH
-----------------------base/14941/49228
(1 row)

hexdump 查看表也被加密,‘aaaa’字符已经不能正常显示。

img

3、使用CTS语法为已存在非加密表进行加密

TEST=# \d aaaTable "PUBLIC.AAA"Column |  Type   | Modifiers
--------+---------+-----------EE     | INTEGER |NAME   | TEXT    |AAA表未加密
TEST=# SELECT RELNAME, RELISENCRYPTED, LENGTH(RELTDEKEY) FROM SYS_CLASS WHERE RELNAME='AAA';RELNAME | RELISENCRYPTED | LENGTH
---------+----------------+--------AAA     | f              |
(1 row)AAA表数据:

TEST=# select* from aaa;
EE | NAME
----+------
1 |
2 |
3 |
4 |
5 | king
(5 rows)

需要参数encrypt_user_table开启
TEST=# show encrypt_user_table ;encrypt_user_table
--------------------on
(1 row)TEST=# create table  TABLE_ENCRYPT2 as select * from aaa;
SELECT 5
TEST=#创建完TABLE_ENCRYPT2表处于加密模式
TEST=# SELECT RELNAME, RELISENCRYPTED, LENGTH(RELTDEKEY) FROM SYS_CLASS WHERE RELNAME='TABLE_ENCRYPT2';RELNAME     | RELISENCRYPTED | LENGTH
----------------+----------------+--------TABLE_ENCRYPT2 | t              |     32
(1 row)TABLE_ENCRYPT2表数据和表AAA一致

TEST=# select * from TABLE_ENCRYPT2;
EE | NAME
----+------
1 |
2 |
3 |
4 |
5 | king
(5 rows)

TEST=# select sys_relation_filepath('TABLE_ENCRYPT2');
SYS_RELATION_FILEPATH
-----------------------
base/14941/57414
(1 row)

hexdump查看TABLE_ENCRYPT2表已经处于加密状态,数据king无法正常显示 hexdump -c 57414 |grep k

img

查看非加密表文件:

TEST=# select sys_relation_filepath('AAA');SYS_RELATION_FILEPATH
-----------------------base/14941/24580
(1 row)

hexdump查看AAA表没有处于加密状态 hexdump -c 24580 |grep k

如图,没加密情况可以正常显示数据king

img

结论

KingbaseESV8R3版本数据库可以配置透明加密功能中的表加密,但没有实现表空间加密功能,建议客户尽量使用V8R6版本透明加密功能。

KingbaseESV8R3版本数据库可以通过create table语法中加入关键字ENCRYPTED实现表加密,也可以通过在kingbase.conf中设置参数encrypt_user_table=on实现默认表加密功能。

KingbaseESV8R3数据库可以通过CTS方式将未加密的表改为加密方式存储。

http://www.khdw.cn/news/67617.html

相关文章:

  • 东莞建筑公司seo优化案例
  • 上海市建设网站站长之家素材网站
  • wordpress内容模版文件在哪个目录站内优化
  • 公司网站设计收费拉新注册app拿佣金
  • 精品课程网站设计百度投诉中心人工电话
  • 网站开发接单营销推广有哪些形式
  • 修改wordpress首页缩略图尺寸惠州seo公司
  • 湖南网页设计培训网站建设搜索引擎优化的名词解释
  • 大连做网站优化哪家好本地广告推广平台哪个好
  • wordpress统计类插件关键词优化推广公司哪家好
  • 一个学校怎么制作网站企业网站设计
  • 镇江网站建设推广查数据的网站有哪些
  • 黄冈公司网站推广软件首选永久免费建个人网站
  • pc网站做成移动网站发稿网
  • 做 爱 网站小视频在线观看百度收录查询
  • 自适应网站建站他达拉非功效与作用主要会有哪些
  • 政府网站建设合同优化电池充电什么意思
  • 搜索引擎搜不到网站苏州疫情最新情况
  • 做网站需要看啥书牛推网络
  • 西渡网站建设代推广app下载
  • 做移动网站中央电视台新闻联播
  • weebly做网站发帖平台
  • 哪里有网站建设加盟合作google年度关键词
  • wordpress nginx配置搜索引擎优化seo网站
  • 苏州好的做网站的公司网址注册在哪里注册
  • 天津哪里做网站百度指数分析
  • 交互做的比较好的网站百度打广告怎么收费
  • 南通城乡建设局网站网站seo诊断报告
  • 南宁网站推广费用免费b站软件下载
  • 海珠做网站要多少钱网站开发是做什么的