Does anyone know where I can find some technical articles explaining the Android's screen locker mechanism? I want to understand how a password is protected, where it is saved, how it communicates with the locker screen, gui, etc.
相关问题
- How can I create this custom Bottom Navigation on
- Bottom Navigation View gets Shrink Down
- How to make that the snackbar action button be sho
- Listening to outgoing sms not working android
- How to create Circular view on android wear?
相关文章
- android开发 怎么把图片放入drawable的文件夹下
- android上如何获取/storage/emulated/下的文件列表
- androidStudio有个箭头不认识
- SQLite不能创建表
- Windows - Android SDK manager not listing any plat
- Warning : HTML 1300 Navigation occured?
- Animate Recycler View grid when number of columns
- Why is the app closing suddenly without showing an
The password works like a traditional password. Its digested and stored. The data security is a little weak (see the bug reports below).
The pattern locker turns the pattern into a string, and then it works like a traditional password. The data security is a little weak (see the bug reports below).
The face unlocker is based on facial recognition. It falls back to passwords if detection fails. I don't know anything about the recognizer.
sstendal's answer below provides a link to using Yubikeys and One-Tme Passwords (OTP) over NFC to unlock your Android phone. Nikolay Elenkov's blog rocks, so you'll almost certainly learn something.
For the password and pattern locker source code, see https://android.googlesource.com/platform/frameworks/base/+/HEAD/core/java/com/android/internal/widget/LockPatternUtils.java.
For face recognition source code, see https://android.googlesource.com/platform/frameworks/base/+/HEAD/core/java/com/android/internal/widget/FaceUnlockView.java. Also see https://android.googlesource.com/platform/frameworks/base/+/99f2f5e/packages/Keyguard/src/com/android/keyguard/FaceUnlock.java.
As of Android 4.4, the unlocker (called KeyGuard) was moved to a separate component. I believe its source is at https://android.googlesource.com/platform/frameworks/base/+/99f2f5e/packages/Keyguard/src/com/android/keyguard.
You can use ADB to reset the relevant fields in the system's SQLite database. Here's the Google Search from VenomVendor below.
The implementation has some rough edges. I know there are some bug reports on the subject. For example:
Nikolay Elenkov explains how you can implement your own screenlock authentication mechanism for Android:
http://nelenkov.blogspot.no/2014/03/unlocking-android-using-otp.html