使用加密技术保护Android

时间:2010-12-11 11:10:44

标签: android android-emulator

我正在考虑买一部安卓手机,但我对安全和隐私有点害怕,因为我掌握了联系人和日历中的大量私人信息。首先我认为可以通过尝试在没有谷歌的情况下进行同步来解决,但是在上一次我获得了android-apps中的安全漏洞的大量信息,我无法确定手机自身是否受到损害。我不是指犯罪应用程序,我的意思是犯罪网站或安装在后台的应用程序。

所以我的想法是加密所有条目[Update4](只有日历和联系人的描述和基于文本的字段将被加密,而不是时间)[/ Update4]。这意味着编写应用程序,我可以在其中为每条记录定义安全级别。我可以设置哪些条目应该解密,哪些不能解密。因此,如果我在www上冲浪,我可以加密全部,它将保存。即使我与谷歌同步,我也可以这样做(更新:所以谷歌只有加密数据)。之后我解密了记录。 当然这有时不方便,但我担心安全总是不方便。 [Update2]为了说清楚,数据不会被动态解密,所以如果数据被加密并且我打开日历应用程序我只会花时间和加密描述。[/ Update2]

[Update3]我不想做的是破解android系统,意思是根电话或安装特殊固件。此外,我不想投入数周进行开发,因此编程新的PIM应用程序不是一种选择。我只想从日历/联系人数据库中获取每条记录并加密关键数据。据我所知,有一个api来读写这些数据。 [/ UPDATE3]

所以我的问题是

  1. 这可以实现吗?

  2. 我可以使用模拟器进行测试,还是日历和     联系人应用程序不是模拟器的一部分?

  3. 由于 尼尔斯

    PS:阅读this日历没有公开API,因此无法使用: - (

4 个答案:

答案 0 :(得分:1)

  

这可以实现吗?

是否可以编写日历应用程序和联系人应用程序,以加密形式在本地存储其数据?是。

是否可以修改现有的日历和拨号应用以获得此功能?只能通过修改固件。

是否可以将加密的日历/联系人数据与Google同步?可能不是。

  

我可以使用模拟器测试它,还是日历和联系人应用程序不是模拟器的一部分?

您可以在模拟器上测试自己的独立应用程序吗?是。

您可以在模拟器上测试自己修改过的固件吗?是。

答案 1 :(得分:1)

从android模拟器开始。你可以访问android的所有开源部分,与手机不同,安装更改版本是相对可能的,因为你自动在模拟器上有root。另外它是免费的 - 或者我的意思是,它只会耗费你的时间。

如果您随后得出结论认为您的项目是可行的,请查看已知为root的手机并且具有可用的开源平台构建(即,cynagenmod或类似的东西运行)或者出售的手机开发者模型。

虽然您可以通过在SDK的范围内编写应用程序来完成您想要的任务,但您可能最终希望在某种程度上修改平台,主要是为了阻止它自动执行操作明文数据或至少卸载默认应用程序,您可能会意外地使用明文。因此,这样做的简便性可以指导您的购买决策,而不是封闭的供应商构建的功能。

答案 2 :(得分:0)

您似乎并不真正理解或了解Android安全和应用程序安装原则。

首先,没有应用程序在后台安装另一个应用程序。它只是不起作用。每个需要安装的应用程序只有在用户点击安装时才会安装。

可能存在恶意应用程序(即记录和发送您输入的数据或允许其访问服务器的其他数据的应用程序)毫无疑问,但是将向用户显示应用程序所需的权限列表,允许用户检查是否即使应用程序(逻辑上)不需要访问互联网,他也可以访问互联网。

现在回答您的问题,如果您可以修改预安装的日历应用程序。如果不从源头构建,你就不能做到这一点。你基本上必须获取日历项目并修改你需要的东西。您可能还需要修改系统的其他部分我不确定如果不自己检查它。如果有可能这样做,那么我们真的会有一些严重的问题。

由于Androids安全模型,如果该应用程序未明确允许,则应用程序将无法访问任何其他应用程序。

您不会因为编码甚至可能是自定义系统映像而沾沾自喜。

答案 3 :(得分:0)

https://android.googlesource.com/platform/packages/apps/Calendar

但是如果没有相当多的黑客攻击,不要期望用它做任何事情。大多数包含的应用程序不会构建为SDK应用程序(即,除了作为完整固件构建的一部分)而没有深远的变化 - 尽管我承认我没有尝试过这个特定的应用程序。