数据库加密综述
数据库数据加密与安全存储

数据库数据加密与安全存储数据加密与安全存储是当前信息安全领域中的重要课题。
在互联网时代,数据泄露和信息安全问题成为了人们关注的焦点。
特别是大型数据库中存储的大量敏感信息,一旦被黑客攻击,后果不堪设想。
因此,数据库数据加密与安全存储显得至关重要。
本文将探讨数据库数据加密的原理和常用方法,并介绍一些保护数据库数据安全的策略。
一、数据库数据加密的原理数据加密是通过对敏感数据进行一系列变换使其难以被未授权的个体识别和解读的过程。
数据库数据加密的基本原理是通过将明文数据转化为密文数据,从而达到保护数据安全的目的。
在数据库中,常见的数据加密方法有对称加密和非对称加密两种。
1. 对称加密对称加密又称为共享密钥加密,其中使用同一个密钥进行数据的加密和解密。
对称加密算法通常具有高速加解密的特点,主要有DES、3DES和AES等。
在数据库中,对称加密方法常用于保护大量敏感数据的安全存储。
2. 非对称加密非对称加密又称为公钥加密,其中使用一对密钥:公钥和私钥。
公钥用于加密数据,私钥用于解密数据。
非对称加密算法主要有RSA和ECC。
在数据库中,非对称加密方法常用于保护密钥的传输和存储安全。
二、数据库数据加密的常用方法数据库数据加密的方法多种多样,根据不同的需求和安全级别,可以选择适合的加密方法和策略。
1. 字段级加密字段级加密是指对数据库中的敏感字段进行加密。
该方法通常通过在应用层对敏感字段进行加密和解密操作来实现,例如对用户的密码字段进行加密处理,在存储和传输过程中保护用户的密码安全。
2. 表级加密表级加密是指对整个数据库表的数据进行加密。
该方法通常通过对数据块或存储文件进行加密来实现,例如对整个用户表进行加密,从而保护用户的所有信息。
3. 数据库级加密数据库级加密是指对整个数据库进行加密。
该方法通常通过对数据库文件进行加密来实现,并且只有合法用户在经过身份认证后才能访问数据库。
这种方法提供了最高级别的数据安全保护,但也带来了较大的性能开销。
数据库存储加密的常用技术方法

数据库存储加密的常用技术方法1. 数据库字段加密:对数据库中的敏感字段进行加密存储,例如用户的密码、身份证号等个人信息,常用的加密算法包括AES、RSA等。
2. 数据传输加密:在数据库与应用程序之间的数据传输过程中,需要采用加密传输协议,如SSL/TLS,以确保数据在传输过程中不被窃取或篡改。
3. 数据库连接加密:确保数据库连接是安全的,可以通过启用数据库连接的SSL选项或通过VPN隧道来保护数据库连接的安全性。
4. 数据脱敏:对一些不需要完整信息的数据进行脱敏处理,例如将手机号码、邮箱地址等个人信息部分隐藏或替换成通用信息,以减少敏感数据泄露的风险。
5. 数据字段级加密:使用字段级加密方法,将个别敏感字段进行加密处理,只有授权用户才能解密和查看原始数据,常用的方法有数据库自带的加密函数或专门的加密库来实现。
6. 数据备份加密:确保数据库备份文件的安全性,采用加密算法对备份文件进行加密存储,同时管理好加密密钥,以防止备份数据的泄露。
7. 数据访问控制:对数据库的访问进行细粒度的权限控制,通过数据库的用户角色管理、访问控制列表等机制,限制用户对敏感数据的访问权限。
8. 数据审计与监控:建立完善的数据审计系统,监控数据库的访问和操作情况,追踪敏感数据的访问者和使用情况,及时发现异常操作并采取相应的应对措施。
9. 数据加密算法选择:在选用数据加密算法时,要根据实际需求和敏感程度选择合适的算法,避免选用已经被破解或不安全的加密算法。
10. 数据加密密钥管理:严格管理数据加密所需的密钥,采用密钥轮换、密钥分割等技术手段,加强对密钥的管理和保护,防止密钥泄露导致数据遭到破解。
11. 数据加密性能优化:在数据库存储加密时,需要考虑加密性能对系统性能的影响,选择合适的加密方式和算法,以及进行优化和加速加密操作,以减少对数据库读写性能的影响。
12. 数据加密与索引:在进行加密字段上的查询时,要考虑加密字段对数据库索引的影响,可采用明文索引或HASH索引来避免因加密字段而导致的查询效率下降。
浅谈数据库加密技术

浅谈数据库加密技术摘要:随着信息技术的发展,对数据的安全性要求越来越高,由于数据库加密技术可以为数据库管理系统提供更高的安全性,因此得到广泛应用。
本文主要对数据库加密应满足的要求进行了阐述,介绍了数据库加密的常用办法,分析了数据库加密对数据库的影响。
论文关键词:数据库,加密,安全一、数据库加密应满足的要求由于数据库具有数据复杂、数据的查询操作非常频繁且数据存储时限相对较长等特点,所以应用于数据库的加、解密算法及相应的密钥管理机制应满足以下要求:(1)数据库加密系统应满足的首要条件是保证数据的安全性。
在此方面要求加密算法保证数据的保密性和完整性,防止未授权的数据访问和修改。
(2)数据库中存在大量的查询操作,因此加解密效率要求较高,不能引起数据库系统的性能大幅度下降。
(3)数据库组织结构对于数据库管理系统而言不能有太大的变动,应尽可能做到明文和密文长度相等或至少相当。
(4)由于时限较长和密钥的复杂,密钥管理机制应更加安全、灵活和坚固。
二、数据库加密的常用办法数据加密技术按照实现的方法可划分为静态加密和动态加密,从实现的层次上则可分为文件级加密和存储设备级加密。
(1)静态加密与动态加密静态加密是指在加密期间,待加密的数据处于未使用状态,这些数据一旦加密,在使用前,需首先通过静态解密得到明文,然后才能使用。
目前市场上许多加密软件产品就属于这种加密方式。
与静态加密不同,动态加密是指数据在使用过程中自动对数据进行加密或解密操作,无需用户的干预,合法用户在使用加密的文件前,也不需要进行解密操作即可使用,表面看来,访问加密的文件和访问未加密的文件基本相同,对合法用户来说,这些加密文件是“透明的”,即好像没有加密一样,但对于没有访问权限的用户,即使通过其它非常规手段得到了这些文件,由于文件是加密的,因此也无法使用。
由于动态加密技术不仅不改变用户的使用习惯,而且无需用户太多的干预操作即可实现文档的安全,因而近年来得到了广泛的应用。
数据库中的数据加密与隐私保护技术

数据库中的数据加密与隐私保护技术随着大数据时代的到来,数据已经成为我们生活中不可或缺的一部分。
无论是个人用户的个人信息、企业的商业数据,还是国家机密等重要信息,其安全性和隐私保护都变得至关重要。
在数据库中,数据加密和隐私保护技术成为了当前最为关注的话题。
一、数据加密技术数据加密是将明文数据通过密码算法转换成密文,以实现数据的保密性。
常见的数据加密技术包括对称加密和非对称加密。
对称加密是一种使用同一密钥进行加密和解密的加密技术。
在数据库中,可以使用对称加密算法对敏感数据进行加密。
加密时,使用一个密钥对数据进行加密,而在解密时,使用相同的密钥将密文转换回明文。
常见的对称加密算法包括DES、AES等。
这些算法具有高效性和安全性的特点,但需要保证密钥的安全性,一旦密钥泄露,数据的安全性将受到威胁。
非对称加密是一种使用不同密钥进行加密和解密的加密技术。
在数据库中,可以使用非对称加密算法来确保数据的安全性。
非对称加密使用一对密钥,公钥用于加密数据,而私钥用于解密数据。
一般情况下,公钥是公开的,而私钥是保密的。
常见的非对称加密算法包括RSA、ECC等。
这些算法通过利用数学难题的计算难度来确保数据的安全性和保密性。
二、数据隐私保护技术数据隐私保护技术旨在防止非授权个人或机构获取、使用、披露敏感数据。
常见的数据隐私保护技术包括数据脱敏和访问控制。
数据脱敏是对敏感数据进行模糊化处理的一种技术手段。
通过去除或替换敏感信息,使原始数据在保持某些特征的同时,减少对个人隐私的泄露风险。
常见的数据脱敏技术包括数据匿名化、数据泛化和数据扰动。
数据匿名化用于去除有关个人身份的信息,如姓名、地址等;数据泛化用于扩大数据范围,提高数据的安全性;数据扰动是通过添加噪声或对数据进行随机化处理来提高数据的保密性。
访问控制是一种通过对用户的身份认证和权限控制来管理对数据库的访问的技术手段。
它可以确保只有经过授权的用户才能访问敏感数据,并且只能访问他们被授权的数据。
数据库管理中的数据加密与解密技术

数据库管理中的数据加密与解密技术1. 引言在当今数字化时代,数据库管理成为各个组织管理重要数据的主要手段之一。
然而,随着网络攻击和数据泄露的不断增加,保护敏感数据的安全性变得尤为重要。
因此,数据库管理中的数据加密与解密技术应运而生。
本文将探讨数据库管理中的数据加密与解密技术及其应用。
2. 数据加密技术数据加密是一种将明文数据转化为密文数据的过程,使得未经授权的用户无法理解和使用该数据。
数据库管理中的数据加密通常分为两种形式:列级加密和行级加密。
列级加密列级加密是将数据库中的某一列进行加密,保护特定的敏感数据。
这种加密方法通常使用对称密钥算法,如AES(高级加密标准)或DES (数据加密标准)。
通过对该列进行加密,即使数据库被非法入侵者获取,也无法解读其中的明文数据,保护了数据的机密性。
行级加密行级加密是将数据库中的特定行进行加密,而不是针对某一列的加密。
这种加密方法通常使用公钥加密算法,如RSA(一种非对称加密算法)。
通过对特定行进行加密,即使数据库被非法入侵者获取,他们也无法直接获取其中的明文数据,保护了数据的机密性。
3. 数据解密技术数据解密是将密文数据转化为明文数据的过程,以便于被授权的用户使用。
在数据库管理中,解密数据需要使用相应的密钥和算法。
当授权用户需要获取特定数据时,他们必须提供正确的密钥,以便进行解密。
4. 数据加密与解密的应用数据加密和解密技术在数据库管理中有着广泛的应用。
以下是几个典型的应用场景:金融机构金融机构经常处理大量敏感数据,如客户的个人信息和财务数据。
在这些机构中,使用行级加密技术来保护这些敏感数据是非常重要的。
只有授权的员工才能解密并使用这些数据,确保其安全性。
医疗行业医疗行业的数据库中包含着大量的患者个人健康记录。
使用列级加密技术,医疗机构可以保护这些健康记录中的敏感数据,例如身份证号码和疾病诊断。
这确保了患者个人信息的保密性,同时满足法规和道德要求。
零售业零售业需要处理大量的客户支付信息,如信用卡号码和密码。
数据库加密综述

数据库加密综述石磊摘要数据库加密是利用现有的数据库和加密技术,来研究如何对数据库中的数据加、解密,从而提高数据库系统的安全。
数据库加密可以在OS、DBMS内层、DBMS外层上实现。
OS层上的数据库加密由于存在太多的问题和缺陷,已经不被人们考虑。
已有的数据库加密产品都是在DBMS外层实现的,这种实现方式虽说做到了数据和密钥的分离,可以有效地抵御外部的非法入侵,但对企业内部的攻击却没有很好的防范措施;另外,这种方式还存在着:使数据和应用程序紧密结合起来、在DBMS之外又增加了其他的数据管理工具、硬盘存储空间浪费大等缺陷。
其实,数据的加密与否只是数据的一个属性,数据的加密存储是数据的一种保存方式,关乎数据的物理存储,这些都是DBMS现有功能的一部分。
另外从数据和应用程序的分离、数据的维护和安全来看,数据库加密都应当在DBMS内实现。
本文就是基于关系DBMS,介绍一种数据库加密的实现方法。
1 引言随着网络应用的不断发展,信息成为社会发展需要的重要战略资源。
围绕信息的获取、使用和控制的竞争愈演愈烈,信息安全成为在激烈竞争中立于不败之地的重要保障。
调查显示,我国互联网安全状况有所好转,但互联网用户的网络安全意识仍比较薄弱,对发生网络安全事件未给予足够重视,联网单位对外部网络攻击防范的意识有所增强,但单位内部的网络安全管理工作还不到位。
数据库作为信息存储中心,其安全问题尤为突出。
一方面,企业为了本身的利益,需要对其敏感信息进行保护而不让外界获取;另一方面,在数据库作为服务DAS(Database As Service)的数据管理模型下,企业需要从数据库服务提供商DSP(Database Service Provider)处获得专业的数据库服务。
这种情况之下,企业的数据存放在数据库服务提供商处,其完全性无法得到有效的保障。
因为如果数据库只使用访问控制来限制数据访问的话,数据库提供商处的数据库管理员(DBA)就可能会有意或无意访问到企业的所有数据,从而给企业造成巨大损失。
数据库加密技术研究与实现

数据库加密技术研究与实现随着互联网时代的到来,人们的隐私安全问题越来越受到关注。
数据库是存储大量数据的重要工具,对数据库的加密技术的研究与实现就显得尤为重要。
数据库加密技术是一种将关键信息以加密方式存储在数据库中的方法,能够保护数据的安全性和私密性,是一项非常重要的技术。
一、数据库加密技术的原理数据库加密技术主要通过加密算法对数据库中的数据进行加密处理,从而保证数据的安全性和私密性。
这里主要介绍两种加密方式,分别是对称加密和非对称加密。
1. 对称加密对称加密是指加密和解密采用相同的密钥。
对称加密算法有DES、3DES、AES等。
对称加密算法的优点是简单易行,速度快,但其密钥管理比较困难,因为每个用户都需要知道加密密钥,一旦加密密钥外泄,数据的安全就无法得到保障。
2. 非对称加密非对称加密的加密和解密采用两把不同的密钥。
非对称加密算法有RSA、ECC 等。
非对称加密算法的优点是安全性高,因为私钥是由用户自己保管的,只有用户自己拥有,加密密文才能被解密,但其计算速度比对称加密算法慢。
二、数据库加密技术的应用数据库加密技术的应用范围非常广泛,主要包括以下几个方面。
1. 数据库的备份在进行数据库备份的时候,可以采用数据库加密技术对备份数据进行加密处理,从而保证备份数据的安全性和私密性。
2. 数据库的迁移在进行数据库迁移的时候,可以采用数据库加密技术对需要迁移的数据进行加密处理,从而保证数据的安全性和私密性。
3. 数据库的访问控制数据库加密技术可以对用户访问控制进行加密处理,只有授权访问的用户才可以访问数据,从而保证数据的安全性和私密性。
4. 数据库的安全性数据库加密技术可以对数据库中的数据进行加密处理,从而保证数据的安全性和私密性。
一旦密钥被泄漏,也不会影响数据库中的其它数据,维护数据库的整体安全性。
三、数据库加密技术的实现数据库加密技术的实现需要采用一些具体的技术方法和工具。
下面主要介绍两种方法,分别是透明加密和非透明加密。
数据加密技术的研究综述毕业论文[管理资料]
![数据加密技术的研究综述毕业论文[管理资料]](https://img.taocdn.com/s3/m/04fe62f56bd97f192379e9e3.png)
网络教育学院本科生毕业论文(设计)题目:数据加密技术的研究综述(模板)内容摘要随着计算机网络技术的飞速发展,数据加密技术将成为信息网络安全技术中的核心技术,本文介绍了网络与信息安全技术体系结构,对目前信息加密技术进行了分析,阐述了各类加密算法的优缺点,同时对加密技术的发展趋势进行了描述从最初的保密通信发展到目前的网络信息加密。
数据加密技术是指将一个信息经过加密钥匙及加密函数转换,变成无意义的密文,而接收方则将此密文经过解密函数、解密钥匙还原成明文。
在竞争激烈的信息时代,客观上需要一种强有力的安全措施来保护机密数据不被窃取或篡改,因此数据加密技术就应运而生。
关键词:信息安全;数据加密;加密钥匙;解密钥匙;加密算法目录内容摘要 (I)引言 (1)1 概述 (2)背景 (2)本文的主要内容及组织结构 (3)2 数据加密和加密系统 (3)数据加密技术原理 (4)数据加密技术的分类及其应用 (4)加密系统体系 (5)加密系统的分类 (5)加密体制存在的问题 (6)对称加密、非对称加密和数字签名 (7)3 DES加密标准 (9)DES介绍和DES算法框架 (9)DES实例分析 (9)DES的安全性和应用误区 (12)DES的拓展 (12)3DES (12)AES算法 (13)4 公开加密算法RSA (14)RSA的简介 (14)RSA算法的结构 (14)RSA算法的案例 (14)RSA探索 (22)5 其他加密技术 (25)MD5 (25)可变长密钥块Blowfish加密技术 (26)椭圆曲线密码体制 (27)伪随机数加密技术 (28)6 结论 (32)参考文献 (33)附录一伪随机数加密法的加密和解密程序 (33)引言随着网络技术的发展,网络安全也就成为当今网络社会的焦点中的焦点,几乎没有人不在谈论网络上的安全问题,病毒、黑客程序、邮件炸弹、远程侦听等这一切都无不让人胆战心惊。
病毒、黑客的猖獗使身处今日网络社会的人们感觉到谈网色变,无所适从。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库加密综述石磊摘要数据库加密是利用现有的数据库和加密技术,来研究如何对数据库中的数据加、解密,从而提高数据库系统的安全。
数据库加密可以在OS、DBMS内层、DBMS外层上实现。
OS层上的数据库加密由于存在太多的问题和缺陷,已经不被人们考虑。
已有的数据库加密产品都是在DBMS外层实现的,这种实现方式虽说做到了数据和密钥的分离,可以有效地抵御外部的非法入侵,但对企业内部的攻击却没有很好的防范措施;另外,这种方式还存在着:使数据和应用程序紧密结合起来、在DBMS之外又增加了其他的数据管理工具、硬盘存储空间浪费大等缺陷。
其实,数据的加密与否只是数据的一个属性,数据的加密存储是数据的一种保存方式,关乎数据的物理存储,这些都是DBMS现有功能的一部分。
另外从数据和应用程序的分离、数据的维护和安全来看,数据库加密都应当在DBMS内实现。
本文就是基于关系DBMS,介绍一种数据库加密的实现方法。
1 引言随着网络应用的不断发展,信息成为社会发展需要的重要战略资源。
围绕信息的获取、使用和控制的竞争愈演愈烈,信息安全成为在激烈竞争中立于不败之地的重要保障。
调查显示,我国互联网安全状况有所好转,但互联网用户的网络安全意识仍比较薄弱,对发生网络安全事件未给予足够重视,联网单位对外部网络攻击防范的意识有所增强,但单位内部的网络安全管理工作还不到位。
数据库作为信息存储中心,其安全问题尤为突出。
一方面,企业为了本身的利益,需要对其敏感信息进行保护而不让外界获取;另一方面,在数据库作为服务DAS(Database As Service)的数据管理模型下,企业需要从数据库服务提供商DSP(Database Service Provider)处获得专业的数据库服务。
这种情况之下,企业的数据存放在数据库服务提供商处,其完全性无法得到有效的保障。
因为如果数据库只使用访问控制来限制数据访问的话,数据库提供商处的数据库管理员(DBA)就可能会有意或无意访问到企业的所有数据,从而给企业造成巨大损失。
对于这种“监守自盗”的行为,只有从DBMS内完成对数据的加密,这样不仅可以有效减少来自于外界的危害,也可以有效防止DBA对数据安全造成的威胁。
我的综述通过叙述数据库的安全现状说明数据库加密技术的重要性,根据数据库数据存储的特点提出数据库加密的要求,详细阐述数据库加密技术的一般原理,并重点介绍基于关系DBMS的一种数据库加密实现方法,最后提出对数据库安全管理前景的展望。
2 数据库的安全现状l、数据库的安全需求面对外部攻击者可能造成的安全威胁,可以将数据库的安全需求归纳为五个方面:数据的完整性、数据的保密性、用户鉴别、访问控制和安全审计。
2、数据库的安全威胁数据库在信息系统中的核心地位是数据库面临着更加严重的安全威胁。
凡是可能造成数据库中存储数据错误(遗漏非授权的修改、删除等)、数据的非法获取、拒绝正常服务等行为都属于对数据库的安全造成了威胁。
数据库的安全威胁主要来自人为恶意攻击、自然灾害、设备故障或管理失误等。
其中对数据库安全威胁最大的是人为恶意攻击。
恶意攻击将造成非法获取数据、非法篡改数据和引发系统的拒绝服务等多种安全威胁。
其攻击手段主要有:(1)非法用户通过窃取被授权用户的用户名、口令及密钥等手段访问其未被授权访问的数据。
( 2 )使用被授予访问权限的帐户来进行未被授权的操作也就是合法用户的越权行为。
( 3 )绕过DBMS直接对数据库文件进行读写。
( 4 )利用病毒、特洛伊木马等破坏性程序,在特定的条件下,攻击者可以绕过系统设置的安全机制进入系统以达到破坏和窃取数据的目的。
( 5 )通过拒绝服务攻击,使服务器过载、崩溃,从而阻止合法用户对数据的正常访问。
( 6 )通过控制通信,例如错误信息的插入、故意的延时或无序传送等手段通过网络进人系统窃取数据并进行破坏性操作。
( 7 )在数据传输信道上采用搭线窃听、电磁接受、传输监控等手段窃取数据。
综合分析数据库系统的漏洞及其面临的安全威胁,我们认为对数据库中敏感数据进行加密处理,不仅是堵塞“隐秘通道”的有效手段,更是确保数据库中的数据内容不被泄漏的最重要的手段。
通过加密,不仅管理员无法知道数据内容,即使数据不幸泄露或丢失,其内容也难以被人破译。
因此,实现数据库中敏感数据的保密是保证数据库安全的重点。
3 数据库加密的功能和特点一般而言,一个行之有效的数据库加密技术主要应有以下几方面的功能和特点:a)身份认证:用户除提供用户名、口令外,还必须按照系统安全要求提供其他相关安全凭证。
系统可以选择使用终端密钥、用户USB Key等来增强身份认证的安全性。
b)通信加密与完整性保护:有关数据库的访问在网络传输中都应被加密,通信的目的地还可以校验通信的完整性;通信一次一密的意义在于防重放、防篡改。
c)数据库数据存储加密与完整性保护:系统采用数据项级存储加密,即数据库中不同的记录、每条记录的不同字段都采用不同的密钥加密,并辅以校验措施,以保证数据库数据存储的保密性和完整性,防止数据的非授权访问和修改。
d)数据库加密设置:系统中可以选择需要加密的数据库列,以便于用户选择那些敏感信息进行加密而不是全部数据都加密。
只对用户的敏感数据加密,可以提高数据库访问速度,有利于用户在效与安全性之间进行自主平衡。
e)多级密钥管理模式:主密钥和主密钥变量保存在安全区域,二级密钥受主密钥变量加密保护;数据加密的密钥存储或传输时利用二级密钥加密保护,使用时受主密钥保护。
f)安全备份:系统提供数据库明文备份功能(为防止灾难发生,系统提供明文形式的数据库内容备份功能,以防止丢失密钥或数据造成灾难性后果)和密钥备份功能(用户可以同时使用DBMS的备份功能和数据库加密系统的密钥备份功能,同时备份密文和密钥,在需要时进行恢复)。
g)通用接口和广泛的平台支持:系统采用开放的体系结构,支持标准SQL 语句。
4 数据库加密的要求由于数据库本身的特点和实际应用需求,对数据库加密一般应具有以下功能:(1)由于数据库数据信息的生命周期一般比较长,无论采取何种加密方法都应能做到实际不可破译的程度;(2)数据信息在加密后,其占用的存储空间不宜明显增大;(3)加密和解密速度都应足够快,尤其对解密的速度要求更高,应使用户尽量感觉不到由于加、解密所产生的延时;(4)加密系统要有尽可能灵活的授权机制;(5)加密系统应同时提供一套安全的、灵活的密钥管理机构;(6)对数据库的加密不应影响系统的原有功能,应保持对数据库操作的灵活性和简便性;(7)加密后的数据库仍能满足用户在不同类别程度上的访问;(8)防止非法拷贝。
5 数据库加密的原理数据加密就是把数据信息即明文转换为不可辨识的形式即密文的过程,目的是使不应了解该数据信息的人不能够知道和识别。
将密文转变为明文的过程(如图所示)就是解密。
加密和解密过程形成加密系统,明文与密文统称为报文。
任何加密系统通常都包括如下4个部分:(1)需要加密的报文,也称为明文P;(2)加密以后形成的报文,也称为密文Y;(3)加密(解密)算法E ( D);(4)用于加密和解密的钥匙,称为密钥K。
加密过程可描述为:在发送端利用加密算法E和加密密钥Ke对明文P进行加密,得到密文Y = E Ke( P )。
密文Y破传送到接收端后应进行解密。
解密过程可描述为:接收端利用解密算法D和解密密钥Kd对密文Y进行解密,将密文恢复为明文P = D Kd ( Y )在密码学中,把设计密码的技术称为密码编码,把破泽密码的技术称为密码分析。
密码编码和密码分析合起来称为密码学。
在加密系统中,算法是相对稳定的。
为了加密数据的安全性,应经常改变密钥。
6 基于关系DBMS 的一种数据库加密实现方法前面已经说到数据库加密的特点和要求,基于以上的考虑,这种方法的设计思路是在DBMS 中引入一个加密子系统,该子系统提供和软、硬件加密模块的接口,完成加密定义、操作、维护以及密钥的管理、使用等各项功能,所有和加密有关的操作都需要在加密子系统中完成。
用户连接到数据库或进入DBMS 交互式处理环境,可以执行原有的各项功能。
但如果要执行和加密有关的操作,就需要通过命令、输入密码进入加密子系统。
需要说明的是:在实现数据库加密后,用户对表中加密属性列的访问,既需要加密子系统中的访问授权,也需要数据库访问控制中的授权。
下面就加密子系统的设置以及其他相关功能的实现及操作分别进行阐述。
6.1为用户设置加密子系统用户能够或被取消访问加密子系统,这需要由系统安全员在D B MS 的交互用户要访问加密子系统,必须先连接到数据库或进入DBMS交互式处理环境。
用户可以使用下列命令进入和退出加密子系统:set encrypt on on using{password}set encrypt off在加密子系统中,用户、系统安全员使用下面的命令更改用户加密子系统密码:set password {new_password} {passwordconfirm}set password {new_password} {passwordconfirm} for user_id6.2加密属性及密钥管理在数据库系统中引入~个新的对象cryptograph,用来指定加密需要的加密算法、密钥、密钥长度等加密属性。
用户根据要求创建自己需要的cryptograph对象,从而在创建表时可以为需要加密的属性列指定一个对象,确定加密时所需要的加密属性。
(1)对象创建。
使用下面的命令创建cryptograph对象:create cryptograph {cryptograph_name} with {algorithm_name} {lemgth} [interval] 参数length、interval指定密钥的长度、密钥有效期信息,对象的密钥由系统自动生成、加密后存储,用户无法直接获取。
创建对象的用户就成为它的所有者,有关对象的所有信息都存放在数据字典中。
(2)对象授权管理。
具有加密子系统访问能力的用户,能够在加密子系统中创建cryptograph对象,该用户就成为新建对象的所有者。
只有对象的所有者才能够修改、删除crytograph对象,才能将对象的使用权限授予其他的用户。
用户只有在获得crypfograph对象的使用权限之后,才能在属性列的定义中使用该对象,才能操作由该对象定义的属性列。
使用下列命令授予、撤消用户对数据库对象crytograph的使用权限:grand use on {cryptograph_name} to {user_id}revoke use on{cryptograph_name} from {user_id}要成功地撤消用户cryptogral幽对象的使用权限,必须保证该用户没有使用该对象定义任何表的属性列。