Selama konferensi pengembang Google I/O 2019, Google mengumumkan Project Mainline - upaya untuk mempercepat pembaruan keamanan melalui modul di Android Q.
Fragmentasi versi Android adalah salah satu tantangan terbesar yang harus dipecahkan oleh Google. Sementara ponsel cerdas Google Pixel termasuk di antara ponsel cerdas paling aman di pasaran berkat upaya luar biasa dari Pixel dan Insinyur AOSP, banyak ponsel cerdas lainnya yang rentan terhadap eksploitasi karena menjalankan versi OS yang ketinggalan jaman atau patch keamanan yang sudah ketinggalan zaman tingkat. Laporan terbaru dari Gartner menunjukkan bahwa Android 9 Pie adalah OS yang sangat aman hanya sekitar 10% dari semua ponsel cerdas sedang dirilis.
Google menangani fragmentasi versi dengan inisiatif seperti Proyek Tiga Kali Lipat, perancangan ulang besar-besaran Android yang mengakibatkan pemisahan antara komponen kerangka OS Android dan komponen HAL vendor,
LTS kernel Linux yang diperluas, pembaruan patch keamanan wajib selama 2 tahun, dan Android Perusahaan Direkomendasikan. Di Google I/O 2019, perusahaan mengumumkan inisiatif terbarunya untuk mempercepat pembaruan keamanan: Project Mainline untuk Android Q.Project Mainline: Memperbarui modul sistem Android Q melalui Google Play
Selama beberapa bulan terakhir, kami telah melacak sesuatu yang disebut "PUNCAK" di AOSP. APEX, atau Android Poni Ekspres, adalah jenis paket baru yang mirip dengan APK. Namun, alih-alih menampung aplikasi Android, APEX adalah rumah bagi perpustakaan asli atau kelas, kode yang telah dikompilasi sebelumnya yang dapat dipanggil oleh aplikasi Android, Lapisan Abstraksi Perangkat Keras (HAL), dan Android Waktu Proses (SENI). Seperti APK, paket APEX dapat disajikan kepada pengguna melalui metode instalasi paket tradisional di Android: Google Play Store/manajer paket atau ADB.
Modul APEX dapat digunakan jauh lebih awal dalam proses booting dibandingkan modul berbasis APK, dan modul tersebut juga didukung oleh dm-verity dan Android Verified Boot untuk meningkatkan keamanan. Memasang image payload dalam paket APEX memerlukan driver loop kernel Linux, sehingga perangkat memerlukan kernel Linux versi 4.9+. Mengelola paket APEX memerlukan daemon APEX baru, yang diperkenalkan dengan Android Q. Meskipun perangkat dapat diupgrade ke Android Q dengan kernel Linux 4.4 untuk mendukung APEX (seperti Google Pixel 3), OEM perlu menggabungkan patch tambahan agar dapat berfungsi. Untuk sebagian besar, hanya perangkat yang diluncurkan dengan Android Q yang akan mendukung Project Mainline.
Distribusi GNU/Linux telah lama mampu memperbarui komponen sistem secara independen dari pembaruan sistem penuh, namun Android selalu memerlukan pembaruan sistem untuk memperbaruinya. Google memilih untuk tidak mendistribusikan paket-paket ini menggunakan sistem manajemen paket Linux tradisional seperti dpkg dan rpm karena mereka tidak melindungi paket pasca-instalasi menggunakan dm-verity.
Karena pembuat perangkat membutuhkan waktu lama untuk meluncurkan pembaruan, banyak perangkat mungkin memiliki komponen sistem yang ketinggalan jaman selama berhari-hari, berminggu-minggu, atau bahkan berbulan-bulan. Dengan mendistribusikan komponen ini sebagai paket APEX, Google dapat melewati penantian panjang bagi OEM untuk meluncurkan pembaruan sistem.
Namun, Google tidak melakukan kontrol penuh atas seluruh komponen sistem. Perusahaan telah bekerja sama dengan mitra OEMnya untuk memilih serangkaian aplikasi sistem (sebagai APK) dan komponen sistem (sebagai APEX paket) untuk dimodulasi sehingga dapat meningkatkan keamanan, privasi, dan konsistensi untuk semua pengguna dengan perangkat yang diluncurkan Android Q. Meskipun Google belum mengungkapkan secara pasti bagaimana mereka membuat rangkaian awal komponen sistem, mereka telah mengungkapkannya memberi kami daftar komponen sistem pada perangkat yang diluncurkan dengan Android Q yang dapat diperbarui Google:
- Keamanan: Codec Media, Komponen Kerangka Media, Resolver DNS, Conscrypt
- Pribadi: UI Dokumen, Pengontrol Izin, ExtServices
- Konsistensi: Data zona waktu, ANGLE (pengembang ikut serta), Metadata Modul, Komponen jaringan, Login Captive Portal, Konfigurasi Izin Jaringan
Pembaruan segera pada Conscrypt, pustaka keamanan Java, dan komponen media, yang "menyumbang hampir 40% dari kerentanan yang baru-baru ini ditambal," akan membuat perangkat Android lebih aman. Pembaruan pada Pengontrol Izin akan meningkatkan privasi. Standarisasi data zona waktu akan berguna untuk menjaga perangkat Android di seluruh dunia tetap berpikiran sama setiap kali suatu negara memutuskan untuk mengubah zona waktunya. Selain itu, pengembang game akan mendapatkan keuntungan dari standarisasi SUDUT.
Google memulai dengan komponen sistem ini tetapi dapat menambahkan lebih banyak lagi di rilis Android mendatang. Dari 13 komponen ini, Conscrypt, data Timezone, Media Codec, dan Media Framework Components akan dikirimkan sebagai paket APEX. 9 komponen lainnya adalah APK sistem. Meskipun APEX dan APK dapat dikirimkan melalui Google Play, memperbarui paket APEX akan memerlukan reboot. Google belum membagikan alur UI tentang bagaimana hal ini akan terjadi, namun begitu perangkat mulai diluncurkan dengan Android Q, kemungkinan besar kita akan mempelajari informasi lebih lanjut tentang Project Mainline dan paket APEX.