Answers:
否。来自http://support.google.com/android/bin/answer.py?hl=zh_CN&answer=1663755的报价:
请注意,这是用于解锁手机而不进行加密的PIN或密码,因此无法单独设置。
编辑:我在xda上找到了这个,但我认为这可能有风险,不值得付出努力。 http://forum.xda-developers.com/showthread.php?t=1680857
对于已加密的手机,Android 5.x(Lollipop)的命令已有所更改。现在,您必须先将密码编码为十六进制,然后再获取root用户,然后发出以下命令,而不是在引号中输入密码:
vdc cryptfs changepw password HEX_ENCODED_PASSWORD_HERE
由于密码是十六进制编码的,因此生成的值不需要用引号引起来。
提及的其他命令vdc cryptfs changepw 'plaintext password here'
对Android 5.x和更高版本无效。
如果要将密码更改为testing
,则在获得root权限后将发出以下命令:
vdc cryptfs changepw password 74657374696e67
如果我想将密码更改为更奇特的密码(包括特殊字符,引号和其他标点符号,例如,What's up "Doc"?
我将adb shell
在获得su
root 之后发出以下命令:
vdc cryptfs changepw password 5768617427732075702022446f63223f
现在重新启动电话(您可以发出reboot
命令),系统将提示您输入新密码。
如果设备当前尚未完全加密,则可以发出以下命令:
vdc cryptfs enablecrypto inplace HEX_ENCODED_PASSWORD_HERE
手机将自动重新启动,并处于加密过程,可能需要一个小时或更长时间。
EncPassChanger声称可以做到这一点,但尚未对其进行测试。
加密密码与屏幕解锁PIN的密码不同。实际上,您可以使用密码对设备进行加密,而无需任何屏幕锁定密码/ PIN。(最初是我新安装的设备的情况)。
如果您想到一种可能的安全实施方案,那么这是有道理的。加密密码短语不直接用于加密数据。首先,将密钥推导函数应用于密码短语。然后将所得的密钥用于加密主密钥。(此主密钥用于磁盘加密。)
如果不重新加密所有数据,则需要花费相当长的时间才能更改主密钥。更改保护主密钥的密码短语是可能的,并且速度更快。与GPLv2许可的LUKS软件不同,您只能指定一个密码。
要求:
adb
。说明:
adb shell
在计算机上运行来完成。(另请参见2)su
假设您的密码为Give Mom batteries
,请执行以下命令:
vdc cryptfs changepw 'Give Mom batteries'
如果您为密码选择了奇异字符,请确保正确地避开这些字符。
我通过查看vold的源代码(尤其是CommandListener.cpp)找到了这些参数。自ICS中引入磁盘加密以来,此命令始终可用:
$git log -n1 --oneline 70a4b3fd7a84a84bbe6e9d6d4ca3ee2098259fd
70a4b3f Change cryptfs changepw to only require a new password.
$ git branch --contains 70a4b3fd7a84a84bbe6e9d6d4ca3ee2098259fd -a
* cm-10.1
remotes/origin/HEAD -> origin/cm-10.1
remotes/origin/cm-10.1
remotes/origin/cm-9.0.0
remotes/origin/cm-9.1.0
remotes/origin/ics
remotes/origin/ics-release
remotes/origin/jellybean
remotes/origin/jellybean-stable
remotes/origin/mr1.1-staging