[发明专利]维护数据库安全的方法和系统无效
| 申请号: | 200710059823.1 | 申请日: | 2007-10-11 |
| 公开(公告)号: | CN101162493A | 公开(公告)日: | 2008-04-16 |
| 发明(设计)人: | 陈伟珂;尹贻林;王子博 | 申请(专利权)人: | 天津理工大学 |
| 主分类号: | G06F21/24 | 分类号: | G06F21/24;G06F17/30 |
| 代理公司: | 天津才智专利商标代理有限公司 | 代理人: | 王顕 |
| 地址: | 300191天*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 维护 数据库 安全 方法 系统 | ||
技术领域
本发明涉及数据库领域,特别是涉及一种维护数据库安全的方法和系统。
背景技术
目前,计算机数据存储的安全问题、敏感数据的防窃取和防篡改问题越来越引起人们的重视,数据库系统作为计算机信息系统的核心,数据库文件作为信息的聚集体,其安全性将是信息产业的重中之重。传统的物理安全、操作系统安全机制和数据库访问控制机制为数据库提供了一定的安全保障,但这些并不能满足数据库全部的安全需求,无法保证一些部门重要数据和敏感数据的安全,这就涉及到了对数据的加密问题。
对数据库安全的维护主要通过对数据库中的数据进行加密来实现。现有的对数据库中数据的加密主要在两个层次进行,即OS(Operation System)层和DBMS(数据库管理系统)外层(客户端)。
DBMS在存储数据库中的数据时,通常会把一个表存储为OS中的一个文件,那么对相应的文件加密就达到了对表中的数据进行加密的目的。但是在OS层加密的粒度是文件级,对加密关系进行操作的时候,首先需要解密文件,这会极大地降低系统的性能。
当前大多数数据库加密方法是在DBMS外层加密。在敏感数据存储到数据库之前,首先将数据加密,然后再将加密后的数据存进数据库,加/解密对DBMS来说是透明的。采用这种方式的优点是,加/解密操作既可以放在服务器端又可以放在客户端进行。此外,加密粒度可以达到字段级。但这种方式有其固有的缺陷,提高查询性能的一个重要机制是使用索引,而索引的建立通常是依据数据之间的逻辑关系。加密后的数据将很难保持原有的逻辑关系,DBMS在将加密数据存储到数据库时,索引的建立将是一个极大的挑战,这对数据库的性能和功能都会产生极大影响。
发明内容
为了解决上述问题,本发明的目的在于提供一种在DBMS内核层进行数据库安全的维护、不影响DBMS的功能且对系统性能的影响较小的维护数据库安全的系统和方法,在内核层实现数据库加密可以支持字段级、元组级、关系级等多种加密粒度。
本发明的目的是通过以下技术方案实现的:
一种维护数据库安全的方法,包括以下步骤:
步骤S10:用户创建关系;
步骤S20:通过SQL的扩展语句指定是否对其中的数据进行加密存储,若需要进行加密存储则执行步骤S30;若不需要进行加密存储则执行步骤S70;
步骤S30:密钥产生器自动产生一个密钥;
步骤S40:将密钥存入安全字典中的加密关系表中;
步骤S50:在DBMS将数据写到外存时,查询系统表中的安全字典,判断是否需要加密,若需要加密则进入步骤S60,若不需加密则进入步骤S70;
步骤S60:利用安全字典中的密钥对数据进行加密;
步骤S70:将数据写出到外存。
一种维护数据库安全的系统,包括数据库加密体系和对SQL的扩展。
上述的数据库加密体系包括一个加/解密模块且在系统表中设置有一个用来存放密钥的安全字典。
上述的安全字典由加密关系表和密钥授权表组成。
上述的对SQL的扩展包括关系创建语句和关系结构修改语句。
本发明的有益效果在于:
1)既保证对敏感数据加密存储又不影响DBMS的功能,最主要的是不影响DBMS索引的建立。与当前大多数为维护数据库安全而采用的在DBMS外层进行加/解密操作的加/解密方法相比,本发明提出的在DBMS内核层进行加/解密的方法是在DBMS将内存中的数据写到外存(如磁盘、磁带等)时进行加密操作,而将外存中的数据读到内存时进行相应的解密操作。因为数据在内存中是明文的,所以DBMS的功能不会受到任何影响,并且可以按常规方式建立索引。
2)本发明还可以充分利用索引来减少加/解密的次数及数据量,对系统性能的影响也比较小。
附图说明
图1为本发明的维护数据库安全的方法的流程图;
图2为关系数据库管理系统中的页面结构图;
图3为用户访问本发明中的数据库的流程图。
具体实施方式
下面结合附图对本发明的维护数据库安全的系统和方法进行详细说明。
本发明的维护数据库安全的方法如图1所示,包括以下步骤:
步骤S10:用户创建关系;
步骤S20:通过SQL的扩展语句指定是否对其中的数据进行加密存储,若需要进行加密存储则执行步骤S30;若不需要进行加密存储则执行步骤S70;
步骤S30:密钥产生器自动产生一个密钥;
步骤S40:将密钥存入安全字典中的加密关系表中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津理工大学,未经天津理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710059823.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种离线消息发送方法
- 下一篇:一种网络安全控制方法及系统





