2021-05-26

                                          数据库加密与安全配置研究

前言

       与网络时代同时到来的是虚拟世界的快速扩展,在这个时代中,信息是社会科学发展的最重要资源。信息的获取、使用成为了我们处于这个时代必不可少的步骤,信息安全也成了社会最为重视的一个问题。随着网络应用的不断发展,我国各行各业的信息化程度也都得到了显著的提高,但国民的网络安全意识还有待加强,对于一些发生的网络安全问题没有引起足够的重视,这很可能会给不法分子和一些追求自我的人留下可乘之机。

       目前,大多数关系型数据库管理系统都有着完整的安全保护措施,包括用户权限、访问控制、安全审计各个功能。但是有些时候仍无法解决数据安全的问题,所以保证数据库数据的安全(现代信息系统安全)是我们面临的一大挑战。在这个网络时代,只要使用网络软件,我们的信息就会被保存到其数据库中,一旦数据库数据发生问题,我们的信息也随之泄露。所以数据库的数据安全问题就是我们自身信息的安全问题。

加密概念

       数据库加密是把加密技术应用到数据库中,研究如何利用加密技术完成数据库中数据的加密,解密,然后来提升数据库系统的安全。而加密技术主要也是为了能够确保数据的安全性。数据加密的基本过程就是对原文件做一些算法运算,变成别人看不懂的代码,也就是我们所说的密文,而我们按照规定的密钥输入就可以显示原文件。加密技术从古代就开始盛行,著名的凯撒密码、当铺密码和与佛论禅等。

       密码算法在早期有替换算法,移位算法等。当前,加密技术通常分为对称式加密和非对称加密。如DES就是一种对称密钥算法,而RSA是一种公开密钥算法。选择合适的加密算法是很重要的,其加密强度应能满足系统安全需要,但要考虑加密结果是否符合数据约束条件,存储会不会造成额外负担;对加密速度的要求则是不应该对系统性能产生明显影响,响应时间越短越好。同时,对应用系统的用户来说,数据库加解密过程应该是透明的,不能影响合法用户的正常操作。数据库加密要求加密效率要尽可能的高,以DES算法为代表的对称密钥加密算法则是简单高效,适合进行数据库加密,而以RSA算法为代表的公开密钥加密算法加密强度较高,但算法复杂,效率较低,但由于它的非对称加密的特点,可以用它来对DES加密的密钥进行加密保护,这样用户只要保证自己的私钥安全,在保证加密信息安全性的同时,大大简化了加密数据库的密钥管理。

数据库加密特点

        目前除了数据库的安全性以外,最有效的方式就是对数据库内的数据进行加密储存。这样即使有非法入侵者能进入到数据库窃取到密文数据,由于解密技术相对复杂,他们也不能轻易得到其明文资料,因此能在很大程度上保护数据的安全,可以说数据加密是数据安全的最后一道防线,也是最后可用的安全手段。数据库加密技术作为一种对数据进行安全保护的有效手段,将起到越来越重要的作用。

        数据库具有高度共享的特点,数据库中数据信息长期存储,反复加密解密,相应地密钥也需要长期存储,宜采用共享密钥机制。数据库加密的主要目的在于防止非法用户通过非法途径获得明文数据,而仍要保证任何合法用户可以通过合法渠道获得解密数据。所以,密钥共享机制一方面要求加密算法的绝对保密和一定的强度,另一方面则要求密钥的共享是一定范围和程度的,不是任何人都可以无条件地获得密钥。

       数据库中的数据是以结构化方式存储的,各种类型的数据有其特定的格式、长度、值域。如果要将加密后的数据仍然存储在原来的表(简称明表)中,则必须保证加密后数据的格式、长度、值域都仍然保持不变。这样的要求对于加密算法来说是难以达到的。于是我们将各种类型的数据以统一的格式加密,并存储在一张表(简称密文表)中,对数据进行查询和更新操作时,再将密文表中所操作的各字段数据根据加密字典“属性信息表”中相应的类型进行转换。

 

数据库安全面临问题

像上面提到的,数据库面临的安全问题主要集中在:数据完整性和保密性,用户权限,访问控制和审计等方面。以下为主要的攻击手段:

  1. 注入和跨库攻击,获取管理员权限。
  2. 绕过数据库管理系统来查看和篡改数据库数据。
  3. 利用病毒、木马或者漏洞等来绕过数据库安全管理机制来达到自己的目的。
  4. 利用拒绝服务攻击,让正常的数据库服务器崩溃。
  5. 在数据传输通道上采用传输监控等手段获取用户数据。

我们只有对数据库中的数据进行加密才能更好的避免上面的一些安全威胁,加密技术会是数据保护最重要的手段。调用加密技术,不仅用户的数据不会被窃取和丢失,管理员的信息及数据也不会被人破取。所以我们要把加密技术应用到数据库的安全管理中才能更好的保护信息。

数据库加密实现功能

数据库的数据要实现完全加密,则最少需要实现一下几个方面的功能:

  1. 身份认证:用户除了提供用户名、密码外,还必须提供其他安全凭证,如验证码等。
  2. 通信时加密:数据库与用户之间的通信要完全加密。
  3. 数据库的数据存储加密:数据库存放的重要数据都需要加密,以防被入侵篡改。
  4. 多级密钥管理:主密钥保证全部区域的加解密过程,二级密钥提高数据库数据的安全性保护,二级密钥会受主密钥保护,更加安全。
  5. 安全备份:数据库管理系统要提供明文备份功能和密钥备份功能。

数据库加密设计及研究

数据库加密系统需要由SQL模块、字典模块,加解密模块,接口模块组成。以下为基本加密原理步骤:

  1. 由SQL模块对提交的SQL命令进行分析,判断是否为加解密模块内部命令。
  2. 若为加解密模块内部命令则直接送到加解密模块,由加解密模块处理。
  3. 检索字典,根据加密定义对SQL命令进行加解密分析。
  4. 将加密好的SQL命令由接口送到数据库服务器,数据库服务器获得数据。
  5. 清除SQL命令缓冲区。

数据库加密一些问题

数据库加密技术在保证数据库安全性的同时,也会给数据库系统的使用带来影响。

  1. 对运行效率产生一定影响

       加密技术带来的最主要问题就是影响数据库的运行效率。为了减少影响,则必须要缩小约束的范围,缩小加密的工作量。

     2.对数据库的SQL语言产生影响

       SQL语言中的分组子句(Group by ,having以及Order by)可以实现数据的分组和排序功能,如果加密这些数据,解密好的明文就会失去了加密之前的数据的分组和排序作用。

     3.对数据完整性约束产生影响

        数据库一般都定义了关系数据之间的完整性约束,比如主键、外键约束的应用等。数据一旦用加密技术加密后,数据库管理系统会很难实现这些完整性约束。

     4.密文数据容易被攻击

        加密技术是把重要的数据变成看上去没有用的密文信息,但密文的随机性也暴露了数据的重要性。攻击者会专门注意这些然后去破坏,又造成了新的不安全性。所以说加密技术需要和其他安全机制相组合,来提高数据库系统的整体安全性。

总结

 这个主要是实现数据库加密系统的原理,对数据库及数据库存储过程进行的加密解密。随着数据库的数据安全性越来越重要,对数据库的加密技术也越来越需要更新与进步。以后还可以建立一个对数据库的加解密方法进行定期更改的程序,防止他人破解加密算法。数据库也会更加的安全。

随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。数据库系统作为信息的聚集体,是计算机信息系统的核心部件,其安全性至关重要,关系到企业兴衰、国家安全。因此,如何有效地保证数据库系统的安全,实现数据的保密性、完整性和有效性,已经成为人们探索研究的重要课题之一。数据库加密技术作为一种对数据进行安全保护的有效手段,将起到越来越重要的作用。

目前除了数据库的安全性以外,最有效的方式就是对数据库内的数据进行加密储存。这样即使有非法入侵者能进入到数据库窃取到密文数据,由于解密技术相对复杂,他们也不能轻易得到其明文资料,因此能在很大程度上保护数据的安全,可以说数据加密是数据安全的最后一道防线,也是最后可用的安全手段。数据库加密技术作为一种对数据进行安全保护的有效手段,将起到越来越重要的作用。

你可能感兴趣的:(信息安全,数据库,sql)