TangbaoD 2015-08-17 07:34 采纳率: 0%
浏览 1488

Android 平台下实现可搜索加密

各位大神 我想问一下,我现在有个作业,思路不是很清晰,还希望大神们给点指导。 作业要求是 开发一个 基于安卓的可搜索加密原型 差不多能做到对 短信,通讯录,和图片的可搜索加密,加密文件在本地就好。很简单的一个系统原型,最关键的是能实现对加密文件中的搜索。 求各位大神给点思路 脑子里一点感觉都没有
有以下几点难题:
1.如何对安卓平台下的短信,通讯录和图片进行操作。
2.加密文件放在本地后使用简单的数据结构如何实现加密文件的搜索。
我的思路举例(可能不准确):
安卓平台下文件1: 实验1.jpg 文件内容:可搜索加密1 //(文件名和文件内容都为明文)
安卓平台下文件2: 实验2.jpg 文件内容:可搜索加密2 //(文件名和文件内容都为明文)
安卓平台加密后1: Xxx.XXX 文件内容:B2$H42%71 //(加密后文件和文件内容都为密文)
安卓平台加密后2: yyy.yyy 文件内容:B2$H42%82 //(加密后文件和文件内容都为密文)

之后构造一个新的索引文件(表的格式):

文件名(明文) | 文件名 (密文) | 文件编号
实验1.jpg | Xxx.XXX | 1
实验2.jpg | yyy.yyy | 2
———————————————————

通过对搜索的名字进行加密后形成搜索的关键字,在索引文件中找到相对应的 文件名(明文)
实现搜索的完成。

这种思路可以么? 如果可以的话能提供一些技术上需要什么方法和思路么? 谢谢大家!

如果大家还有什么思路 欢迎讨论一下 谢谢!

  • 写回答

1条回答 默认 最新

  • 憧憬blog 2023-06-27 09:48
    关注

    您的思路基本上是正确的。下面是一些具体的建议。

    首先,对于短信和通讯录,您可以使用 Android 提供的 Content Provider 来访问它们的数据。Content Provider 是 Android 中的一个组件,它提供了一种标准的方式来访问和共享应用程序数据。您可以使用 Content Provider 来读取和写入短信和通讯录数据。

    对于图片,您可以使用 Android 提供的 MediaStore 来访问它们的数据。MediaStore 是 Android 中的一个组件,它提供了一种标准的方式来访问和共享媒体文件,例如图片、音频和视频。您可以使用 MediaStore 来读取和写入图片数据。

    关于加密和搜索,您可以使用一种称为可搜索加密(Searchable Encryption)的技术来实现。可搜索加密是一种特殊的加密技术,它允许用户在加密的数据集合中搜索特定的数据,而无需暴露数据的明文。

    具体地说,您可以在本地存储中保存一个加密的索引文件,该文件包含加密后的文件名和对应的文件编号。当用户进行搜索时,您可以将搜索关键字加密后与索引文件中的加密文件名进行匹配,找到对应的文件编号,然后再去读取对应的加密文件,解密后返回明文结果。

    关于加密算法的选择,可以使用常见的对称加密算法,例如 AES、DES 等,同时加密关键字时可以使用哈希算法进行处理。

    最后,建议在实现过程中注意安全问题,例如加密算法的安全性、加密密钥的管理、用户数据的保护等。

    评论

报告相同问题?

悬赏问题

  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100