logo资料库

数据库密文检索技术设计与实现.pdf

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
云 南 大 学 学 报 ( 自 然 科 学 版 ) ,2010,32 ( 6) : 646 ~ 651 Journal of Yunnan University CN 53 - 1045 / N ISSN 0258 - 7971 数据库密文检索技术的设计与实现 * 张 璇1,彭 朋2,黄勤龙3 ( 1. 云南大学 软件学院,云南 昆明 ; 复旦大学 软件学院,上海 650091 2. 北京邮电大学 计算机科学与技术学院,北京 3. ) 100876 ; 201620 摘要: 在归纳现有的数据库密文检索技术的基础上,利用高效的对称密码技术和 技术提出了一种数 据库加密以及密文检索方案,并进行了实现 经过实验证明,该方案可以很好的保证数据库的机密性,而且能够 在不对数据库解密的基础之上实现高效的密文数据检索,另外,基于已经实现的密文检索技术,还实现了对密 文数据库的其他操作,包括插入数据 Hash . 更新数据以及删除数据 、 . 关键词: 数据库加密; 密文数据库检索; 对称密码算法; 中图分类号: 文章编号: 文献标识码: 算法 Hash TP 309 A 0258 - 7971 ( ) 2010 06 - 0646 - 06 . 随着科学技术的发展,信息已渗透到社会的各 个角落,起着越来越重要的作用 在这个信息化的 时代,信息存储的安全问题 敏感数据的防窃取和 、 数据库系统作 防篡改问题越来越引起人们的重视 为保存敏感数据的核心系统,其安全性将是信息产 业的重中之重 . . 1 . 那么,针对存储在数据库中的数据,该如何提 供更为有效的保护手段呢? 加密仍然是保护敏感 ],因为,如果数据库中的数 数据最为有效的手段[ 据是以密文形式存储的,即便攻击者成功入侵了系 统并且获取了数据,所得到的也只是密文数据,只 要加密强度足够,并且解密密钥保护得当,攻击者 显然,这种将数据 仍然无法获取他所需要的信息 加密后再存储到数据库中的方法确实是一种非常 有效的保护数据库数据的手段,不过,传统的数据 库检索是基于明文数据进行的操作,对于密文数据 来说,无法直接使用,要解决这个问题,最为直接的 办法是在检索之前对数据库进行解密操作,然后对 解密后的明文数据库再进行检索,但是这种方法存 在 数据库中的数据表之间是 相互关联的,如果要检索数据,必须将整个数据库 解密,而如果数据库数据量非常大,每一次检索前 都需要解密的话,检索效率是非常难于让人接受 个致命的问题: ① 3 ② 的,而且,如此巨大的开销在实际操作中是不可行 的; 检索过程中整个数据库是以明文形式存在 的,这又给攻击者以可乘之机以获取数据库中的有 用信息,因为,一旦一个数据库入侵者入侵了数据 库,他不仅能观察到数据库中所有加密的数据,而 且在一段时间内他可以控制整个数据库系统,在控 制期间,入侵者可以监测到大量用户发送过来的检 索信息以及数据库对这些检索命令所进行的相应 处理; 只要对数据库发出检索的命令,解密密钥 就会以某种形式运用到数据库进行解密操作,这也 因 很容易泄漏解密密钥而导致数据库数据的暴露 此,我们需要在保证安全性和高效率的基础上对数 据库进行加密,而在检索前不对数据库进行解密, 而是直接对密文数据库进行检索 ③ . . 本文在归纳了已有的数据库加密以及数据库密 文检索研究的基础之上,提出一种高效的基于密文 数据库的检索技术并加以实现,经过实验证明,这个 并且,基于 方法可以非有效地保护数据库中的数据 . 这个检索技术我们还实现了对于数据库的其他相关 操作,包括插入数据 更新数据以及删除数据 、 . 1 相关研究 1. 1 数据库加密 数据库的保密问题不仅包括在 * 收稿日期: 2009 - 12 - 21 基金项目: 云南省教育厅青年教师科学研究基金项目( 6Y0041D ) ; 云南大学理( 工) 科校级科研项目( 2007Q025C ) ; 云南大学软件学 院信息安全学科建设基金项目( ) 作者简介: 张 璇( 1978 - 2010KS06 ) ,女,江苏人,讲师,主要从事数据隐私保护 . 安全电子支付方面的研究 、 .
第 6 期 张 璇等: 数据库密文检索技术的设计与实现 746 传输过程中采用加密保护和控制非法访问,还包括 对存储的敏感数据进行加密保护,使得即使数据不 幸泄露或者丢失,也难以造成泄密 同时,实现数据 . 库加密以后,各用户( 或用户组) 的数据由用户用自 己的密钥加密,数据库管理员获得的信息无法进行 正常脱密,从而保证了用户信息的安全[ 另外,通 过加密,数据库的备份内容成为密文,从而能减少因 由此可见,数据 备份介质失窃或丢失而造成的损失 . 库加密对于数据库安全管理,是不可或缺的 目前数 . ]: 据库加密主要存在以下 个方面的问题[ ] 2 . 3 2 . ( 1 ) 由于数据库系统要执行大量的检索操作, 解密算法既要保证系统的安全 这就要求数据库加 、 性,又要保证对密文数据检索的方便和快速 但是 解密算法,及在其之上的 目前已提出的数据库加 、 删除方法还都不能同时满足系统 检索 、 的安全性和易用性要求 而寻找一个在不影响用户 正常使用前提下能够快速对数据进行加解密的方 法也成为数据库加密体系研究中迫切需要解决的 问题之一 添加 、 更新 、 . . . . ( 2 “ ” ” 为基础的 可信第三方 可信第三方 ) 目前针对数据库加密体系中密钥管理的 这 “ 的密钥管理方法与密码学中 应用和研究大多是以 种基于 用户本人以外的任何人都不可信的理论相悖 1. 2 密文数据的检索 数据库中存储密文数据 后,如何进行高效检索成为一个重要的问题 检索 语句一般不可以直接运用到密文数据库的检索过 程,传统的方法是首先对加密数据进行解密,然后 对解密数据进行检索,正如前面所述,这种方法是 因此,寻找一种既能保证数 不安全也是不高效的 据库安全性又能保证使用方便性( 如: 检索 插入 、 、 删除) 的数据库加密方法一直是数据库加密 更新 、 近年来,不断有学者研究并提出 的主要研究方向 基于密文数据库的索引机制和检索策略[ ]: . . . 2 ( 1 ) 密文数据索引机制: 对密文数据库建立索 现有密 地 、 引,主要是为了实现对密文数据的高效查询 . 文数据索引机制主要有对密文数据的直接索引 址加密的密文索引以及动态安全的密文索引[ ] 2 . 对密文数据的直接索引方法的主要缺点是密 文索引树中的地址数据是以明文方式存放的,攻击 者可将各结点的密文数据按其对应的明文进行排 序,并利用部分明 密文对应的统计规律获得可用 、 于破译的关键信息[ 2 , ] 4 . 地址加密的密文索引方法可以解决直接密文 索引的缺陷,但如果攻击者能同时动态跟踪数据库 的访问过程,则有可能找出密文与密文地址的对应 关系,得到可乘之机[ , ] 5 2 . 动态安全的密文索引方法虽然可以有效地对 抗攻击者对密文数据和索引的对应关系进行动态 追踪分析,但实现起来却非常复杂,需要采用双地 址索引,每次访问索引之后,都访问 个密文数据, 其中一个密文数据主要是为了产生混淆效果,敌手 通过动态分析检索过程和猜测,能完全知道密文数 据的排序关系的概率大大降低,从而使密文索引的 安全性有所提高[ , ] 6 2 2 ( ) 密文数据查询策略: 目前密文数据库查询 种策略: 一种是不用解密而直接操作密文 2 主要有 数据,另外一种是分步查询[ ] 2 2 . . . 7 - 10 直接操作密文数据的方法包括数据库的秘密 其中: 秘密同态技 同态技术和数据库的序加密等 ]对加密算法提出了一定的约束条件,使满 术[ 而数 足密文同态的加密算法的应用不具有普遍性 . ],序 据库的序加密方法主要采用序列密码算法[ 5 列密码算法采用异或的运算方法,密钥序列不能重 复,如果对不同记录采取不同的密钥种子,则密钥 管理难度太大,如果对不同记录采取相同的密钥种 子,则会存在不少相同或相近的密文字段值,容易 受到统计攻击和已知明文攻击 11 - 12 分步查询[ ]一般需要进行查询分解,先对 密文数据进行范围查询,缩小解密范围,快速解密 后再执行精确查询,查询策略的核心难点在于需要 尽量提高对密文数据库查询的准确率,缩小返回客 户端的密文数据的范围 . . 目前,密文数据库查询技术面临的主要困难是 算法运行效率不高,过于复杂而不满足易用性,大 多不能支持模糊匹配查询,在处理多表查询时,会 产生大量的伪连接,解密工作量大大增加 在处理 多条件查询时,由于大量中间结果的产生,导致系 统运行效率下降[ ] 2 . 在本文中,我们主要解决如何加密数据库并且 基于密文数据库进行高效且安全的数据检索,在我 们的解决方案中所有的敏感数据都以密文的形式 存储在数据库中并且基于密文来进行检索处理 我 们期望达到的目标是,不仅要保证数据库的安全 性,而且要保证数据库检索的速度能够达到一般应 用的要求,满足易用性 个目标,我们采 技术,因为对称密码技术 用对称密码技术和 为达到这 2 . . . Hash
846 云南大学学报( 自然科学版) 第 32 卷 能较好地适应数据库的操作 解密速度快,算法安全,而且加密得到的密 不仅加 、 文是紧凑的,降低了数据库服务器的开销,采用 技术是为了充分利用其不可逆性,保护传输 Hash 到数据库的检索数据,提高安全性 . 2 数据库加密及密文数据库检索方案 2. 1 设计思想 基于对现有的数据库加密以及密 文检索技术的分析研究,我们参考文献[ ]的方 案提出了一个支持数据库密文检索的方案,本方案 的主要设计思想如下: 13 ( 1 前将经过加密处理( 见图 即每次加 ) 数据库加密 明文数据在输入数据库之 ) ,加密的粒度为分量, 解密的粒度为每条记录的分量数据,这 、 1 有 M T ( 名为 T 记录中 后得到 . 假设数据表为 ,表 条记录,其中一个属性的属性 的第 条 ) 被加密 ) 表示数据表 ( , j T ( j N ) , T T , j i T i 个属性和 ) ( ( ( C ) 密文由 T i i i i < = M ) 字段的值,即明文分量 ) , j ) 存入数据库( 见图 2 部分组成,第 . 部分为对分量 1 部分为基于第 1 ( 2 , ) 进行对称加密的密文,第 j ( 2 T 部分密文生成的校验码,用于检索 2 i . ( 3 ) 为保证相同的数据项每次加密的结果都 不相同,在加密时,在数据项的后面添加伪随机数 . ) 在检索时,不解密数据库中的密文,通过 翻译用户提交的明文检索语句与数据库密文中的 校验码进行比较,从而获得检索结果( 见图 4 ( ) 3 . 图 1 数据库加密 Fig. 1 Database encryption 图 2 加密粒度 Fig. 2 Encryption at element level 图 3 密文数据库检索 Fig. 3 Query over encrypted database
第 6 期 张 璇等: 数据库密文检索技术的设计与实现 946 . 密 2. 2 方案实现 整套方案包括了数据库加密 、 文数据库检索和检索结果解密,其中加密算法以对 称密码算法中的 为 例 2. 2. 1 数据库加密 为例, 算法以 Hash SHA AES AES ) 元加密算法 以 1 位( 也可以是 加密算法的明文分 位) 作为一个 组 分组,对于每一个分组执行以下步骤进行加密,在 这里我们成为元加密,对明文数据项的加密是通过 元加密算法来实现的 位或者 256 128 192 ( . 一样的时候,密文数据不一样,增加破解的难度) , 得到一个 步骤 128 : 用密钥 加密,得到 位的分组 ; B 对 进行 B AES K1 ) ; 4 5 B ( C1 = AESK1 : 通过 步骤 ( ) ; L 步骤 加密,得到密文 步骤 : 用 K2 6 7 密文 SHA AES C2. SHA 算法求得 L 的哈希值 K2 = 对步骤一中得到的密文 进行 C1 C1 : 最后得到密文数据项 C2 = AESK2 ( ) ; SC = R + C1 + 为 P 128 位的明文, 为密钥, C 为 128 K1 算法流程图如图 所示 . 5 K1 ( 进行 P 对明文 ) ; P 算法求得明文 加密, AES 的哈希值 P ( A 2. 2. 2 密文数据库检索 假设检索的条件为 = A 为用户设置的检索项) ,检索语句为 “select ( ) 的 ,表示验证成功,得到检索 A. ,表示验证失败,不存在符合检索条 ,下列过程验证 Flag = 1 = A” , j C T ( ) i i ( ) . 假定: 位的密文 步骤 得到密文 步骤 K2 = SHA 步骤 到密文 : 用密钥 1 SHA C1 = AESK1 : 通过 2 ( ) ; P : 用 K2 加密步骤 ( ) ; 中得到的密文 ,得 C1 1 C2 = AESK2 C1 步骤 : 最后得到加密的结果是 位的密文 3 4 128 + AESSHA ( ) P ( AESK1 ( ) P 所示 . 4 C = C1 + C2 = AESK1 ( ) ) P . 算法流程图如图 ( 2 假定: 为密钥 步骤 , j ( i . 1 1 组得到 N 位) ,即 128 个 ( T 128 , j i K1 位为 不足 成; ) 对数据库明文分量的加密 , j ) 为明文分量, C T ( i ) 为密文分量, : 计算明文分量 i ( T , j ) 的长度,按 位分组,余下的数据为 位分组和 个 ) 为 N 128 128 ( L 构 L L 步骤 : 对于 2 个 N 法进行加密得到结果 位的分组,用元加密算 128 ; 步骤 进行填充,增加一串 伪随机数( 增加的随机数能够保证当明文数据是 : 对余下的数据 3 L R . i ( 1 A … Flag = 0 ) : 将 * from T where T 明文是否为 结果; 件的记录 步骤 [ , A N : 将 步骤 2 C [ ]; , ], … M C : 设 步骤 : 如果 步骤 4 分, [ [ ]和 C1 s s 运算得到其哈希值 C2 ]( 包括不足 , j 3 ( i [ 1 [ s 步骤 ],得到 步骤 5 : 用 K [ ] CK s : 比较 = AESK 6 CK ,返回步骤 C1 AES ( [ ]和 s , Flag = 1 C2 4 等, 步骤 s + + ; 7 ; 步骤 算法的流程图如图 : 返回 Flag 7 所示 6 划分为 个 位的分组 128 N 位的数据块) ; [ A 1 ], 128 ) 划分为 个 M 256 位的分组 C ; int s = 1 ,把 s < = M C ]用 [ ],将 s A ( K = SHA 作 为 2 [ ]划分为 s 个部 算法进行哈希 ; SHA [ ]) A s 算 法 的 密 钥 加 密 ]) [ s ]是否相等,如果相 [ s ; 否则, 进入 C1 ; Flag = 0 图 4 元加密算法 Fig. 4 Basic encryption algorithm
056 云南大学学报( 自然科学版) 第 32 卷 2. 2. 3 检索结果解密 ( 1 ) 元解密算法 对于 部分 256 , 先将其分为前后 位,由元加密算法我们可知, 果,所以只需要用 到明文 位的密文分组 ,每个部分为 是 解密算法将 128 加密的结 解密即可得 AES AES C1 C1 C1 C2 2 , C P. ) 对数据库密文分量的解密 ( : 计 算 密 文 数 据 项 ( 2 步骤 ) 的 长 度 为 , j i C ; Length 步骤 分组, 2 : 计算得到 ; M = Length /128 步骤 : 对前 进行解密,得到前 3 M - 1 M - 1 ( C ) 有 , j i M 个完整的 位 256 个分组用元解密算法分别 个分组解密的结果 ; R1 1 4 5 步骤 : 对最后一个分组用元解密算法解密后 去除伪随机数的部分,得到明文 步骤 : 得到明文数据项 ; R2 R1 + R2. 2. 2. 4 基于密文数据库的其他操作 本文前面实 现的数据库加密以及密文数据库检索技术可以很 容易的扩展为其他数据库操作,包括数据库的插 更新和删除,并且所有操作都是基于密文数据 入 、 库的 . 数据插入: 用户在输入明文数据后,系统自动 将明文数据项进行加密,然后再插入数据库 数据更新: 分解为数据检索和数据插入 . 2 个步 骤 . 数据删除: 首先利用数据库检索技术检索出需 要删除的数据记录,然后再将其删除 . 3 方案实现 》 《 VBR . VBR 课程的教学软件 本方案设计完成后,在 安全电子支付与电子 货币 虚拟网上银行系统中 进行了实现 虚拟网上银行系统是模拟真实 世界中的网上银行系统,系统中的敏感数据采用本 方案实现了加密保护,整个系统数据库中的敏感数 据以密文形式保存( 图 查询密码和交 、 易密码都是采用本文的方案加密保护的数据 ) 使 用本文的数据库加密以及密文检索方法, 虚 拟网上银行系统中的敏感数据得到了保护,而且本 系统经过实际使用证明,系统的执行效率并不会因 为实施加密操作以及密文检索而降低,完全不影响 整个系统的运行 中的账号 VBR 7 . . 图 5 加密明文分量 Fig. 5 Encrypt data element T ( , ) j i 图 6 密文数据库检索 Fig. 6 Query over encrypted database
第 6 期 张 璇等: 数据库密文检索技术的设计与实现 156 图 7 加密保存的数据 Fig. 7 Encrypted data in database 4 结束语 . 总的来说,密文数据库的检索是一项复杂的工 作,高效 安全的密文数据库检索更是数据库安全 、 在本文中,我们为了切实提高系 技术研究的热点 统的可用性,保证数据库的安全性,精心研究并实 现了高效且安全的密文数据库检索技术 在今后的 工作中我们将进一步研究检索算法,以使之能适应 诸如模糊查询 复合条件查询等各种复 、 杂查询模式的密文数据库检索机制 多表查询 、 . . 参考文献: [ ] 1 DAVIDA GI , WELLS D L , cryption system with subkeys ( ) : 2 312-328. KAM J B. A database en- , [ ] J 6 . ACM TODS , 1981 [ ] 朱勤,骆轶姝,乐嘉锦 2 . 数据库加密与密文数据查询 ] 技术综述[ J . [ ] 赵晓峰 叶震 3 . 东华大学学报, 543-548. 几种数据库加密方法的研究与比较 , 33 2007 ) : 4 ( ] [ J . 计算机技术与发展, [ ] 崔国华,洪帆,付小青,等 4 . ( , 17 ) : 2 219-222. 2007 数据库系统中一种更安全 ) : ( , 28 2000 7 ] 的加密机制[ J . 华中理工大学学报, [ ] 7 [ ] 8 [ ] 马勺布,胡磊,徐德启 6 . 一种动态安全的密文数据库 ] 检索方法[ J . , ADLEMAN L 计算机工程, , DERTOUZOS M L. On data RIVEST R L 132-133. , 31 2005 ) : 6 ( banks and privacy homomorphism / / In DeMillo R [ ] C D. Foundations of Secure Computations. Academic , 1978 : Press 169-177. FERRER D J. A new privacy and homomorphism appli- . Information Processing Letters 1996 60 , , [ ] J cations ( ) : 5 277-282. [ ] 杨勇,方勇,周安民 9 . 秘密同态技术研究及其算法实 ] 现[ J . 计算机工程, , 31 ( 2 ) : 2005 157-159. [ ] 王晓峰,王尚平 秘密同态技术在数据库安全中的 10 . 计 算 机 工 程 与 应 用, , 39 ( 14 ) : 194- 2003 ] 应用[ J . 196. [ ] 11 [ ] 12 [ ] 13 HACIGUMUS H , LYER B , LI C , et al. Executing SQL over encrypted data in the database - services - provid- , , / / ACM SIGMOD. Madison Wisconsin er Model [ ] C : USA. 2002 216-227. , LYER B HACIGUMUS H , MEHROTRA S. Query opti- [ ] C mization in encrypted database systems / / DASFFA : 2005 Beijing Database Systems for Advanced Applications. , China. 2005 , ZHONG S , WRIGHT R N. Privacy - 43-55. : YANG Zhi-qian [ ] 5 29-31. SONG D X , WAGNER D , PERRIG A. Practical tech- preserving queries on encrypted data pean Symposium on Research in Computer Security [ ] C / /11th Euro- , niques for searches on encrypted data / / IEEE Symposium on Security and Privacy. Berkeley Califor- [ C ] , : 2006 , USA , 2000 : nia 44-55. 479-495. ( 下转第 页) 656
656 云南大学学报( 自然科学版) 第 32 卷 Pulse coupled neural network model parameter estimation and image segmentation HU Fang , ZHOU Dong-ming ( Department of Communication Engineering , NIE Ren-can , Yunnan University , ZHAO Dong-feng , Kunming 650091 , China ) : Abstract In this paper , the wavelet analysis was applied to multi - layer decomposition of image. Then , it was linked to the right as a model parameter estimates of W with decomposition of the low - frequency coefficients of the reconstructed image. It was estimated an optimal threshold value of the threshold θ. The final maximum cor- relation criterion was used to determine network iteration times N. A successful automatic image segmentation was obtained. Experimental results showed that the method automatically estimated model parameters based on PCNN , segmentation images retained a good profile and more details. ; ; ; pulse coupled neural network parameter estimation wavelet analysis maximum correlation cri- image to avoid over - smoothing effect : Key words terion * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ( 上接第 页) 651 Design and implementation of query over encrypted data ( 1. School of Software ZHANG Xuan1, , Yunnan University , , Shanghai 201620 Fudan University PENG Peng2, HUANG Qin-long3 , , China Kunming 650091 , ; China 2. School of Software , Beijing University of Posts and Telecommunications ; 3. School of Computer Science and Technology , Beijing 100876 , China ) : Abstract In this paper , we first study some methods for queries over encrypted data , and then we present and implement a database encryption and query solution which is based on symmetric encryption and Hash tech- nology. Our experiments demonstrate that our solution can guarantee the security of the database and at the same time provide efficient query. In addition , we have implemented data insertion , updating and deletion based on our query technology. : Key words database encryption ; query over encrypted data ; symmetric encryption algorithm ; Hash algorithm
分享到:
收藏