Software Engineering and Applications 软 件 工 程 与 应 用, 2015, 4(6), 129-135 Published Online December 2015 in Hans. http://www.hanspub.org/journal/sea http://dx.doi.org/10.12677/sea.2015.46017 Research on the Mechanism of Encrypted Domain Information Retrieval in the Cloud Tiankai Sun, Rong Bao, Yao Chen College of Electrical Engineering, Xuzhou Institute of Technology, Xuzhou Jiangsu Received: Dec. 8 th, 2015; accepted: Dec. 22 nd, 2015; published: Dec. 28 th, 2015 Copyright 2015 by authors and Hans Publishers Inc. This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/ Abstract Cloud storage platform, as the third party, its users core information is stored in the encrypted form. Compared to the plaintext, the ciphertext is lack of the structural features which increase the difficulty of the ciphertext retrieval. On the basis of the existing full-text index and database index, an efficient index mechanism of ciphertext is designed by using the Luene. A series of experimental analysis shows that the ciphertext index mechanism has good security and secrecy. Method will be of great practical value. Keywords Cipher Domain, Full Text Search, Inverted Index, Index of Cipher Text 云 端 信 息 密 文 域 内 检 索 机 制 的 研 究 孙 天 凯, 鲍 蓉, 陈 尧 徐 州 工 程 学 院, 信 电 工 程 学 院, 江 苏 徐 州 收 稿 日 期 :2015 年 12 月 8 日 ; 录 用 日 期 :2015 年 12 月 22 日 ; 发 布 日 期 :2015 年 12 月 28 日 摘 要 云 端 作 为 第 三 方 的 存 储 平 台, 用 户 的 核 心 信 息 以 密 文 形 式 存 储 信 息 的 密 文 状 态 与 明 文 相 比 缺 少 了 信 息 文 章 引 用 : 孙 天 凯, 鲍 蓉, 陈 尧. 云 端 信 息 密 文 域 内 检 索 机 制 的 研 究 [J]. 软 件 工 程 与 应 用, 2015, 4(6): 129-135. http://dx.doi.org/10.12677/sea.2015.46017
内 部 的 结 构 化 特 征, 增 加 了 密 文 检 索 的 难 度 在 现 有 全 文 索 引 和 数 据 库 索 引 的 基 础 上, 利 用 Luene 设 计 了 一 套 高 效 的 密 文 全 文 索 引 机 制 一 系 列 的 实 验 分 析 表 明, 该 密 文 索 引 机 制, 具 有 较 好 的 安 全 性 保 密 性 具 有 较 高 的 实 际 实 用 价 值 关 键 词 密 文 域, 全 文 检 索, 倒 排, 密 文 索 引 1. 引 言 随 着 云 计 算 技 术 的 快 速 发 展, 云 存 储 已 渗 透 到 了 生 活 的 各 个 领 域 第 三 方 公 共 存 储 平 台 的 快 速 应 用, 在 一 定 程 度 上 减 少 了 用 户 的 存 储 成 本 云 端 提 供 便 捷 存 储 的 同 时, 其 存 储 内 容 的 安 全 性 稳 定 性 以 及 核 心 信 息 的 隐 私 性 成 为 当 下 关 注 的 热 点 为 有 效 地 保 护 个 人 隐 私 数 据, 一 些 用 户 选 择 将 信 息 加 密 存 储 信 息 以 密 文 形 式 存 储, 增 加 了 其 存 储 的 安 全 性 与 此 同 时 增 加 了 其 检 索 的 难 度 当 前, 信 息 资 源 日 益 膨 胀, 如 何 从 大 量 的 数 据 中 快 速 准 确 的 查 找 用 户 所 需 要 的 信 息, 成 为 了 当 下 日 益 严 峻 的 课 题 [1] [2] Dan Boneh 等 人 提 出 了 基 于 关 键 词 的 公 钥 加 密 方 法, 首 先 使 用 私 钥, 对 存 储 的 明 文 关 键 词 通 过 公 钥 方 式 进 行 加 密, 然 后 用 得 到 的 密 文 信 息 检 索, 该 方 法 只 适 用 于 小 范 围 内 数 据 的 检 索 Park 等 人 也 提 出 了 一 种 安 全 的 索 引 机 制, 其 原 理 为 用 事 先 生 成 的 逆 Hash 序 列 作 为 密 钥, 在 Bloom Filter 中 保 存 加 密 后 的 索 引, 在 检 索 时, 先 利 用 逆 Hash 序 列 得 到 多 个 陷 门, 然 后 再 运 行 布 隆 检 测, 通 过 得 到 的 密 文 文 件 进 行 解 密, 以 此 得 到 用 户 所 需 要 的 明 文 文 件 Swaminathan 等 人 提 出 了 保 护 隐 私 的 排 序 搜 索 算 法 但 是 这 种 方 法 只 使 用 词 频, 不 适 合 多 个 关 键 字 查 询, 也 不 能 利 用 它 的 逆 文 档 频 率, 效 率 不 高 [3] [4] 密 文 全 文 检 索 技 术 能 够 在 信 息 以 密 文 形 式 存 储 后, 检 索 出 用 户 所 需 要 的 信 息, 提 高 了 密 文 检 索 的 效 率 在 现 有 全 文 索 引 和 数 据 库 索 引 的 基 础 上, 利 用 Luene 设 计 了 一 套 高 效 的 密 文 全 文 索 引 机 制 一 系 列 的 实 验 分 析 表 明, 该 密 文 索 引 机 制, 具 有 较 好 的 安 全 性 保 密 性 具 有 较 高 的 实 际 实 用 价 值 2. Lucene Lucene 是 一 个 著 名 的 开 源 全 文 搜 索 引 擎, 拥 有 灵 活 的 接 口 设 计, 其 为 面 向 对 象 设 计 的 典 范 [5]-[7] Lucene 的 工 作 过 程 描 述 如 下 : 文 章 1:David lives in Nanjing, I live in Nanjing too. 文 章 2:She once lived in Nanjing. 全 文 分 析 :Lucene 为 基 于 分 词 的 索 引 搜 索, 首 先 须 获 得 文 章 1 和 文 章 2 的 分 词, 分 词 的 获 取 采 取 如 下 方 法 : 先 要 找 出 文 章 中 的 所 有 单 词, 即 分 词 英 文 用 空 格 做 分 隔 符, 中 文 做 特 殊 字 符 处 理 文 章 中 in too 等 词 无 实 际 意 义, 通 常 过 滤 存 在 搜 索 HE 的 情 况, 希 望 把 he 搜 索 出 来 为 此, 需 要 将 所 有 的 词 转 化 成 大 写 或 小 写, 文 中 的 标 点 符 号 无 意 义, 可 以 忽 略 分 词 处 理 后 : 文 章 1 分 词 :[David] [live] [Nanjing] [I] [live] [Nanjing] 文 章 2 分 词 :[She] [live] [Nanjing] 分 词 处 理 后, 由 此 可 建 立 倒 排 索 引 关 系 : 文 章 号 文 章 中 所 有 分 词 把 关 系 倒 过 来, 变 成 : 分 词 拥 有 该 分 词 的 文 章 号 如 表 1 所 示 仅 仅 知 道 分 词 出 现 在 文 章 中 的 信 息 还 远 远 不 够, 还 需 要 知 道 分 词 出 现 的 次 数 和 所 在 位 置 一 般 有 2 130
Table 1. Inverted index table 表 1. 倒 排 索 引 表 分 词 Nanjing 文 章 号 l She 2 I 1 Live 1,2 Nanjing 2 David 1 种 位 置 : 一 种 是 字 符, 即 字 符 出 现 在 了 文 章 的 何 处 ; 第 二 种 为 该 分 词 是 文 中 第 几 个 分 词 将 这 些 数 据 ( 位 置 次 数 ) 加 上 出 现 频 率 和 出 现 位 置 信 息 存 入 Lucene 中 后, 索 引 结 构 信 息 表 变 为 如 表 2 3. Lucene 功 能 模 块 实 现 倒 排 索 引 密 文 搜 索 算 法 具 体 描 述 为 : (1) 索 引 加 密 设 计 加 密 搜 索 算 法 的 关 键 在 于 索 引 的 加 密, 为 达 到 搜 索 效 果, 需 预 先 指 明 关 键 字 的 形 式 客 户 端 在 获 得 关 键 字 之 后, 对 这 些 关 键 字 进 行 处 理 建 立 关 键 字 链 表, 存 储 每 个 关 键 字 包 含 的 文 件 和 文 件 标 识 将 关 键 字 链 表 组 成 的 索 引 调 整 为 倒 排 索 引 为 了 确 保 服 务 器 无 法 从 索 引 中 获 取 有 用 的 信 息, 倒 排 索 引 使 用 随 机 函 数 加 密, 并 将 每 个 上 链 表 的 头 节 点 存 储 在 字 典 Search Table 上, 加 密 后 的 索 引 存 储 在 数 组 SearchArray 的 随 机 位 置 上 [8] [9], 索 引 加 密 流 程 图, 如 图 1 所 示 (2) 文 件 搜 索 因 为 SearchArray 和 查 找 表 内 的 元 素 都 是 经 过 加 密 的, 所 以 服 务 器 无 法 从 SearchArray 和 查 找 表 内 获 取 相 关 的 明 文 信 息 用 户 请 求 搜 索 时, 客 服 端 对 关 键 字 进 行 加 密 得 到 搜 索 令 牌, 其 指 明 关 键 字 对 应 的 密 文 在 何 处 服 务 器 收 到 用 户 的 搜 索 请 求 时, 获 取 用 户 的 加 密 索 引 进 行 查 找, 查 找 得 到 对 应 的 文 件 标 识, 最 后 将 对 应 的 密 文 传 给 用 户 文 件 搜 索 过 程 如 图 2 所 示 (3) 文 件 动 态 添 加 删 除 为 了 方 便 云 存 储 用 户 能 够 随 时 随 地 的 添 加 和 删 除 云 端 的 文 件, 研 究 开 发 了 一 种 能 够 有 效 的 方 便 用 户 进 行 添 加 和 删 除 文 件 的 解 决 方 案 构 造 加 密 索 引 是 搜 索 的 核 心, 为 了 确 保 用 户 在 添 加 和 删 除 之 后 还 能 够 进 行 高 效 的 检 索 操 作, 必 须 时 时 更 新 的 索 引 添 加 文 件 时, 文 件 的 关 键 字 可 能 并 未 出 现 在 索 引 中, 只 需 在 关 键 字 链 表 上 进 行 简 单 的 更 新 就 可 以 了 删 除 时, 必 须 遍 历 关 键 字 链 表 上 的 结 点, 查 找 与 其 关 键 字 相 同 的 结 点 将 其 删 除, 删 除 之 后 还 要 保 证 其 顺 序, 其 操 作 相 对 较 复 杂 为 了 能 高 效 的 进 行 删 除 操 作, 将 每 个 文 件 中 的 关 键 字 存 储 在 文 件 链 表 中, 文 件 存 储 在 文 件 索 引 中, 并 将 其 加 密 后 存 储 在 数 组 上 并 且 将 链 表 中 的 头 结 点 存 储 在 字 典 中 在 删 除 文 件 时, 需 要 先 找 到 文 件 对 应 的 关 键 字 在 搜 索 数 组 中 的 位 置, 之 后 再 搜 索 数 组 中 进 行 更 新, 并 且 从 删 除 数 组 中 删 除 对 应 的 文 件 链 表 为 了 确 保 服 务 器 无 法 从 数 组 的 使 用 情 况 来 获 取 文 件 信 息, 所 以 将 数 组 中 空 的 单 元 用 随 机 的 字 符 来 填 充 为 了 在 添 加 文 件 时 快 速 的 找 到 空 闲 的 结 点, 所 以 需 要 记 录 数 组 中 空 闲 的 结 点 文 件 动 态 添 加 删 除 过 程 如 图 3 所 示 根 据 系 统 的 运 行 环 境, 系 统 的 索 引 文 件 的 生 成 是 在 客 户 端 进 行 的, 也 就 是 由 用 户 来 执 行 索 引 文 件 生 成, 并 对 文 档 进 行 加 密 处 理 生 成 密 文 文 档, 再 一 起 提 交 给 服 务 器 索 引 文 件 构 建 的 流 程 图 如 图 4 所 示 检 索 流 程 图 如 图 5 所 示 在 密 文 全 文 检 索 模 块 中, 第 一 次 检 索 结 果 只 是 密 文 文 档 的 名 称 集 合, 如 图 6 所 示 通 过 对 密 文 文 档 名 称 进 行 解 密, 获 取 明 文 文 档 名 称, 选 择 需 要 的 明 文 文 档, 发 送 密 文 文 档 名 称 下 载 请 求, 下 载 密 文 文 档 再 进 行 解 密 获 取 相 应 的 明 文 文 档 131
Table 2. The index structure information table 表 2. 索 引 结 构 信 息 表 分 词 文 章 号 出 现 频 率 出 现 位 置 Nanjing 1 [2] 3, 6 he 2 [1] 1 I 1 [1] 4 live 1 [1] 2, 5 Nanjing 2 [1] 3 David 1 [1] 1 Figure 1. The index encryption process 图 1. 索 引 加 密 过 程 4. 仿 真 测 试 Figure 2. The document retrieval process 图 2. 文 件 检 索 过 程 以 JAVA 为 编 程 语 言, 以 Eclipse 作 为 开 发 平 台, 辅 助 使 用 lucene4.0 使 用 desapi 对 数 据 加 解 密 操 作, 其 中 文 件 加 密 采 用 AES 加 密 算 法 [10] (Advanced Encryption Standard) 4.1. 密 文 索 引 构 建 时 间 测 试 结 果 和 分 析 为 了 排 除 其 它 因 素 的 影 响, 将 测 试 数 据 的 文 件 数 量 和 文 件 大 小 定 义 为 相 同 数 量 通 过 密 文 和 明 文 文 132
Figure 3. The files dynamically adding, deleting 图 3. 文 件 动 态 添 加 删 除 过 程 图 Figure 4. The flow chart of index file construction 图 4. 索 引 文 件 构 建 的 流 程 图 Figure 5. The search flow chart 图 5. 检 索 流 程 图 133
件 构 建 时 间 的 对 比 来 体 现 测 试 结 果, 结 果 如 图 7 所 示 通 过 实 验 数 据 可 知, 该 系 统 可 以 高 效 的 构 建 索 引 文 件 但 随 着 文 件 数 量 的 增 加 效 率 会 相 对 明 文 文 件 略 有 降 低 4.2. 密 文 检 索 性 能 测 试 结 果 和 分 析 为 了 排 除 其 它 因 素 的 影 响, 将 测 试 数 据 的 检 索 关 键 词 长 度 都 设 为 2 通 过 密 文 和 明 文 文 件 检 索 时 间 的 对 比 来 体 现 测 试 结 果, 结 果 如 图 8 所 示 由 实 验 数 据 可 知 检 索 时 间 与 包 含 关 键 的 文 件 数 目 成 正 比, 且 与 明 文 检 索 的 时 间 相 差 不 大 Figure 6. Retrieval results 图 6. 检 索 结 果 图 Figure 7. The comparison of index file building time 图 7. 索 引 文 件 构 建 时 间 对 比 Figure 8. The comparison of retrieval time 图 8. 检 索 时 间 对 比 134
5. 结 论 数 据 信 息 以 密 文 形 式 存 储 最 大 限 度 地 保 证 了 系 统 和 数 据 信 息 的 安 全 性, 于 此 同 时, 快 速 而 准 确 的 找 出 用 户 所 需 要 的 信 息 也 变 的 异 常 困 难 通 过 对 密 文 索 引 机 制 的 分 析, 在 对 现 有 的 国 内 外 的 全 文 检 索 技 术 进 行 分 析 比 较 的 基 础 上, 以 全 文 索 引 和 数 据 库 密 文 索 引 机 制 为 基 础, 利 用 Luene 设 计 了 一 套 高 效 安 全 的 密 文 全 文 索 引 机 制, 包 括 密 文 索 引 的 构 建, 维 护 以 及 安 全 索 引 一 系 列 的 实 验 分 析 表 明, 该 密 文 索 引 机 制, 具 有 较 好 的 安 全 性 保 密 性 具 有 较 高 的 实 际 实 用 价 值 基 金 项 目 国 家 自 然 基 金 (61370145); 江 苏 省 产 学 研 联 合 创 新 项 目 (BY2013020) ; 徐 州 市 科 技 计 划 项 目 (XM13B126) 徐 州 工 程 学 院 青 年 基 金 (XKY2015312) 参 考 文 献 (References) [1] 王 少 辉, 韩 志 杰, 陈 丹 伟, 等. 云 环 境 下 安 全 密 文 区 间 检 索 方 案 的 新 设 计 [J]. 通 信 学 报, 2015, 36(2): 29-37. [2] 郭 文 杰, 张 应 辉, 郑 东. 云 存 储 中 支 持 词 频 和 用 户 喜 好 的 密 文 模 糊 检 索 [J]. 深 圳 大 学 学 报 理 工 版, 2015, 32(5): 532-537. [3] 钱 萍, 吴 蒙, 刘 镇. 面 向 云 计 算 的 同 态 加 密 隐 私 保 护 方 法 [J]. 小 型 微 型 计 算 机 系 统, 2015, 36(4): 840-844. [4] 刘 爱 分. 云 环 境 下 高 效 动 态 的 密 文 搜 索 方 法 [D]: [ 硕 士 学 位 论 文 ]. 沈 阳 : 东 北 大 学, 2013. [5] 翟 永 恒. 基 于 Lucene 的 全 文 搜 索 引 擎 的 应 用 研 究 [D]: [ 硕 士 学 位 论 文 ]. 贵 阳 : 贵 州 大 学, 2009. [6] 蒋 毅 娜. Lucene 全 文 检 索 在 网 络 教 学 平 台 中 的 应 用 研 究 [D]: [ 硕 士 学 位 论 文 ]. 北 京 : 北 京 邮 电 大 学, 2009. [7] 励 子 闰. 基 于 Lucene 搜 索 引 擎 的 中 文 全 文 信 息 检 索 技 术 的 研 究 [D]: [ 硕 士 学 位 论 文 ]. 上 海 : 华 东 师 范 大 学, 2009. [8] 郭 利 刚. 密 文 全 文 检 索 系 统 的 研 究 与 实 现 [D]: [ 硕 士 学 位 论 文 ]. 武 汉 : 武 汉 理 工 大 学, 2011-04 [9] 冯 朝 胜, 秦 志 光, 袁 丁. 云 数 据 安 全 存 储 技 术 [J]. 计 算 机 学 报, 2015, 38(1): 150-163. [10] 张 国 勇. 高 级 加 密 标 准 (AES) 算 法 研 究 及 实 现 [J]. 湖 北 师 范 学 院 学 报 ( 自 然 科 学 版 ), 2006, 26(2): 35-37. 135