项目回顾之二:PhoneProtector基于安卓平台的手机隐私保护系统

开发 项目管理
首先,我想简单介绍一下这个项目的背景。项目名字有点长,叫做“PhoneProtector: 基于Android平台的手机隐私保护系统”。不理解的人可能会觉得是不是博主有点脑残,直接叫PhoneProtector不就好了。嗯,其实我也觉得取这么长的名字有点多余,但是这个项目为2012年全国大学生信息安全竞赛的参赛项目,名字至少要体现一点深度吧。

继上一篇博文《项目回顾之一:PlanBetter时间管理软件(基于Android平台)》之后,开始着手这篇博文的编写。

说在前面的

首先,我想简单介绍一下这个项目的背景。项目名字有点长,叫做“PhoneProtector: 基于Android平台的手机隐私保护系统”。不理解的人可能会觉得是不是博主有点脑残,直接叫PhoneProtector不就好了。嗯,其实我也觉得取这么长的名字有点多余,但是这个项目为2012年全国大学生信息安全竞赛的参赛项目,名字至少要体现一点深度吧。除了完成一个项目以外,还需要写一篇竞赛作品报告。这个竞赛作品报告有点类似于论文,我们写了正好100页,洋洋洒洒2万多字的文档。先前都以为写好文档才是王道(当然作品也做得很认真,不含糊),连导师看完报告后觉得进决赛肯定没问题,可惜,这个项目出乎我们的意料没有进入决赛。后来,组长说可能是这个项目的名字不够霸气,如果把前面的"PhoneProtector"去掉可能会更有影响力,当然这只是玩笑话罢了。背景就介绍这么多。 

项目需求

这个作品是基于这么一种需求而制定的。我们在日常生活中可能会经常碰到这样的情况:在上班时,发现手机落在家中;下班回家后,发现手机落在了工作场所;在上课,手机落在寝室中等等,甚至更严重的是,手机丢失了。当遇到这些情况时,手机不在自己身边,除了无法使用之外,更重要的一点是担心手机隐私被泄漏。虽然Android手机平台自带有这样的保护措施,如屏幕手势加锁或者密码加锁,但是大多数用户不会考虑用这种功能,因为它在一定程度上阻碍了用户对手机的正常使用。因此,一旦手机远离了自己,甚至丢失或被盗之后,想再采取安全措施就已经太迟了。而且当手机丢失以后,最重要的不是手机本身,而是手机内的隐私信息,包括联系人信息,短信内容以及贮存在SD卡上的数据信息,一旦这些信息被别有用心的人利用,后果将不堪设想。简单来说,就是对手机丢失后的一种补救措施。

市场调研

事实上,在我们构思从这个需求入手的时候,市场上已经有解决这类需求的应用出现了。例如著名的安全公司诺顿就出了一款Norton Security for android,它里边提供了一个功能就可以解决这个问题,通过设备远程锁定或数据清除。诺顿官方是这样介绍这个功能的:

If your phone is lost or stolen, you can use another phone or program to send text message to your phone.Each text message should consist of an action word(lock or wipe) and a code of your choice. (For example, "wipe code123")

也就是说,就是在安装这款软件的时候,你要设置一个用来“加锁或格式化”设备的密码,如果你的手机丢了,那么用别人的手机发一条短信过去给手机加锁或者格式化,短信格式为“lock/wipe 密码”。但是这款软件有很多缺陷,比如别人捡到你的手机后就把这款应用卸载了,那你发短信就不起作用了;假如别人把你的卡换了怎么办?假如你加锁或格式化手机后,又在某一天拾到了你的手机,但是密码你又忘记了,你该怎么办?重刷系统?可能你会觉得本来丢手机的概率就很小了,发生这类情况的概率又是更小了,但是我们不排除这类情况出现的可能性。受到Murphy's Law的启发,既然有这类情况发生的可能性,我们就有必要提出解决方案。当然,有的手机厂商在制造手机的时候,就把这类功能定制到了手机硬件和操作系统中,例如HTC sense,印象中是可以通过电脑的客户端查到手机的GPS位置。但本作品是面向所有Android用户的,不依赖于具体的手机硬件和操作系统。

作品特性  

本作品的主要特性在于:

1. 即使在手机不在身边的情况下,也能为手机用户提供最方便和迅速的隐私信息保护手段。方便是指用户可以利用SMS短信向手机发送操作指令,而迅速是指系统可快速执行用户指令和返回有用信息。

2. 防护的全面性,一旦系统锁定手机,除非输入正确的口令,否则无法获取用户隐私信息。

3. 系统本身的健壮性。***Android进程间通信方式,通过守护进程机制来增强系统的抗击打能力,一般的手机应用可以轻松的被删除或卸载,然而,除非输入正确的口令,否则本系统将与用户的隐私信息一起存在于手机上,并正常工作。

4. 数据的安全性,本系统涉及到的用户数据被存储在数据库中,而且敏感数据(比如密码)经过加密之后才存入数据库中,而非明文存储,因此更安全。

5. 交互的友好性,无论是远程操作还是直接操作,针对每一种操作都会返回相应的信息提示,如果失败,也会根据情况返回失败信息。

系统功能

本系统主要功能有短信远程操控、手机加锁解锁、手机当前位置信息获取、联系人信息备份、手机个人信息格式化、系统模式切换、用户信息设置和修改、SIM卡检测以及系统自保护。

下面对这些功能做具体介绍:

1.短信远程操控:当本系统处于保护模式时,系统激活后台程序部分,监控SMS短信内容,如果短信内容符合系统定义格式,则进行相应的操作,支持的操作有:锁定系统、获取当前位置信息、联系人信息备份以及手机个人信息清空,包括联系人、短信以及SD卡数据。这些操作都是通过利用普通的SMS短信来实现,无需特殊的数据传输。

短信的格式为:[ PH 锁定密码 操作码 ]

操作码分为01,02,03。01是锁定手机,02为备份联系人,03为格式化个人信息。03操作指令只有在信任号码发出的时候才会生效,否则被转为01操作。当操作码不正确的时候,默认转为01操作。每次短信操作时,只能使用一个号码,即忽略其他号码的短信。

2.手机加锁解锁:用户可以通过给本机发送短息,远程将手机加锁,加锁之后,除非输入解锁口令,否则本系统可以保证其他的一切操作都无法使手机解除锁定。本系统锁定模块的抗破坏性较强,可以防御一般的恶意解除手段,包括SIM卡替换、SD卡替换以及关机重启等。在手机被锁定后,锁定界面只能进行:输入解锁密码、拨打发送锁定短信的号码和接听来电这三个操作。

用户正确输入解锁口令后,系统解除手机锁定。系统保留一个信任号码,若用户忘记密码,则可以向信任号码发送短信,来获取密码。

3.当前位置信息获取:当系统被远程锁定之后,系统会向来信号码返回锁定完成确认以及手机当前位置信息。

4.联系人信息备份:当手机丢失之后,对手机用户来说,最重要的就是联系人数据。无论手机是否被锁定,用户都可以将联系人信息备份至邮箱内。不同的是,正常使用情况下,用户通过系统主界面来执行备份,而当手机丢失或被盗后,用户可以通过短信远程执行联系人备份。

5.手机个人信息格式化:即清空手机上贮存的个人信息,包括联系人、通话记录、短信记录、SD卡数据(如下图)。由于本操作是不可逆操作,一旦用户执行,信息将***地被删除,因此为了防止该操作被滥用,本系统要求只有信任号码发送的该操作指令才能被执行,否则任何其他的号码发送的该指令将被转成锁定指令。

6.系统模式切换:本系统共有两种模式供用户切换,分别为普通模式和保护模式,在普通模式下,系统只开启保护手机功能,而不开启自保护功能,系统也可以被用户正常卸载和删除。而在保护模式下,系统在后台启动监控服务,开启保护措施,当接收到执行指令时,就执行指令,包括备份联系人、锁定手机、格式化信息等,此时,本系统开启防卸载和数据删除功能(即系统自保护功能),应付企图使系统异常工作的动作。

7.用户信息设置和修改:由于本系统的工作依赖于用户的信息,具体的信息包括:锁定密码、解锁密码、信任号码以及电子邮箱。系统在每次运行的时候,检测这些信息是否完整,如果不完整则跳转到信息设置界面,直到用户输入完整信息。在信息修改界面中,用户可以输入相应的密码来修改这些信息。

8.密码找回:当忘记密码的时候,用户可以通过该功能找回密码,该功能向信任号码发送一条包含密码的短信,用户也可以选择将密码发送到邮箱中,为防止此功能被滥用,系统设定每两次密码找回动作之间的时间间隔必须大于10分钟。
正常情况下,用户可以找回锁定密码和解锁密码,而当手机被锁定时,只能找回解锁密码。之所以这样设定,是在锁定情况下尽量减少与外界的数据交互。

9.SIM卡检测:应对手机SIM卡被非法替换或卸下的情况,如果开机时检测到SIM卡被替换,则调用锁定模块将手机锁定。

10.系统自保护:这是本作品的创新点之一。一般的手机防护应用,都可以通过系统的任务管理器轻松的卸载和数据清空,但是本系统如果处于安全模式下,就不会被轻易改动,不可以被停止、卸载和清空数据,增加了系统本身的鲁棒性和实用性。

系统结构

上图即为本系统结构图,系统分为前台界面与后台保护服务,用户可以在前台界面执行相应的功能,例如模式切换、修改信息、联系人备份、密码找回等,后台保护服务主要有三个子系统,分别是手机锁定子系统、短信处理子系统以及防御子系统。   前台界面与后台服务之间有数据交互,如密码找回需要通过短信处理系统来进行短信操作。手机锁定子系统负责将手机锁定,防止陌生人非法使用手机,短信处理子系统负责处理与短信有关的操作,包括短信拦截,发送短信,读取短信内容等,防御子系统负责系统本身的自保护,应对外界对本系统恶意的破坏,包括卸载、删除、强制停止以及清空数据等。  远程手机可以通过发送SMS短信与系统进行交互,通过包含密码来执行相应的指令,如锁定、备份以及格式化等,在进行联系人信息备份时,系统需要通过数据交换,将联系人信息数据发送至邮件服务器。

#p#

***传几张本软件的截图上来

1. 安装PhoneProtector,设置锁定密码、解锁密码、信任号码和电子邮箱

欢迎界面 设置加锁密码 

设置解锁密码 设置信任号码和邮箱 

2. 设置完成后提示安装保护程序

提示安装保护程序 安装保护程序 

安装完成 安装完成

3. 主程序和保护程序主界面

主程序  保护程序  

主程序 

4. 主程序关闭保护模式后,主程序和保护程序界面显示

关闭保护模式  关闭保护模式  

5. 发送加锁短信,出现锁屏界面

发送锁屏短信 手机锁屏 

解锁失败 手机锁屏-来电显示

注:解锁失败次数超过10次,“解锁锁定”按钮会被禁用 

短信回复 

6. 关于

关于  关于

 

原文链接:http://www.cnblogs.com/blacksword/archive/2012/09/24/2700746.html

责任编辑:林师授 来源: 博客园
相关推荐

2023-08-31 22:08:32

2013-12-17 16:41:06

安卓4.4.2隐私保护谷歌

2011-12-03 21:27:03

2019-06-04 14:38:36

2013-03-18 09:11:15

2023-02-16 17:58:28

隐私沙盒隐私

2023-08-20 22:51:06

2023-08-17 15:04:01

2013-12-12 16:51:43

安卓进化AndroidGoogle

2014-11-14 15:59:07

英特尔架构安卓平台创新

2014-11-14 17:15:42

英特尔

2019-03-03 14:10:06

RSA2019WireWheel

2009-06-19 16:49:18

卡巴斯基

2021-08-20 13:00:17

WiFi0penVPNLinux

2013-10-23 11:18:11

2020-12-30 23:06:06

MIUI12.5MIUI小米

2021-10-18 05:24:12

隐私数据安全隐私数据

2022-01-12 20:37:06

浏览器隐私保护跨站点跟踪

2020-08-12 09:26:08

谷歌地震预警系统安卓手机

2010-08-26 14:03:23

隐私保护
点赞
收藏

51CTO技术栈公众号