数据库加密系统是一款基于透明加密技术的数据库防泄漏系统,
该产品能够实现对数据库中的敏感数据加密存储、访问控制增强、应
用访问安全、安全审计以及三权分立等功能。
数据库安全技术之一,数据库安全技术主要包括:数据库漏扫、
数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。
数据库透明加密是数据库加密技术的关键,避免了应用系统程序
需要大量改造,产生很多的附加成本。
应用背景
当前我国涉密部门(军队、军工、政府、金融行业、保险行业、电
信行业等)中,80%以上应用系统使用国外数据库产品,特别是
Oracle;如何保证系统在高性能、高可用的同时提升数据的安全性,
确保关键信息不被泄露、国家利益不受损失已经迫在眉睫。
政策要求
2020年1月1日,《中华人民共和国密码法》正式施行,对数
据库加密技术提出了密码技术要求,国家对密码实行分类管理。密码
分为核心密码、普通密码和商用密码。
第七条核心密码、普通密码用于保护国家秘密信息,核心密码保
护信息的最高密级为绝密级,普通密码保护信息的最高密级为机密
级。
核心密码、普通密码属于国家秘密。密码管理部门依照本法和有
关法律、行政法规、国家有关规定对核心密码、普通密码实行严格统
一管理。
存在问题
当前主流Oracle安全增强方案包括前置代理、应用加密和Oracle
自带加密选件TDE等。前置代理需要应用大幅改造、大量Oracle核
心特性无法使用;应用加密必须由应用实现数据加密,加密数据无法
检索,已有系统无法透明移植;TDE不能集成国产加密算法,不符合
国家密码政策。因此这几种方案一直未能得到有效推广。
成熟的数据库加密软件应该解决两大重要难题,一是应用透明,
二是密文索引。在安装了数据库加密软件后,原有的应用系统基本不
需要改造,因为大型的应用程序改造起来很困难,有的甚至源程序没
有了,导致无法改造;明文转为密文后,原有按明文构造的索引必然
失效,这就需要按照密文对应明文查询的顺序构造密文索引,通过密
文索引可以让数据库查询速度几乎不减慢。
对数据进行加密,主要有三种方式:系统中加密、客户端(DBMS
外层)加密、服务器端(DBMS内核层)加密。客户端加密的好处是不
会加重数据库服务器的负载,并且可实现网上的传输加密,这种加密
方式通常利用数据库外层工具实现。而服务器端的加密需要对数据库
管理系统本身进行操作,属核心层加密,如果没有数据库开发商的配
合,其实现难度相对较大。此外,对那些希望通过ASP获得服务的
企业来说,只有在客户端实现加解密,才能保证其数据的安全可靠。
常用数据库加密技术
信息安全主要指三个方面。一是数据安全,二是系统安全,三是
电子商务的安全。核心是数据库的安全,将数据库的数据加密就抓住
了信息安全的核心问题。
对数据库中数据加密是为增强普通关系数据库管理系统的安全
性,提供一个安全适用的数据库加密平台,对数据库存储的内容实施
有效保护。它通过数据库存储加密等安全方法实现了数据库数据存储
保密和完整性要求,使得数据库以密文方式存储并在密态方式下工
作,确保了数据安全。
数据库加密功能特性
经过近几年的研究,我国数据库加密技术已经比较成熟。
一般而言,一个行之有效的数据库加密技术主要有以下6个方面
的功能和特性。
(1)身份认证:
用户除提供用户名、口令外,还必须按照系统安全要求提供其它
相关安全凭证。如使用终端密钥。
(2)通信加密与完整性保护:
有关数据库的访问在网络传输中都被加密,通信一次一密的意义
在于防重放、防篡改。
(3)数据库数据存储加密与完整性保护:
数据库系统采用数据项级存储加密,即数据库中不同的记录、每
条记录的不同字段都采用不同的密钥加密,辅以校验措施来保证数据
库数据存储的保密性和完整性,防止数据的非授权访问和修改。
(4)数据库加密设置:
系统中可以选择需要加密的数据库列,以便于用户选择那些敏感
信息进行加密而不是全部数据都加密。只对用户的敏感数据加密可以
提高数据库访问速度。这样有利于用户在效率与安全性之间进行自主
选择。
(5)多级密钥管理模式:
主密钥和主密钥变量保存在安全区域,二级密钥受主密钥变量加
密保护,数据加密的密钥存储或传输时利用二级密钥加密保护,使用
时受主密钥保护。
(6)安全备份:
系统提供数据库明文备份功能和密钥备份功能。
数据库加密基本要求
(1)字段加密;
(2)密钥动态管理;
(3)合理处理数据;
(4)不影响合法用户的操作;
(5)防止非法拷贝;
数据库数据加密实现
使用数据库安全保密中间件对数据库进行加密是最简便直接的方
法。主要是通过系统中加密、DBMS内核层(服务器端)加密和DBMS
外层(客户端)加密。
在系统中加密,在系统中无法辨认数据库文件中的数据关系,将
数据先在内存中进行加密,然后文件系统把每次加密后的内存数据写
入到数据库文件中去,读入时再逆方面进行解密就,这种加密方法相
对简单,只要妥善管理密钥就可以了。缺点对数据库的读写都比较麻
烦,每次都要进行加解密的工作,对程序的编写和读写数据库的速度
都会有影响。
在DBMS内核层实现加密需要对数据库管理系统本身进行操作。
这种加密是指数据在物理存取之前完成加解密工作。这种加密方式的
优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可
以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运
算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之
间的接口需要DBMS开发商的支持。
在DBMS外层实现加密的好处是不会加重数据库服务器的负载,
并且可实现网上的传输,加密比较实际的做法是将数据库加密系统做
成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的
加解密处理。
采用这种加密方式进行加密,加解密运算可在客户端进行,它的
优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,
缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍
差。
数据库加密系统分成两个功能独立的主要部件:一个是加密字典
管理程序,另一个是数据库加解密引擎。数据库加密系统将用户对数
据库信息具体的加密要求以及基础信息保存在加密字典中,通过调用
数据加解密引擎实现对数据库表的加密、解密及数据转换等功能。数
据库信息的加解密处理是在后台完成的,对数据库服务器是透明的。
按以上方式实现的数据库加密系统具有很多优点:首先,系统对
数据库的最终用户是完全透明的,管理员可以根据需要进行明文和密
文的转换工作;其次,加密系统完全独立于数据库应用系统,无须改
动数据库应用系统就能实现数据加密功能;第三,加解密处理在客户
端进行,不会影响数据库服务器的效率。
数据库加解密引擎是数据库加密系统的核心部件,它位于应用程
序与数据库服务器之间,负责在后台完成数据库信息的加解密处理,
对应用开发人员和操作人员来说是透明的。数据加解密引擎没有操作
界面,在需要时由操作系统自动加载并驻留在内存中,通过内部接口
与加密字典管理程序和用户应用程序通讯。数据库加解密引擎由三大
模块组成:加解密处理模块、用户接口模块和数据库接口模块。
本文发布于:2022-07-28 15:54:20,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/falv/fa/83/43304.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |