基于扩展存储过程的数据库加密技术

基于扩展存储过程的数据库加密技术

ID:14580745

大小:156.50 KB

页数:8页

时间:2018-07-29

基于扩展存储过程的数据库加密技术_第1页
基于扩展存储过程的数据库加密技术_第2页
基于扩展存储过程的数据库加密技术_第3页
基于扩展存储过程的数据库加密技术_第4页
基于扩展存储过程的数据库加密技术_第5页
资源描述:

《基于扩展存储过程的数据库加密技术》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本文来源:夏冰软件技术博客(http://www.cksis.com/blog/)基于扩展存储过程的数据库加密技术利用加密技术对数据库文件进行加密能够有效地保证数据的安全,即使黑客窃取了关键数据,得到的也只是密文,他仍然难以得到所需要的信息。实现数据库加密以后,各用户(或用户组)的数据由用户用各自的密钥加密,从而保证了用户信息的安全。另外,经过加密的敏感数据在数据库的备份中以密文形式存在,从而减少因备份介质失窃或丢失而造成的损失。因此,数据库文件加密对于保障数据安全十分重要。文章介绍了扩展存储过程技术,并在此基础上提出了一个数据库加密系统逻辑模型,分析了各主要模块

2、,实现了基于扩展存储过程的数据库加密系统。一、扩展存储过程扩展存储过程是一种特殊的存储过程。它通过Microsott的开放式数据服务(opendataservices,ODS)技术,提供了一个基于服务器的编程接口来扩展SQLServer的功能。从而用户可以使用高级语言创建自己的外部例程,以满足特定的功能需求。扩展存储过程实质上是SQLServer可以动态装载并执行的动态链接库,可直接在SQLServer的地址空间运行,并使用SQLServerODSAPl(applicationprogramminginterface)编程。扩展存储过程的工作原理如图1所示。本文来

3、源:夏冰软件技术博客(http://www.cksis.com/blog/)扩展存储过程是关系数据库引擎的开放式数据服务层的一部分,而开放式数据服务层是该引擎和服务器Net-Iibrary之间的接口。服务器Net-Library接收客户端TDS(tabulardatastream)数据包并将它们传递给开放式数据服务。开放式数据服务将TDS数据包转换成事件并传递到关系数据库引擎的其它部分。而后数据库引擎使用开放式数据服务,通过服务器Net-Library将回复发送回SQLServer客户端。二、系统的设计1、系统设计目标一个有效的数据库加密系统,必须达到以下目标:①

4、利用加密技术,对数据库中存储的“敏感”数据实现字段级加密:②恰当地处理数据类型转换等问题,保证加密和解密处理过程中数据的完整性;⑨使用户不需考虑数据的加、解密过程,实现数据库合法用户对于数据的录入、修改和检索操作的透明性;本文来源:夏冰软件技术博客(http://www.cksis.com/blog/)④实现对各级加密密钥的存储和管理。2、系统的模块划分系统实现的逻辑模型如图2所示。系统可以划分为3大模块:加/解密引擎模块、数据库对象模块和加密系统管理模块。加/解密引擎模块是数据库加密系统的核心部分,它由加/解密动态库和SQL语句解析两部分组成,实现对应用程序提交

5、的SQL语句的解析、对加密密钥的加载以及对数据信息的加/解密处理;数据库对象模块是数据库加密系统与DBMS的接口,数据库加密系统通过该模块实现对数据库的访问和操作,而DBMS则通过该模块调用加/解密动态库来实现相应的加、解密操作;加密系统管理模块用于系统管理员对密文数据库中的信息及加密密钥进行管理,如修改加密字段信息、加载密钥和变更加密密钥等。下面以应用程序访问密文数据库为例,简要说明系统的工作原理:本文来源:夏冰软件技术博客(http://www.cksis.com/blog/)首先,SQL解析模块对应用程序提交的SQL语句进行分析,根据DBMS中的加密字典对S

6、QL语句进行解析和扩展;然后,加密系统将重组后的SQL语句提交给DBMS。DBMS通过数据库对象模块调用加/解密动态库,对数据库中的密文数据进行解密,并将解密后的结果反馈给数据库对象模块;最后,应用程序通过数据库对象模块获取解密后的明文数据。3、加/解密引擎模块(1)加/解密动态库加/解密动态库是加/解密引擎模块的核心部分,也是整个加密系统的核心。动态链接库(dynamiclinklibrary,DLL)是一个可以被其它应用程序共享的程序模块,其中封装了一些可以被共享的例程和资源,由Windows应用程序直接或间接调用来执行。系统中的加/解密动态库主要实现了3DE

7、S加密算法、不同数据类型与二迸制流之间的相互转换和加密密钥的加载等。加/解密动态库由数据库对象模块的加/解密存储过程根据需要调用并执行,从而实现相应的功能。①3DES加密算法:3DES(即TripleDES)是DES向AES过渡的加密算法,是DES的一个更安全的变形,三重DES增加了密钥长度。因此,系统中采用3DES算法实现对数据信息的加/解密,具有较高的安全性。②不同数据类型与二进制流之间的相互转换:由于数据库中字段的数据类型是多样的,就需要考虑不同数据类型与二进制流之间的相互转换。当用户读数据时,首先将密文二进制流数据解密为明文二进制流,而后根据加密字典中的信

8、息,通过U

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。