论文部分内容阅读
数据库技术从60年代产生至今己得到快速的发展和广泛的应用。数据库系统(DBS)担负着日益增长的集中处理大量数据信息的任务,其安全问题日渐突出。数据库系统的安全问题主要源于数据共享问题。数据库管理系统(DBMS)的主要功能和使命就是为了提供数据信息的共享,但问题就在于向授权用户提供数据信息的同时又要拒绝任何非法的访问存取请求。作为保存数据信息的数据库管理系统,应当提供对数据信息的安全存取的服务,即保证数据库管理下的数据的可用性、完整性和一致性,从而保护数据库所有者和使用者的合法权益。当前在信息系统广泛使用的大型数据库Oracle,Sybase,SQL Server等的主导地位在相当长的时间内是难以改变的,但这些数据库系统在常规使用过程中存在的来自内部或外部攻击而产生数据安全问题也是不争的事实。为了提升安全系数,保护敏感数据的机密性,采用一种有效的数据库安全中间件对数据库内敏感信息加密显然有特别的现实意义。文章提出了通过中间件增强数据库安全的方案,设计实现一个数据库安全中间件(DBSAPI),主要工作如下:1)给出了一种改进的中间件开发模式——四层B/S开发模式,该模式弥补了传统三层B/S模式和C/S模式在安全性上存在的不足;2)给出了一种改进的基于敏感字段的子密钥加密技术,将加密粒度细化到数据项,这样不但加大了安全系数,同时可以降低加/解密时空开销以提高效率,采用三级密钥工作模式,数据库主密钥是用来加密表密钥,表密钥是由用户设置或在创建表时随机生成,用来生成子密钥的,子密钥由表密钥通过密钥算法生成,用来加密数据,以提高生成子密钥的安全性,使得不同记录的相同属性值采用了不同的子密钥进行加密,这样相同的明文信息将产生不同的密文信息,这对于明文空间较小时的猜测攻击和已知明文攻击(Know Plaintext Attacks)都可有效抵制,并对密文膨胀问题和数据类型转化问题进行了初步的探讨;3)身份认证采用改进的通行字方法,将用户ID和其通行字组合后再通过单向函数杂凑后存入系统,身份认证时调用相应单向函数后验证,如对安全有更高要求,则采用Guillou-Quisquater身份鉴别方案;4)通过一个简单的应用实例验证了该数据库安全中间件(DBSAPI)的实用性和有效性。