Мне было интересно, если можно выбрать разные пароли для шифрования устройства в ICS?
Наличие одного и того же пароля для шифрования и разблокировки экрана не так уж и безопасно ...
Спасибо за подсказки.
Мне было интересно, если можно выбрать разные пароли для шифрования устройства в ICS?
Наличие одного и того же пароля для шифрования и разблокировки экрана не так уж и безопасно ...
Спасибо за подсказки.
Ответы:
Нет. Цитата из http://support.google.com/android/bin/answer.py?hl=ru&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-код блокировки экрана вообще. (это было изначально в случае с моим недавно установленным устройством).
Если вы думаете о возможной безопасной реализации, это имеет смысл. Кодовая фраза шифрования напрямую не используется для шифрования ваших данных. Сначала к ключевой фразе применяется функция вывода ключа. Полученный ключ затем используется для шифрования главного ключа. (Этот мастер-ключ используется для шифрования диска.)
Изменение главного ключа невозможно без повторного шифрования всех данных, что занимает довольно много времени. Что возможно и намного быстрее, это изменение ключевой фразы, которая защищает главный ключ. В отличие от программного обеспечения LUKS, лицензированного по GPLv2 , вы можете указать только одну фразу-пароль.
Требования:
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