爱问知识人 爱问教育 医院库

数据库

首页

数据库

一个良好的数据库加密系统应该满足的基本要求是什么?

提交回答
好评回答
  • 2006-04-21 11:36:22
      目前,计算机大批量数据存储的安全问题、敏感数据的防窃取和防篡改问题越来越引起人们的重视。数据库系统作为计算机信息系统的核心部件,数据库文件作为信息的聚集体,其安全性将是信息产业的重中之重。 
    数据库加密的必要性 
     
    ----大型数据库管理系统的运行平台一般是Windows NT和 Unix,这些操作系统的安全级别通常为C1、C2级。
      它们具有用户注册、识别用户、任意存取控制(DAC)、审计等安全功能。虽然DBMS在OS的基础上增加了不少安全措施,例如基于权限的访问控制等,但OS和DBMS对数据库文件本身仍然缺乏有效的保护措施,有经验的网上黑客会“绕道而行”,直接利用OS工具窃取或篡改数据库文件内容。
      这种隐患被称为通向DBMS的“隐秘通道”,它所带来的危害一般数据库用户难以觉察。分析和堵塞“隐秘通道”被认为是B2级的安全技术措施。对数据库中的敏感数据进行加密处理,是堵塞这一“隐秘通道”的有效手段。 ----据有关资料报道,80%的计算机犯罪来自系统内部。
      在传统的数据库系统中,数据库管理员的权力至高无上,他既负责各项系统管理工作,例如资源分配、用户授权、系统审计等,又可以查询数据库中的一切信息。为此,不少系统以种种手段来削弱系统管理员的权力。实现数据库加密以后,各用户(或用户组)的数据由用户用自己的密钥加密,数据库管理员获得的信息无法进行正常脱密,从而保证了用户信息的安全。
      另外,通过加密,数据库的备份内容成为密文,从而能减少因备份介质失窃或丢失而造成的损失。由此可见,数据库加密对于企业内部安全管理,也是不可或缺的。 ----也许有人认为,对数据库加密以后会严重影响数据库系统的效率,使系统不堪重负。事实并非如此。
      如果在数据库客户端进行数据加/脱密运算,对数据库服务器的负载及系统运行几乎没有影响。在普通PC机上,用纯软件实现DES加密算法的速度超过200K字节/秒,如果对一篇一万汉字的文章进行加密,其加/脱密时间仅需1/10秒,这种时间延迟用户几乎无感觉。
      目前,加密卡的加/脱密速度一般为1M位/ 秒,对中小型数据库系统来说,这个速度即使在服务器端进行数据的加/脱密运算也是可行的,因为一般的关系数据项都不会太长(多媒体数据另当别论)。例如,在同一时间里有10个用户并发查询,每个用户平均查找1000个汉字的数据,最先得到结果的用户延迟时间小于0。
      02秒,最后得到结果的用户也仅需等待约0。16秒。 基本要求   ----根据我们的研究,一个良好的数据库加密系统应该满足以下基本要求: ----1.字段加密 ----在目前条件下,加/脱密的粒度是每个记录的字段数据。如果以文件或列为单位进行加密,必然会形成密钥的反复使用,从而降低加密系统的可靠性或者因加脱密时间过长而无法使用。
      只有以记录的字段数据为单位进行加/脱密,才能适应数据库操作,同时进行有效的密钥管理并完成“一次一密”的密码操作。 ----2.密钥动态管理 ----数据库客体之间隐含着复杂的逻辑关系,一个逻辑结构可能对应着多个数据库物理客体,所以数据库加密不仅密钥量大,而且组织和存储工作比较复杂,需要对密钥实现动态管理。
       ----3.合理处理数据 ----这包括几方面的内容。首先要恰当地处理数据类型,否则 DBMS将会因加密后的数据不符合定义的数据类型而拒绝加载;其次,需要处理数据的存储问题,实现数据库加密后,应基本上不增加空间开销。在目前条件下,数据库关系运算中的匹配字段,如表间连接码、索引字段等数据不宜加密。
      文献字段虽然是检索字段,但也应该允许加密,因为文献字段的检索处理采用了有别于关系数据库索引的正文索引技术。 ----4.不影响合法用户的操作 ----加密系统影响数据操作响应时间应尽量短,在现阶段,平均延迟时间不应超过1/10秒。此外,对数据库的合法用户来说,数据的录入、修改和检索操作应该是透明的,不需要考虑数据的加/脱密问题。
       看看这个网址; 可能对你有帮助! 。

    一***

    2006-04-21 11:36:22

其他答案

    2006-04-21 10:48:18
  •   1字段加密
      在目前条件下,加/脱密的粒度是每个记录的字段数据。如果以文件或列为单位进行加密,必然会形成密钥的反复使用,从而降低加密系统的可靠性或者因加脱密时间过长而无法使用。只有以记录的字段数据为单位进行加/脱密,才能适应数据库操作,同时进行有效的密钥管理并完成“一次一密”的密码操作。
       。2密钥动态管理   数据库客体之间隐含着复杂的逻辑关系,一个逻辑结构可能对应着多个数据库物理客体,所以数据库加密不仅密钥量大,而且组织和存储工作比较复杂,需要对密钥实现动态管理。 3  这包括几方面的内容。首先要恰当地处理数据类型,否则DBMS将会因加密后的数据不符合定义的数据类型而拒绝加载;其次,需要处理数据的存储问题,实现数据库加密后,应基本上不增加空间开销。
      在目前条件下,数据库关系运算中的匹配字段,如表间连接码、索引字段等数据不宜加密。文献字段虽然是检索字段,但也应该允许加密,因为文献字段的检索处理采用了有别于关系数据库索引的正文索引技术。 4不影响合法用户的操作   加密系统影响数据操作响应的时间应尽量短,在现阶段,平均延迟时间不应超过1/10秒。
      此外,对数据库的合法用户来说,数据的录入、修改和检索操作应该是透明的,不需要考虑数据的加/脱密问题。 4。2不同层次实现数据库加密   可以考虑在三个层次实现对数据库数据的加密,这三个层次分别是OS、DBMS内核层和DBMS外层。   在OS层,无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,也无法进行合理的密钥管理和使用。
      所以,在OS层对数据库文件进行加密,对于大型数据库来说,目前还难以实现。   在DBMS内核层实现加密,是指数据在物理存取之前完成加/脱密工作,这种方式势必造成DBMS和加密器(硬件或软件)之间的接口需要DBMS开发商的支持。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能。
      其缺点是在服务器端进行加/脱密运算,加重了数据库服务器的负载。这种加密方式如图1所示。 图1 DBMS内核层加密关系图   比较实际的做法是将数据库加密系统做成DBMS的一个外层工具(如图2所示)。
      采用这种加密方式时,加/脱密运算可以放在客户端进行,其优点是不会加重数据库服务器的负载并可实现网上传输加密,缺点是加密功能会受一些限制。图中,“定义加密要求工具”模块的主要功能是定义如何对每个数据库表数据进行加密。在创建了一个数据库表后,通过这一工具对该表进行定义;“数据库应用系统”的功能是完成数据库定义和操作。
      数据库加密系统将根据加密要求自动完成对数据的加/脱密。 图2 DBMS外层加密关系图 4。3加密系统的有关问题   数据库加密系统首先要解决系统本身的安全性和可靠性问题,在这方面,可以采用以下几项安全措施: 4。3。1在用户进入系统时进行两级安全控制   这种控制可以采用多种方式,包括设置数据库用户名和口令,或者利用IC卡读写器/指纹识别器进行用户身份认证。
       4。3。2防止非法拷贝   对于纯软件系统,可以采用软指纹技术防止非法拷贝,当然,如果每台客户机上都安装加密卡等硬部件,安全性会更好。此外,还应该保留数据库原有的安全措施,如权限控制、备份/恢复和审计控制等。 4。3。3安全的数据抽取方式   提供两种卸出和装入数据库中加密数据的方式:其一是密文方式卸出,这种卸出方式不脱密,卸出的数据还是密文,在这种模式下,可直接使用DBMS提供的卸出/装入工具;其二是明文方式卸出,这种卸出方式需要脱密,卸出的数据是明文,在这种模式下,可利用系统专用工具先进行数据转换,再使用DBMS提供的卸出/装入工具完成。
       4。4系统结构   数据库加密系统分成两个功能独立的主要部件:一个是加密字典管理程序,另一个是数据库加/脱密引擎,体系结构如图3所示。 图3 数据库加密系统体系结构   数据库加密系统将用户对数据库信息具体的加密要求记载在加密字典中,加密字典是数据库加密系统的基础信息。
         加密字典管理程序,是管理加密字典的实用程序,是数据库管理员变更加密要求的工具。 加密字典管理程序通过数据库加/脱密引擎实现对数据库表的加密、脱密及数据转换等功能,此时,它作为一个特殊客户来使用数据库加/脱密引擎。   数据库加/脱密引擎是数据库加密系统的核心部件,负责在后台完成数据库信息的加/脱密处理,对应用开发人员和操作人员是透明的。
         按以上方式实现的数据库加密系统具有很多优点。首先,系统对数据库的最终用户完全透明,数据管理员可以指定需要加密的数据并根据需要进行明文/密文的转换工作;其次,系统完全独立于数据库应用系统,不需要改动数据库应用系统就能实现加密功能,同时采用了分组加密法和二级密管理,实现了“一次一密”;其三,系统在客户端进行数据加/脱密运算,不会影响数据库器的系统效率,数据加/脱密运算基本无延迟感觉。
         数据库加密系统能够有效地保证数据的安全,即使黑客窃取了关键数据,他仍然难以得到所需的信息,因为所有的数据都经过了加密。另外,数据库加密以后,可以设定不需要了解数据内容的系统管理员不能见到明文,大大提高了关键数据的安全性。 5 程序实现   数据库加密,本质是对数据库中各个表的记录进行加密,使得非授权者即使打开数据库,获得数据库中表的内容,也无法识别加了密的密文内容,从而达到保证数据库安全的目的。
      而数据库加密又不同于文本文件的加密,最显著的一点区别就是数据库中的表都是具在一定的数据结构,并且还有可能与其它表有关联,因此不能像普通文件那样,简单的明文输入,密文输出,而是还要考虑到表的结构。第二点是数据表中各个字段有可能是不同的数据类型,这就给数据记录的加密带来另一个难题。
         针对这种问题,我采用把数据表的字段作为加密的最小粒度,通过VB中的数据库连接控件连接到数据表中某字段的第一条记录,用加密函数执行加密,然后将密文写入替代原文记录,如此循环,对该字段的每条记录执行加密,达到加密该字段的目标。这样加密,没有破坏表的结构,没有破坏表与表之间的关联,只是将原文用密文代替,数据类型不改变。
      但是这样加密也存在明显的缺点,首先只能一个字段一个字段的加密,其次,由于数据表中各个字段的数据类型有可能不同,因此在用加密函数加密时会出现有些类型的数据记录不能加密的现象。   另外,对于数据库加密,由于数据库的结构是数据库很重要的因素,因此我设想还可以采用加密数据库中表结构的方法实现对数据库的加密,这样加密较之加密记录的方法,有一个明显的优点是完全可以不考虑表中各个字段的数据类型,只针对表的结构进行加密。
      但是这样的加密也存在不足之处。第一,由于表结构被加密,因此有可能出现加密后的表无法加载的现象。第二,由于表结构被破坏,表与表之间有可能无法正常关联。 参考文献: 1 刘怡。《数据库安全与数据库管理系统设计》 2高品均,陈荣良。《数据库加密技术综述》 引用于 "数据库安全的实现技术 王法能 周晓娟 (陕西西安外事学院信息工程学院 陕西西安 710077 陕西西安武警工程学院通信工程系 陕西西安 710086)"。
      

    飞***

    2006-04-21 10:48:18

  • 2006-04-21 10:45:13
  • 请看这个网页: 

    江***

    2006-04-21 10:45:13

  • 2006-04-21 10:43:48
  •   基本要求 
     
    ----1.字段加密 
    ----在目前条件下,加/脱密的粒度是每个记录的字段数据。如果以文件或列为单位进行加密,必然会形成密钥的反复使用,从而降低加密系统的可靠性或者因加脱密时间过长而无法使用。只有以记录的字段数据为单位进行加/脱密,才能适应数据库操作,同时进行有效的密钥管理并完成“一次一密”的密码操作。
       ----2.密钥动态管理 ----数据库客体之间隐含着复杂的逻辑关系,一个逻辑结构可能对应着多个数据库物理客体,所以数据库加密不仅密钥量大,而且组织和存储工作比较复杂,需要对密钥实现动态管理。 ----3.合理处理数据 ----这包括几方面的内容。
      首先要恰当地处理数据类型,否则 DBMS将会因加密后的数据不符合定义的数据类型而拒绝加载;其次,需要处理数据的存储问题,实现数据库加密后,应基本上不增加空间开销。在目前条件下,数据库关系运算中的匹配字段,如表间连接码、索引字段等数据不宜加密。
      文献字段虽然是检索字段,但也应该允许加密,因为文献字段的检索处理采用了有别于关系数据库索引的正文索引技术。 ----4.不影响合法用户的操作 ----加密系统影响数据操作响应时间应尽量短,在现阶段,平均延迟时间不应超过1/10秒。此外,对数据库的合法用户来说,数据的录入、修改和检索操作应该是透明的,不需要考虑数据的加/脱密问题。
       。

    拉***

    2006-04-21 10:43:48

类似问题

换一换
  • 数据库 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 175-194
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):