数据库加密技术及其应用探讨
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库加密技术及其应用探讨
摘要:随着信息水平的不断提高,数据库系统所应用的范围也越来越广泛,但是所涉及的安全性问题却日益突出。因此,对数据库加密技术进行研究拥有极大的实际意义。该文首先探讨数据库加密技术,然后探讨其具体的应用,希望能以此来保证信息系统安全运行。
关键词:数据库;加密;应用
中图分类号:TP393 文献标识码:A 文章编号:
1009-3044(2015)05-0015-02
在当前的信息管理系统中包含国家政策、经济等安全级别非常高的信息,也包含一般企业的加密信息,而数据库中几乎保存了信息管理系统之中的所有信息,一旦数据库之中的数据被窃取或者是篡改,会直接影响信息系统安全性。所以,做好数据库加密,才能确保信息管理系统本身的安全性。
1 数据库加密技术中的关键问题
1.1 加密执行层次
加密数据库数据主要是包含了操作系统层、DBMS内核层与外层这三种层次。就DBMS而言,其内核与外层加密见下图1、图2所示。
1)在OS层
在OS层进行加密和解密处理,无法正确辨认数据库元素以及各个元素之间的相互关系,因此也无法产生合理密钥。在OS层中,数据库文件要么不加密,要么就会整体性加密,无法合理执行加密、解密处理。特别是大型数据库,在数据库加密与解密处理上,很难的到保障[1]。
2)DBMS内核层的加密与解密
在内核层加密与解密中,包含下述特点:
执行时间:需要在存入数据库之前或者是在取出数据库之时,也就是在物理数据进行存取之前;执行主体:通过DBMS所提供的存储过程函数执行或者是由用户定制。
过程:在数据存储中,调用加密存储过程,触发器就可以实现数据的加密处理,之后,再将密文数据存入到相应的数据库之中。在数据读取中,利用相应的存储过程,触发器就可以调用解密数据,之后将结果读出。
算法:一般是由DBMS系统提供。大多数不提供自己算法的添加接口,所以,相对而言,在选择算法会受到限制。
在实现内核层加密中,需要数据库管理系统本身操作的支持,这一种加密需要在执行物理存取之前就要做好加密与解密处理。其优点在于拥有极强的加密功能,并且DBMS不会对其产生影响,能够实现数据库管理系统与加密功能之间的相互衔接。考虑到同DBMS系统之间的紧密连接,就可以确保粒度加密本身的灵活性,再配合DBMS的授权与访问两
方面的控制,就能成为极好的数据保护方案。另外,这一种加密相对透明,但是需要在服务器端进行加密运算,会增加服务器不本身的负载,另外,加密器和DBMS之间的接口支持也需要DBMS开发商的参与。
3)DBMS外层的加密与解密
在外层执行加密与解密主要包含两种模式:第一,图2(a)之中,主要是在应用程序当中实现,在加密过程中可以对应用程序的加密模块加以调用,进而完成相应的工作,然后在传送到DBMS中进行存储;在解密过程中,将数据取出到应用程序之中,通过解密模块,就可以实现数据的解密,并且将结果呈现出来。第二,图2(b)之中,加密可以直接由操作系统提供的功能来实现,这一种加密技术主要是在文件级别上,可以对数据库文件直接加密[2]。
外层加密优点在于数据库服务器负载不会加重,可以在客户端实现加密与解密运算,并且也可以实现网上传输的加密处理,但是其加密功能会受到一定的限制,与数据库管理系统之间具备的耦合性相对偏低。
1.2 算法选择
加密算法的强度直接决定的数据库加密技术的安全程度,所以加密算法会对其安全和性能产生直接的影响。
1)对称加密
对称加密也可以称之为共享密钥加密。本算法应用相对
较早,在对称加密算法中,原始数据和加密密钥会通过数据发信方的特殊加密算法处理后,将其转化成加密密文,然后发送出去。如果收信方想要解读,就需要利用密钥以及相同的逆算法来对密文进行解密处理,然后才可以恢复成为能够阅读的明文。考虑到对称加密算法的公开性、速度快、计算量小,所以成为最常见的机密技术手段之一,一般包含了IDEA、AES和DES。
2)非对称加密
非对称加密也称之为公钥加密。其所使用的是完全不同的,但是又能够匹配一对钥匙,即公钥和私钥。基本原理:当发信方只希望收信方才可以解读相应的信息,首先发信方就应该了解收信方拥有的公钥。然后利用其进行原文的加密处理;当收信方受到之后,就可以使用私钥进行解密处理。明显,在进行双方通信之前,收信方需要将随机生成的公钥先发送给收信方。因为两个密钥的存在,这一类方式很适合分布式系统数据加密中使用。一般来说,RSA是最为常见的加密算法,不仅可以实现数据的加密,同时还可以实现数据完整性的认证以及身份的认证。
3)混合加密
对称加密算法因为同一个密钥的使用,所以相对非对称加密,其速度要快很多,因为适合大量的数据处理。但是其缺点在于相同的密钥使用,所有的发送方和接收方必须知道
密钥,或者是只需要密钥就可以进行文件的访问,因此,在生成密钥、分发密钥、备份密钥等方面很容易出现问题。但是公钥加密就不会存在分发的问题,所以,在网络系统和多用户中管理密钥非常简单,但是因为难解的数学问题,因此,安全强度相比对称加密要低,并且速度偏慢。
为了将对称加密和非对称加密的优势展现出来,就提出了混合加密。在混合加密中,首先需要对称加密算法以及一个随机生成的密钥来加密数据,之后,利用公钥进行随机密钥的加密处理,之后,将密文一起发送给接收方。通过私钥,接收方可以先解密随机密钥,然后利用其进行密文的解密处理。这一方案兼顾了速度快、安全强度高的特点,在每一次加密之中,都会使用随机密钥,并且密钥不会出现重复的现象。但是在加密过程中,产生密钥和保存密钥还存在一定的难度,因此在实际应用中还欠缺应用广泛度。
2 学籍管理系统中数据库加密技术的应用实证分析
系统由图3所示的表示层、业务逻辑层以及数据服务层共同组成。
加密与解密控制主要是对用户的访问要求进行分析,完成表示层与数据库加密系统之间的交互处理;在加密系统中包含了加密字典管理、密钥管理等,当用户与系统进行交互时,先要使用加密与解密引擎进行处理,然后在将访问传递给数据服务层[3]。