加密机与数据库加密产品的区别?

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

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

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

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

1、应用系统加密

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

· 技术原理

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

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

· 适用场景

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

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

2、前置代理加密

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

· 技术原理

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

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

· 适用场景

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

3、后置代理加密

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

· 技术原理

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

后置代理加密技术原理)

· 适用场景

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

4、透明数据加密

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

· 技术原理

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

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

· 适用场景

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

5、文件系统加密

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

· 技术原理

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

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

· 适用场景

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

6、磁盘加密

· 技术原理

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

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

· 适用场景

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

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

swordbob

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值