论文部分内容阅读
当今社会是一个信息化的社会,信息安全已深入到人们工作生活的每一个角落,人们对信息安全的需求与日俱增。数据库作为当前信息系统的基础平台,保障其数据的安全对整个社会具有重大意义。随着科学和技术的发展,传统的数据库安全技术,如访问控制、防火墙和入侵检测等已不能解决所有的安全问题。目前的数据库安全问题主要体现在操作系统不足以为数据库提供全面的安全保护、数据库管理员(DBA)的权限过大以及备份介质失窃或丢失造成的泄密等方面。本文从上以问题出发,通过对现有的安全策略的研究,将数据加密技术应用到数据库,使用当前成熟的数据加密算法对数据库中的敏感信息进行加密,并在此基础上通过分析加密数据的特点以及对加密数据库的攻击方法,借鉴了UNIX口令管理方案中“盐”的概念,提出了“先盐后密”的数据加密方案。加密虽然保障了数据的机密性,但也使加密后的数据失去其原有的特性,导致了数据库管理系统在数据查询时需要对所有加密数据先解密再查询,这会极大地降低系统的查询性能。而查询是数据库中最常用的操作之一,为此本文在现有技术的基础上设计了加密数据的快速搜索方法,实验证明,该方法能极大地提高加密数据的查询速度,减小由于加密而带来的系统性能降低。本文还设计了基于集中式管理的密钥管理方案以保障系统中各类密钥的安全,该方案密钥管理层次清晰,结构简单,实现容易。方案为数据库加密系统引入了一个数据库系统安全员角色,从权力上对DBA进行了限制,有效地解决了DBA权限过大的问题;方案还引入了USBKEY,使用USBKEY中的用户公钥对数据库工作密钥进行保护,保障了密钥的安全性。最后,本文对以上方案进行了实现,并通过实验证明该数据库系统在加密后仍然保持了良好的性能。