数据库加密可行性研究分析报告.docx

上传人:小飞机 文档编号:1858456 上传时间:2022-12-22 格式:DOCX 页数:18 大小:231.93KB
返回 下载 相关 举报
数据库加密可行性研究分析报告.docx_第1页
第1页 / 共18页
数据库加密可行性研究分析报告.docx_第2页
第2页 / 共18页
数据库加密可行性研究分析报告.docx_第3页
第3页 / 共18页
数据库加密可行性研究分析报告.docx_第4页
第4页 / 共18页
数据库加密可行性研究分析报告.docx_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《数据库加密可行性研究分析报告.docx》由会员分享,可在线阅读,更多相关《数据库加密可行性研究分析报告.docx(18页珍藏版)》请在三一办公上搜索。

1、数据库加密一、可行性研究分析报告小组成员表:姓名学号专业联系方式指导教师: 提交时间: 1. 总论21.1项目背景简介21.2项目内容及技术原理简介31.3相关技术的发展现状及趋势91.4小组人员基本情况111.5现有工作基础和支撑条件112. 项目实施方案122.1项目目标及考核技术指标122.2项目的主要研究内容122.3测试规模及地点122.4主要技术关键及创新点142.5项目实施方案142.6技术风险分析162.7项目进度甘特图172.8人员分工173. 市场分析173.1市场预测173.2项目市场竞争优势、风险及市场策略183.3经济社会效益分析183.4推广应用及产业分析181.

2、总论1.1项目背景简介当今社会是一个信息化社会,信息安全已经深入到人们工作生活的每一个角落,人们对信息安全的需求与日俱增。随着信息技术的飞速发展,数据信息的安全已成为当前信息社会非常关注的突出问题。数据库作为当前信息系统的基础平台,保障其数据的安全对整个社会具有重大意义。数据库系统信息的安全性依赖于两个层次:一式操作系统提供的安全保障;二是数据库自己提供的安全措施。目前一些通用的操作系统都具有用户注册、识别用户、任意存取控制(DAC)、审计等安全功能,而且DBMS在的基础上也增加了不少安全措施。但是和DBMS对数据库文件本身仍然缺乏有效地保护措施,有经验的网上黑客会“绕道而行”,直接利用OS工

3、具窃取或篡改数据库文件内容,这种隐患被称为通向DBMS的“隐秘通道”,它所带来的危害一般数据库用户难以察觉。随着科学和技术的发展,传统的数据库安全技术,如访问控制、防火墙和入侵检测等已经不能解决所有的数据库安全问题。通过制定安全策略和权限的控制,我们可以管理好数据访问上的安全问题,访问控制技术是一种非常有效的安全措施,它有一些成熟的安全理论模型作为基础。但是,这并不意味着有了访问控制技术,安全问题就能得到解决。比如存在以下一些安全漏洞:1)操作系统不足以提供安全保护。在不同层次的软件系统中有着不同的操作对象,对这些对象的保护很难最终由操作系统实现。数据库中存在多种不同粒度的对象,如数据库、表、

4、记录等,这些对象无法直接对应为操作系统对象,无法由操作系统提供保护;2)数据库管理员(DBA)的权限过大,DBA有权访问全部的机密数据,这很可能会造成机密信息的泄漏;3)备份介质丢失造成机密信息的泄密。维护数据库系统安全需要对数据库中的数据进行定期备份,大量的数据备份文件存储在无保护的磁性和光学介质中,流失的隐患相当大,从而可能造成机密信息的泄漏。这对于敏感数据(比如用户的密码、信用卡信息等)而言是很大的冲击。由此可见,在传统安全措施的基础上,保障数据库机密数据安全需要采用数据加密技术将数据库中的机密数据加密,从而绕过了各种安全机制,这样就可以避免因人为因素的数据泄漏或是备份数据截止的流失等各

5、种原因造成的机密信息泄露。1.2项目内容及技术原理简介 1.1.1 项目内容 基于SQL Server 2005 的数据库加密 1.2.2 SQL Server 2005 的安全体系与加密体系A. 安全体系:i. 网络安全。实现服务器和客户机之间的密文传送。ii. Windows操作系统安全。SQL Server 2005服务器所在的Windows操作系统的安全也是非常重要的,一旦操作系统被攻克,那么依附在其上的安全也就荡然无存了。iii. SQL Server 2005服务器安全。SQL Server 2005服务器采用了身份验证机制,用户必须先通过身份验证才能进入到服务器内部。iv. SQ

6、L Server 2005数据库安全。身份验证通过后,服务器级别的登录名可以映射为数据库上的用户名,用户名就代表了对数据库的操作权限。v. SQL Server 2005数据对象安全。SQL Server 2005在数据对象层还提供了安全按机制。vi. 物理存储的安全。除了逻辑上的服务器、数据库、数据对象的安全机制之外,还需要考虑物理存储介质的安全。B. 加密体系:在SQL Server 2005之前的版本,如果我们需要对其中的数据进行加密,就得需要单独的第三方软件来完成,而在SQL Server 2005中,其自身就采用了加密机制,既包括对称加密技术也包括数字签名和非对称加密技术,也就是说不

7、需要借助第三方软件来实现对数据的加密和颁发数字证书。我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。 i. 在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。ii. 在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加解密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和

8、加密器之间的接口需要DBMS开发商的支持。这种加密方式如图1所示:iii. 在DBMS外层实现加密比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/脱密处理。采用这种加密方式进行加密,加/脱密运算可在客户端进行,它的优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍差。这种加密方式如图2所示:而在SQL Server 2005中提供的完整加密体系结构如图所示:i. 服务主密钥。SQL Server 2005 服务器安装时,会自动产生一个基于对称加密技术的服务器主密钥。该密钥可以

9、用来对数据库的主密钥进行加密,而在数据库的主密钥的支持下,又可以构建基于数字证书、对称和非对称加密的体系。管理员不能对服务器主密钥进行修改或删除,SQL Server 2005仅 提供备份和恢复服务器主密钥的功能。ii. 数据库主密钥。如果要加密数据库中的数据,管理员就要通过特定的命令来产生数据库的主密钥。每个数据库只能有一个主密钥,管理员可以手工创建、删除、修改和加密数据库主密钥。iii. DP API。SQL Server 2005通过DP API(数据保护应用编程接口)调用Windows操作系统中的加密函数,从而可以在安装服务器时自动产生服务器主密钥,在服务器主密钥的基础上又可以对数据库

10、的主密钥等进行加密。可以认为DP API就是把SQL Server 2005服务器和Windows操作系统联系起来的接口,基于这个接口,SQL Server 2005就可以使用操作系统的加密功能。iv. 数字证书。SQL Server 2005提供了数字证书的颁发功能,管理员仅需要通过执行相关的语句就可以生成数字证书,生成的数字证书还可以通过数据库主密钥进行加密。数字证书可以直接对数据进行加密。数字证书可以用于对对称密钥进行加密。v. 对称密钥。SQL Server 2005提供内置的产生对称密钥的语句,产生的对称密钥可以对数据进行加密。对称密钥可以被数字证书或非对称密钥加密。对称密钥本身可以

11、被另一个对称密钥加密。C密钥的加密 关系图如下:Windows Password服务器主密钥 服务器级别Password数据库主密钥 数据库级别Password数字证书非对称密钥Password对称密钥Password1.2.3 数据库加密核心技术对称加密:SQL Server 2005中的Management Studio 并没有直接提供产生对称密钥的方法,管理员要为数据库产生对称密钥,需要执行特殊的CREATE SYMMETRIC KEY 语句,而创建好的对称密钥通过OPEN SYMMETRIC KEY 和CLOSE SYMMETRIC KEY语句来打开和关闭,在对称密钥已经打开的情况下,

12、我们就可以使用相应的使用对称密钥加解密数据的语句来实现对数据库中的某些数据进行加解密。需要注意的是,在进行加解密之前,都要先确保密钥未开启状态,而在加解密结束后,要将对称密钥关闭。在数据库加密中常用的对称加解密算法有:DES、IDEA、Blowfish、RC5、CAST-128和RC2。需要指出的是,不同的Windows操作系统版本住处的加解密算法可能不完全一致,比如说Windows Profession 不支持AES-256的加解密算法,在执行相对应的SQL语句时会提示相关的信息。1.3相关技术的发展现状及趋势 关于数据库安全,美国从七十年代就开始从事安全数据库管理系统的理论研究。IBM公司

13、的C.Wood,E.B.Ferriandea, R.C.Summers在IBM Systems Journal 1980提出的Database Security: Requriement, Policies, and Models,以及George I, Davida LW, John B K 在1981年的ACM Transaction on Database System 上发表 A database encryption system with subkey,被普遍认为代表着加密数据库研究的开始。为适应计算机安全技术飞速发展的需要,美国于1983年发布了“可信计算机系统评估标准(TCSE

14、C)”,1985年又发布了其修订版。TCSEC的发布有力的促进了安全计算机系统的研究,也促进了安全数据库管理系统的研究。 R.L.Rivest 等人提出了同态加密算法对数据进行加密,使用者直接对数据库密文进行操作而无需解密。这种方法减少了加解密的开销,提高了机密数据的操作性能。但是一般来说,秘密同台函数的抗攻击性能不好,有文献已经提出了其攻击方法。 近几年来,很多大型关系数据库系统主要都是通过不同程度的修改DBMS核心来达到数据库安全的效果。例如Oracle公司在其产品oracle8i的第二版允许数据和应用程序管理者可以在数据库里直接加密字符数据、二进制数据和LOB数据。各种主流数据库,除了提

15、出自身的数据库加密解决方案外,还积极与第三方软件合作,力图通过各种外围方法来解决数据库加密的问题。从总体上来说,各个数据库厂商一般都提供了一些数据库加密的解决方案,部分解决了对敏感数据的加密问题。然而,这些解决方案都不能很好的达到多用户共享密钥和加密数据的效果。由数据加密还带来了另外一个问题加密数据的搜索效率问题,这方面的研究,Hakan Hacigumus 和ZHENG-FEI WANG 做了很多有建设性的工作。 在国内,由于计算机、数据库和网络的应用总体上要落后于国外,加密数据库的研究与应用也相对落后与国外。在我国,很多公司、企业、甚至国家部门使用的网络软硬件产品、防火墙硬件、入侵检测产品

16、、操作系统甚至包括数据库产品在内,都严重依赖国外。因此国内对数据库加密的需求非常迫切,因为通过对数据库中的数据进行加密,可以从根本上、自主地保证数据的安全性。从这点来说,数据库加密技术是我们在信息安全领域应该抓住的一个机遇。 采取修改DBMS内核的方式来达到数据库加密的效果对国内研究人员来说不太现实。这是因为修改DBMS内核的工作量非常大,更重要的是,这种方式必须要DBMS开发商的全力支持,而这一点几乎不可能做得到。因此国内的相关研究基本上通过在DBMS外围构造加密程序组件的方法,可以达到数据库加密的效果。从总体上来说,由于国内在数据库加密方面起步较晚,真正在安全性和易用性方面都达到令人满意的

17、成熟产品尚未出现。1.4人员基本情况1.5现有工作基础和支撑条件 我们小组发到目前为止就只是大概的了解了一下有关数据库加密技术的一些相关知识并下载了一些相关的文档,但是对于深层次的东西还没有去深入研究和参考。总的来说只是对项目有一个整体的框架认识,初步的了解了一下实现数据库中对称和非对称加解密的一些简单原理和算法的一些相关基础知识,但是对于如何将加解密的功能嵌入到数据库管理系统中的相关问题还未进行深入的了解,这也将是我们下一个阶段的任务计划之一。 2项目实施方案2.1项目目标及考核技术指标A. 项目目标。采用对称和非对称加解密算法实现对数据库中敏感数据和字段的加解密,从而在一定程度上保障敏感机

18、密数据的安全。B. 考核技术指标。可以对我们自己设计的数据库中的数据进行加密解密。2.2项目的主要研究内容本次实训我们所选的方向是数据库安全,目前有很多保障数据库安全的措施,而我们所选择的是数据库加密,因此研究方向就是采用加密机制保障数据库中敏感机密数据的安全,笼统的来说就是数据库加密。2.3测试规模测试过程:测试策略为“由小到大”模式,即:1)单元测试:由程序员个人负责,集中测试最小可编译的程序单元。这里通常采用白盒测试和静态测试的方法,对程序中的语句、内部数据结构、接口、边界等内容进行测试和改进。并同调试一起进行,优化个人模块,等待集成。2)集成测试:集中每个人的软件模块,由指定人员负责集

19、成测试。目标是把通过了单元测试的模块组合在一起,发现测试过程中与模块接口有关的问题。3)系统测试:确认系统满足用户需求,所有功能和性能都得到满足,同时提供安全性、容错性、保密性等保证措施。2.4主要技术关键及创新点本次项目的技术关键有两点:一是加密算法的实现及其安全性;二是如何将在上一阶段实现的算法嵌入到系统中从而实现完整的数据库加密功能。由于在本次实训中我们将采用目前密码学研究中工人的加解密算法,因此,算法的安全性是可以保障的。2.5项目实施方案项目将使用DES算法对数据加密,然后将加密算法嵌入系统中,从而实现对数据库的加密。2.5.1 DES 算法原理1、DES 算法的基本思想DES 对6

20、4 位明文进行分组计算。首先通过初始置换将明文分组分成左半部分(L0)和右半部分(R0),各为32 位长度。然后将R0 与子密钥K1 进行F 函数运算,输出32 位序列,再与L0 进行异或操作得到R1,如此经过16 轮运算后,将左、右半部序列合在一起,最后经过末置换(初始置换的逆置换),完成对对数据的加密,算法流程参见下图。2、子密钥的生成子密钥的产生假如将64 位密钥进行密钥置换,不考虑每个字节的第8 位,DES 密钥由64 位减至56 位,56 位密钥被分成两部分,前28 位为C0, 后28 位为D0。C0=K57K49K41K52K44K36, D0=K63K55K47K20K12K4。

21、接着,根据轮数,Ci 和Di 分别经过LSi 循环左移1 位或2 位。16 次循环左移的位数依据下列规则进行:循环左移位数1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1经过循环左移得到的Ci、Di 经过压缩置换即得到子密钥Ki (i=1,2,16)。 压缩置换也称作置换选择,位就是从56 位中选出48 位,表2 定义了压缩置换。例如,处在第33位位置的那一位在输出时移到了第35 的位置,而处在第18位位置的那一位被略去了。2.5.2 DES 算法安全性问题1、DES 算法密钥的长度到目前位置,最有效的破解DES 算法的方法是穷举搜索法,那么56 位长的密钥总共要测试256 次,

22、如果每100 毫秒可以测试1 次,那么需要7.21015 秒,大约是228,493,000年。但是,仍有学者认为在可预见的将来用穷举法寻找正确密钥已趋于可行,所以若要安全保护10 年以上的数据最好不用DES 算法。2、弱密钥问题DES 算法中存在12 个半弱密钥和4 个弱密钥。由于生成子密钥的过程中密钥被分成了2 个部分,假如这2 个部分分成了全0 或全1,那么每轮产生的子密钥都是相同的,当密钥是全0 或全1,或者一半是1 或0 时,就会产生弱密钥或半弱密钥,此时DES 算法安全性就会变差。2.6技术风险分析基于我们现有的条件,由于对数据库系统低层次的东西了解甚少,觉得在本次项目中存在的最大风

23、险就是可能无法很好的将实现的算法嵌入到数据库系统中,从而不能达到预期的数据加密效果。2.7项目进度甘特图2.8人员分工3 .市场分析3.1市场预测数据库作为当前信息系统的基础平台,保障其内部数据的安全对于整个社会有非常重大的意义。目前的电子商务系统等正不断的发展,保障其后台数据库的安全已是不可忽视的重大问题。而在操作系统和服务器级别上保障数据库安全具有很大的局限性和挑战性,因此在数据库上考虑安全性是目前来讲比较有实际效益的方案,而在数据库层面上,加密是一个很好的实现数据安全的平台。因此,数据库加密具有很好的市场发展前景。3.2项目市场竞争优势、风险及市场策略本项目是云南大学软件学院的教学实训项目之一,就目前来讲不涉及任何的市场竞争问题,当然也就没有所谓的风险和市场策略可言。3.3经济社会效益分析本项目是教学实训项目之一,目前没有涉及到市场经济效益问题。3.4推广应用及产业分析此项目为开源项目,所以市场前景非常看好。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号