加密机就像钥匙和锁,一般只用在整体入口处,对于细节部分的加密就不容易做。数据库加密则可以保证更细粒度的区分权限进行加密,还能保证应用加密的可维护性。加密机是做不到的

加密机可‎以提供密‎钥服务和加解‎密服务,但在数‎据‎库中敏感‎数据保护方面‎,加密‎机无法‎限制‎高权限的数据‎库管‎理员‎用户对敏感数‎据进行访问。‎数‎据库加密产‎品‎:(1)‎可以在提供‎与加密机相同的密钥服务和‎加解‎密服务的同时,提供独‎立于数据‎库自身权控体系的‎增强型权限控制功能,可以‎限制‎高权‎限的数据库管‎理员用户对‎数‎据库中敏感‎数据的无限制访问‎,进一步保证数据安全。(2‎)在‎数据库敏感数据‎加‎密保护方面,‎数据库加密产品更有针对性,最大化地保‎证数据库系统的数据处‎理能力

常见的数‎据库加密一般是方式1加密

对这六种数据库加密技术的原理和适用场景逐一进行介绍:

1、应用系统加密

应用系统加密技术被认为是最早的数据库加密形式。但严格来讲,应用系统加密实际上是针对数据而非数据库进行的加密。

· 技术原理

在应用系统层的源代码中对敏感数据进行加密,加密后将密文存储到数据库中。可以直接在应用系统的源代码中以独立的函数或模块形式完成加密;也可以通过源代码的方式封装出应用系统相关业务专用的加密组件或定制的加密API来完成加密。

(应用系统加密技术原理)

· 适用场景

通常情况下,当业务系统仅对有限的敏感数据存在加密需求时,可以考虑使用应用系统加密技术。这里的“有限”包含两方面含义:一方面,是需要加密处理的敏感数据对应的表或字段相对较少;另一方面,是需要加密处理的敏感数据在整个业务系统中的使用相对不多。

比如,仅对业务系统中与员工薪资相关的敏感数据进行加密保护。在实际业务中,薪资信息作为员工信息的一个子部分,在数据库中通常以独立表的形式存在,与员工基础信息、教育信息、履历信息等共同构成员工信息子系统;同时,薪资信息通常只在员工薪酬模块或子系统中使用,与其它业务模块相关性不高,一般也不会在其它业务模块中被引用。

2、前置代理加密

前置代理加密技术是在应用系统加密技术基础上发展起来的,其表现形式通常是由专业的数据安全厂商推出的数据库加密产品。

· 技术原理

类似于应用系统加密技术,前置代理加密技术也是在数据保存到数据库之前对敏感数据进行加密,并将密文存储到数据库中;而不同于前者的是,前置代理加密技术通常是以“前置代理加密网关”这种独立组件产品的形式实现的。

(前置代理加密技术原理)

· 适用场景

通常情况下,当业务系统仅对有限的敏感数据存在加密需求,且用户自身无能力或不愿意进行加解密的相关研发工作时,可以考虑使用前置代理加密技术,即采用第三方厂商的前置代理加密网关系统对敏感数据进行加密保护。

3、后置代理加密

为了避免数据加密给数据访问和处理带来性能上的严重损失,部分数据库厂商在数据库引擎层提供了一些扩展接口和扩展机制。通过这些扩展的接口和机制,数据库系统用户可以通过外部接口调用的方式实现对数据的加解密处理,同时也能够在一定程度上降低对数据库系统性能的影响。

· 技术原理

后置代理加密技术是基于数据库自身能力的一种加密技术,可充分利用数据库自身提供的定制扩展能力实现数据的存储加密、加密后数据检索和应用透明等目标。其中,能够完美实现后置代理加密的典型代表是Oracle数据库——通过“视图+触发器+扩展索引+外部方法调用”的方式实现数据加密,同时保证应用的完全透明。

后置代理加密技术原理)

· 适用场景

后置代理加密技术的价值主要体现在“应用透明和独立权控”两大能力上。因此,在不希望对应用系统在加密时进行改造,或需要对数据库超级用户的数据访问权限进行控制的场景下,如果查询涉及的加密列不多且查询结果集中包含的数据记录也相对不多时,可以考虑使用后置代理加密技术对数据库进行加密。

4、透明数据加密

后置代理加密过于依赖数据库自身所具备的扩展机制,且数据在数据库共享内存中也是密文,导致在部分场景下的数据库性能表现不佳。因此,基于后置代理加密技术又发展出了透明数据加密技术,目的是在保持后置代理加密优势的同时,降低对数据库自身扩展机制的依赖性,从而让数据库系统性能保持在相对合理的水平之上。

· 技术原理

透明数据加密,全称为Transparent Data Encryption(TDE),是一种对应用系统完全透明的数据库端存储加密技术,通常由数据库厂商在数据库引擎中实现——在数据库引擎的存储管理层增加一个数据处理过程,当数据由数据库共享内存写入到数据文件时对其进行加密;当数据由数据文件读取到数据库共享内存时对其进行解密。也就是说,数据在数据库共享内存中是以明文形态存在的,而在数据文件中则以密文形态存在。同时,由于该技术的透明性,任何合法且有权限的数据库用户都可以访问和处理加密表中的数据。

(透明数据加密技术原理)

· 适用场景

透明数据加密技术由于其自身的优势特性,使其适用于几乎全部有数据库加密需求的应用场景,尤其是在对数据加密透明化有要求,或需要对数据库超级用户进行数据访问权限控制,以及对数据加密后数据库性能有较高要求的场景中。

5、文件系统加密

在数据库加密技术中,除了从前端应用及数据库自身角度实现数据库加密外,基于数据库底层依赖的文件系统或存储硬件,也可以实现数据库加密。

· 技术原理

文件系统加密技术是在操作系统的文件管理子系统层面上对文件进行加密,大多是通过对与文件管理子系统相关的操作系统内核驱动程序进行改造实现的。不同于文件加密只对单个文件设置访问口令,或对单个文件的内容进行加密转换,文件系统加密提供了一种加密文件系统格式(类似于ext4、xfs等文件系统格式),通过把磁盘存储卷或其上的目录设置为该文件加密系统格式,达到对存储于卷或卷上目录中文件进行加密的目的。文件系统加密技术本质上并不是数据库加密技术,但可以用于对数据库的数据文件进行存储层面的加密。

(文件系统加密技术原理)

· 适用场景

文件系统加密技术几乎可以适用于任何基于文件系统的数据库存储加密需求,尤其是原生不支持透明数据加密的数据库系统和大数据数据库系统。但是,由于文件系统加密技术无法提供针对数据库用户的增强权限控制,对于需要防范内部数据库超级用户的场景并不适用。

6、磁盘加密

· 技术原理

磁盘加密技术通过对磁盘进行加密以保障其内部数据的安全性,从实现上有软硬两种方式:软件方式的磁盘加密技术,大多是通过专用的磁盘加密软件对磁盘内容进行加密,典型代表如Windows操作系统自带的BitLocker,同类型的商业软件在国内也有很多,但这类软件由于加密原理和使用方式等因素,基本上无法满足数据库系统的数据加密需求;而硬件方式的磁盘加密技术,在实现上则有两个思路:一种是针对单块硬盘的磁盘加密,一种是针对磁盘阵列或SAN存储设备的磁盘加密。

(硬件方式的磁盘加密技术原理)

· 适用场景

磁盘加密技术可以满足几乎所有的存储加密需求,但由于不能提供针对数据库用户的增强权限控制,无法满足对内部数据库超级用户泄露敏感数据的风险防范需求。

加密机与数据库加密产品的区别?相关推荐

  1. 在数据库技术中脏数据是指_数据库安全关键技术之数据库加密技术

    数据库加密作为近年来兴起的数据库安防技术,已经被越来越多的人所重视.这种基于存储层加密的防护方式,不仅可以有效解决数据库明文存储引起的泄密风险,也可以防止来自内部或者外部的入侵及越权访问行为. 从技术 ...

  2. 关于数据库加密你不能不知道的秘密

    数据库是所有信息系统的核心,数据库的安全通常是指其中所存数据的安全,是网络安全.信息安全的重要组成部分.而对数据库中数据的加密保护,是数据库安全的重要内容.但是数据库加密具有相对较高的技术门槛,对于广 ...

  3. 中安威士隆重发布第二代数据库加密系统

    十年磨一剑,在2017年即将来临的重要时刻,中安威士隆重发布第二代数据库加密系统!十年前,中安威士就在国内率先发布了数据库加密系统,可谓国内较早的数据库加密产品.尔后,经过十年的研发攻关和经验积累,中 ...

  4. 无线产品的多种无线加密方式及其区别

    无线产品的多种无线加密方式及其区别 0 前言     无线网络的安全性由认证和加密来保证.本文主要讨论的是无线加密,加密和认证的关系十分密切,文中出现相关无线认证方式的介绍,因此各位要注意区分这两个概 ...

  5. 数据库审计产品购买者指南

    引言 随着信息技术的不断发展,数字信息逐渐成为一种重要资产,尤其是在过去的20多年里,作为信息的主要载体--数据库,其相关应用在数量和重要性方面都取得了巨大的增长.包括政府机构.企事业单位.制造业.商 ...

  6. 超简单数据库加密防止数据泄露

    数据泄露和暴露如今已非常普遍,很难跟踪所有的泄露事件,更难有时间仔细考虑周全的解决方案.但或许是出于必要性考虑,数据库巨头 MongoDB 花费两年时间开发出一套全新的数据库加密机制,直接指向减少这些 ...

  7. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    深入理解MySQL的数据库引擎的类型 作者: 字体:[增加 减小] 类型:转载 本篇文章是对MySQL的数据库引擎的类型进行了详细的分析介绍,需要的朋友参考下   你能用的数据库引擎取决于mysql在 ...

  8. 保护系统 用数据库加密实现数据安全

    一位著名的信息安全专家曾经说过,信息安全无外乎三个方面.一是数据安全,二是系统安全,也就是时下较为热门的防火墙.***检测及×××等边界安全,三是电子商务的安全. 数据加密.数据库加密的技术现状和未来 ...

  9. android sqlcipher 加密,Android 数据库加密 SQLCipher使用方法

    android sqlcipher使用方法 最近在做数据库加密,遇到了些问题,特此记录 greendao 支持数据库加密 网址https://greenrobot.org/greendao/docum ...

最新文章

  1. Java SE 9(JDK9)环境安装及交互式编程环境Jshell使用示例
  2. uva11728alternate task所有因子
  3. 多媒体查询(一招教会你写响应页面!!!)
  4. 专访赵加雨:WebRTC在网易云信的落地
  5. 个人工作总结10(第二阶段)
  6. 全面降低windows系统的安全隐患 (四)
  7. Redis中的Lua 脚本
  8. python中bs4_python bs4库
  9. 2.2 Consumer API官网剖析(博主推荐)
  10. html中视频播放完后可以跳到另一个html
  11. 失去循环标签的Python,我这样实现跳出外层循环
  12. Struts2之checkboxlist 设置默认值和结果回显
  13. 终极解决VS2015 安装失败问题,如 安装包损坏或丢失
  14. PLSQL 连接不上
  15. 基于scap的服务器安全基线核查设计与实现
  16. 无人机飞控系统硬件设计
  17. Java集合练习:模拟斗地主
  18. 二分法(Bisection)求解单根(python,数值积分)
  19. gorilla/mux类库解析
  20. iphone开发之屏幕截图

热门文章

  1. 大数据技术原理-----期末复习-基础知识
  2. python3 字符串比较函数_python3.7字符串基本函数
  3. Disruptor 图解
  4. 测试做得好,犯错少不了【30个最容易犯的错误】谨记
  5. CSS 穿墙术,太强了
  6. mysql 虚读幻读区别,数据库基础知识
  7. SpringMVC同时返回html和jsp
  8. 传输层 可靠传输 重传与确认 停止等待协议工作原理
  9. 樱桃快熟了,你准备好流口水了吗?
  10. 【WLAN】Wi-Fi Direct---从 Android 13 supplicant 视角分析 Go端代码