Я знайшов спосіб вирішити проблему, але він вимагає root та може працювати лише з кореневими, самопідписаними або проміжними ЦО.
Якщо у вас є сертифікат, якому Android не довіряється, коли ви додаєте його, він передається в особистий магазин cert. Коли ви додаєте сертифікат в цей персональний магазин зберігання, для розблокування пристрою для системи потрібен більш високий рівень безпеки. Але якщо вам вдасться додати свій сертифікат до системного магазину, у вас немає цієї вимоги. Очевидно, що root потрібно додати сертифікат до системного магазину, але це легко.
Ось як це зробити:
1 - Додайте звичайний серт. Наприклад, називався мій церт some.crt
. Він буде зберігатися у вашому особистому магазині, а Android запитає у вас PIN-код / пароль ... Продовжуйте.
2 - За допомогою файлового менеджера з можливостями root перегляньте файли в /data/misc/keychain/cacerts-added
або /data/misc/keystore
. Ви повинні побачити файл, який називається 1000_USRCERT_some
сертифікатом, який ви додали на кроці 1.
3 - Перемістіть цей файл на system/etc/security/cacerts
(вам потрібно буде змонтувати системний розділ r / w)
4 - Перезавантажте телефон
5 - Тепер ви можете очистити PIN-код / пароль, встановлені для розблокування пристрою.
Працював для мене з підписаним сертифікатом на Android 4.4.2. Сподіваюся, це допомагає!