2 u012995856 u012995856 于 2016.01.14 22:25 提问

android手机密码password.key文件加密方式?

android手机被设置了密码,由于开了root并且开启了USB调试,在终端下

 adb pull /data/system/password.key ~/ 

,之后cat password.key

 B10DE316C14D82701D418D03B85A02EFBCD02DBFAEFEA0BA8E1007D6CB4AF9F281419D67

把这个文件删除之后,手机重启就不需要输入密码了,但是想知道这种加密方法,没有密码学基础,没有思路,看了网上的不少说是sha1。另:已经知道了手机上设置的密码为123654。求大神点拨。

1个回答

save4me
save4me   Ds   Rxr 2016.01.14 22:41
已采纳

参考 Android Forensics May 27
加密是类似下面的方法,盐值是在/data/data/com.android.providers.settings/databases/settings.db数据库secure的表里面,你文件里面看到的就是sha1+md5: (40位+32位)的值

public byte[] passwordToHash(String password)
{
    if (password == null)
    {
            return null;
        }
    String algo = null;
    byte[] hashed = null;
    try
        {
        byte[] saltedPassword = (password + getSalt()).getBytes();
        byte[] sha1 = MessageDigest.getInstance(algo = "SHA-1").digest(saltedPassword);
        byte[] md5 = MessageDigest.getInstance(algo = "MD5").digest(saltedPassword);
                hashed = (toHex(sha1) + toHex(md5)).getBytes();
        }
        catch (NoSuchAlgorithmException e)
    {
            Log.w(TAG, "Failed to encode string because of missing algorithm: " + algo);
    }
        return hashed;
}
  1. Pull out the salt using adb. Salt is stored in the ‘secure’ table from /data/data/com.android.providers.settings/databases/settings.db
  2. Get the password : sha1+md5: (40+32) (stored at /data/system/password.key)

Ex: 0C4C24508F0D29CF54FFC4DBC5520C3C10496F43313B4D3ADDFF8ACDD5C8DC3CA69CE740

  1. Once you have the md5 and the salt you can brute force using the tools available in market (Ex hashcat) to get password.
u012995856
u012995856 感谢!
2 年多之前 回复
qq_27665781
qq_27665781 回复dcxy0:好久不见啊
2 年多之前 回复
dcxy0
dcxy0 赞一个
2 年多之前 回复
caozhy
caozhy 赞一个
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Android 忘记锁屏密码的解决办法
Android手机忘记锁屏密码怎么办?除重新刷包或者wipe data外,还可用adb来删除密码。 1手机连接电脑,在充电模式下进行。 2在电脑上解压adb.zip后,把adb文件放在电脑C盘根目录下。 3点击电脑开始>运行>输入cmd>再就进cmd 4输入 cd c:\adb 5再输入 adb shell 复制代码 6然后再输入 cd data/sy
清除解锁图案 首先执行cd data/system进入系统文件目录,执行ls列举文件目录,这里有三个与用户相关的文件accounts.db(gmail账号管理),gesture.key(手势识别文件)
From:http://www.apkbus.com/android-44923-1-1.html
Android中锁屏密码算法解析以及破解方案
本文转自一个牛逼的博主,最下是他的二维码,原博地址:http://blog.csdn.net/jiangwei0910410003/article/details/74886918  一、前言 最近玩王者荣耀,下载了一个辅助样本,结果被锁机了,当然破解它很简单,这个后面会详细分析这个样本,但是因为这个样本引发出的欲望就是解析Android中锁屏密码算法,然后用一种高效的
Linux 用户密码的加密方式
Linux /etc/shadow文件中的记录行与/etc/passwd中的一一对应,存放着用户的密码哈希值。它由pwconv命令根据/etc/passwd中的数据自动产生。它的文件格式与/etc/passwd类似,由若干个字段组成,字段之间用“ Linux /etc/shadow文件中的记录行与/etc/passwd中的一一对应,存放着用户的密码哈希值。它由pwco
【ADB命令第三篇】手机密码(访问权限密码或者锁屏密码等)忘记怎么办?
访问限制的密码忘记了,或者是锁屏密码忘记了,导致有些程序(如短信,通讯录等重要程序)打不开,影响正常使用。又嫌麻烦,不愿意刷机。是不是就没有办法解决了呢?答案也是否定的。别忘了,ADB还有个shell命令呢。
强制解除安卓系统密码
data/system/password.key删除后就没有锁屏密码了
常见的WEB加密方式
一、Base64 Base64编码可以成为密码学的基石。 简述: 可以将任意的二进制数据进行Base64编码。 所有的数据都能被编码为并只用65个字符就能表示的文本文件。( 65字符:A~Z a~z 0~9 + / = ) 编码后的数据 小于 编码前数据的4/3,会 大于 1/3左右。 命令行进行Base64编码和解码 编码:base64 123.png -...
详解MYSQL数据库密码的加密方式及破解方法(2)
转自 http://hi.baidu.com/davice_li/blog/item/2996960e451015266159f3b6.html 2.将MySQL用户密码字符串加入到Cain破解列表     本文使用Cain & Abel 来破解MYSQL数据库用户密码,Cain & Abel是一个可以破解屏保、PWL密码、共享密码、缓存口令、远程共享口令、SMB口令、支持VN
wordpress用户密码加密原理及其算法分析
[申明]本文章仅供学习交流只用,切勿用作商业用途,请勿违反当地法规,否则后果自负。 转载请注明本文出处: 1、什么是wordpress? 关于wordpress的介绍请自行参照维基百科:http://zh.wikipedia.org/wiki/Wordpress 2、wordpress用户密码的加密算法 首先,wordpress是开源的,大家可以从官网下载源代码。另外wordpr
几种加密方式
几种加密方式 1 Base64加密方式(可逆) Base64中的可打印字符包括字母A-Z/a-z/数组0-9/ 加号’+’斜杠’/’ 这样共有62个字符 Base64 ios7之后加入系统库   2 MD5加密 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护 是计算