ys1231

MoveCertificate

v1.6.2guide

支持Android7-16移动证书,兼容magiskv20.4+/kernelsu/APatch, Support Android7-16, compatible with magiskv20.4+/kernelsu/APatch

★1,981 stars
•Security & Certificates•by ys1231•Apache-2.0•Updated Sep 2, 2026
Roots:
✓ Magisk✓ KernelSU✕ APatch
Download v1.6.2GitHub Source
MoveCertificate-v1.6.2.zip

Overview

Developed by ys1231, MoveCertificate was engineered specifically to solve the architectural breaking changes introduced in Android 14 regarding system certificate trust.

In Android 14, Google completed the migration of core operating system security components into Mainline APEX modules. The root CA certificate directory was permanently relocated from /system/etc/security/cacerts/ into the read-only, mounted filesystem of the com.android.conscrypt APEX. Because of this, traditional Magisk modules that mounted certificates into /system ceased functioning completely on Android 14. MoveCertificate implements advanced mount namespace injection to restore full SSL/TLS traffic interception.


Technical Architecture & How It Works

APEX Mount Namespace Injection

  1. Certificate Scanning: During early boot, MoveCertificate scans user-installed certificates stored in /data/misc/user/0/cacerts-added/.
  2. Temporary Overlay Creation: It constructs a temporary directory containing both stock Conscrypt CA certificates and your newly added user certificates.
  3. APEX Namespace Overlay: Because APEX mounts exist in their own private Linux mount namespaces, the module runs a native script inside the root namespace:
    mount --bind /data/local/tmp/cacerts_merged /apex/com.android.conscrypt/cacerts
  4. Bionic Trust Propagation: When Android apps initialize TLS sessions, the Bionic Conscrypt crypto engine reads the merged certificates directly from the APEX mount, trusting proxy CA certificates globally.

Installation & Usage

  1. Open your root manager (Magisk, KernelSU, or APatch).
  2. Download and flash MoveCertificate-vX.zip.
  3. Reboot your device.
  4. Install your proxy CA certificate (e.g. Burp Suite, mitmproxy, Charles) via Android’s standard Settings $\rightarrow$ Security $\rightarrow$ Install from storage $\rightarrow$ CA Certificate.
  5. Reboot your device one more time.
  6. Verify under Settings $\rightarrow$ Trusted Credentials $\rightarrow$ System: your proxy certificate is now listed as a valid system authority.

Frequently Asked Questions

Why did certificate modules stop working on Android 14?

In Android 14, Google converted the Conscrypt security provider into an Updatable APEX package. The CA certificate store was migrated from /system/etc/security/cacerts/ to an immutable APEX loop mount at /apex/com.android.conscrypt/cacerts/. Standard Magisk modules mounting to /system no longer affect TLS verification. MoveCertificate creates an overlay specifically targeting the Conscrypt APEX mount namespace.

Can I use MoveCertificate on Android 13 or older?

No. On Android 13 and older, the system certificate directory is located at /system/etc/security/cacerts/. Use AlwaysTrustUserCerts for Android 7 through 13.

Specifications

Prerequisites

  • Android 14 or Android 15
  • Magisk, KernelSU, or APatch

Known Conflicts

  • Legacy AlwaysTrustUserCerts (which only works on Android 13 and older)

Configuration Paths

/apex/com.android.conscrypt/cacerts/
/data/misc/user/0/cacerts-added/

Repository Details

Maintainerys1231
RepositoryMoveCertificate
Latest Releasev1.6.2
Release DateSep 2, 2026
LicenseApache-2.0
Open GitHub Repository →