论文部分内容阅读
在现在的许多信息系统中,数据库因存放了大量重要的信息和数据而成为这些系统的核心部分,因而数据库中数据的安全问题就成为十分重要的问题。以明文形式存放的数据,即使置于口令、防火墙和入侵检测系统的保护之下,也很容易被窃取、盗用和破坏。另外,互联网的普及,移动通信、笔记本电脑的广泛使用也对数据库安全构成了极大的威胁。所以,数据库的安全问题已成为当前行业和企业用户迫在眉睫的安全问题。
在目前的技术条件下,保护数据和信息最行之有效的方法就是将它们加密后再存储在数据库中,因为加了密的数据和信息,即使被窃取、被拷贝、被截获,获取者因无法破解窃取的密文而无从知晓它们对应的机密数据。要有效地对数据库中的数据和信息进行加密保护,就必须建立数据库加密系统。本论文就详细地给出了一个数据库加密系统的设计和实现方案。
本文提出的数据库加密系统设计和实现方案是在借鉴国内的一个很典型的数据库加密系统设计方案的基础上提出来的。本文在设计数据库加密系统方案的过程中在保证数据库安全的前提下力图解决该典型方案的两个重大不足:一是适用范围较窄,另一个是密钥管理方案不合理。针对该典型方案仅适用于单机环境的不足,所设计的系统采用的是基于C/S结构的多层应用程序架构,这样的结构使得所实现的系统不仅能在单机上运行,还能在局域网和广域网这样的分布式环境中运行,这无疑会大大提高加密系统的实用性,使其更具推广价值。针对典型方案在密钥管理上不灵活、不合理的缺点,本文提出的密钥管理方案根据不同数据安全要求的不同将数据分成不同的安全数据类,根据不同用户访问权限的不同将用户分成不同的用户类。每一种数据类分配有一个密钥,不同数据类的密钥是不同的,所有用户类密钥都是由若干数据类密钥基于中国剩余定理“集成”出来的,反过来,系统很容易将用户的用户类密钥“分解”成其所能访问的安全数据类密钥,这就意味着本密钥管理方案并不要求用户拥有其能访问的所有数据类的密钥,而只要求用户掌握由中国剩余定理计算出的一个用户类密钥。文中的讨论表明,正是使用了这种简单易行的“集成”和“分解”的方法,数据类的增加或删除、用户类的增加或删除和用户权限的变更都变得很容易实现,因此,本文提出的密钥管理方案使得密钥管理更简单、更灵活、更合理。本文给出的加脱密模块设计方案在保留原典型方案合理设计的基础上,着重强调了如何解决设计和实现中的几个关键问题。为了验证本文提出方案的正确性和可行性,专门实现了一个简易的模拟系统。测试模拟系统所得的数据表明本数据库加密系统设计方案切实可行。