以前的文章一直在介绍OC,最近也是在找急忙慌的学习IOS,因此Android方面的知识分享就有点中断了,可是我如今仍是要靠Android吃饭,因此不能Android的工做不能停呀,今天咋们来看一下我在现实中遇到的两个问题和解决方案shell
问题一:忘记手机的锁屏密码了安全
Android中在设置中的安全菜单栏中是能够设置锁屏密码的,有直接的文本密码和手势密码(咱们通常会用到的两个密码),可是有时候脑子很差使,密码老是忘了,到时候该怎么办呢?学习
方法一:咱们知道如今最流行的手势锁就是九宫格了,他在设置手势的时候,是有必定规则的,好比手势点不能少于4个,并且有些手势是不存在的,通常手势是九宫格,每一个点表明一个数值:加密
0 1 2spa
3 4 5支付宝
6 7 8开发
其实系统在存储手势密码的时候是存的这些手势对应的数值顺序,而后用SHA进行加密存储的登录
通常手势的长度是大于3个点的,并且有些手势是不合法的,那么咱们就能够用穷举法来一一尝试破解了,如今网上有相对应的软件了,只要输入SHA密文,而后就能够获取到对应的手势数值顺序。SHA和MD5码同样是不能够反解的,只能暴力破解。同时支付宝的手势密码也是这么破解的。这里就不在详细说明了。软件
方法二:方法一是一个破解的方式,可是那么作太委婉了,咱们来一个直接了当的方法:删除密码存储文件权限
这个方法之前在破解Window系统中的登陆密码方式是同样的,很少说了,直接看操做:
=>adb shell
=>su
=>cd data/system
=>ls
=>rm gesture.key
方法很简单,可是有一个前提是:手机必须root以后,在su权限才能操做,这个就比方法一多了一点条件了,方法一是不须要这个条件的。可是不要紧,反正我手机是必须root的。否则怎么开发Android,哈哈~~
Android中锁屏密码都是存在:/data/system/ 目录下的
咱们能够查看后缀名是.key的文件,由于有不少种锁屏方案:手势密码,文本密码,PIN密码等,因此会有相对应的文件,咱们只要找到对应的文件,而后将其删除便可。
上面是删除手势密码的,下面来看一下效果:
看到了,当咱们删除手势密码文件的时候,咱们输入任何手势均可以进入系统了。好了,问题解决了。
注:由于我是Android开发的,因此手机是确定root了,可是对于那些非开发人员,手机通常不会root,那就没办法了,第一种方法没什么难度,网上如今的资料不少,因此能够自行去研究了,可是第一种方法也是须要root的。为何我说第二种方法呢?由于快,方便~~
问题二:如何获取链接的wifi密码
手机链接到一个wifi了,可是我忘记密码了,其余朋友也想链接这个wifi,因此就找我要密码,可是咱们知道Android中是看不了链接wifi对应的密码的,可是朋友既然问了,做为Android开发者,没理由搞不定呀?因此方法又来了:
=>adb shell
=>su
=>cd data/misc/wifi
=>cat wpa_supplicant.conf
一样的道理,咱们其实每次链接上的wifi以后,系统会将这些wifi信息存储到指定文件中,在/data/misc/wifi/ 目录下面,而后查看wpa_supplicant.conf文件内容便可
固然了,这个操做也是须要root的,在su权限下才能操做。
总结
经过上面的两个例子,我其实想说的是:Android中有不少信息都是存储在一个文件中的,好比手机的设备信息、电池信息等等。当咱们遇到这样的问题,第一感受是这样的信息应该是存储在一个指定文件中的,而后才去找这个文件。这个也是一种学习的方法。
(PS:Android手机只要root了,什么事都能干,因此期待Google对Android的安全性作一次全面的整改和修复。。。)