Gunakan fitur yang dijelaskan di bagian ini untuk membuat perangkat Android yang Anda kembangkan seaman mungkin.
Sandbox Aplikasi
Platform Android memanfaatkan perlindungan berbasis pengguna Linux untuk mengidentifikasi dan mengisolasi resource aplikasi. Untuk melakukannya, Android akan menetapkan ID pengguna unik (UID) ke setiap aplikasi Android dan menjalankannya dalam prosesnya sendiri. Android menggunakan UID ini untuk menyiapkan Sandbox Aplikasi tingkat kernel.
Penandatanganan aplikasi
Penandatanganan aplikasi memungkinkan developer mengidentifikasi penulis aplikasi dan mengupdate aplikasi mereka tanpa membuat antarmuka dan izin yang rumit. Setiap aplikasi yang berjalan di platform Android harus ditandatangani oleh developer.
Autentikasi
Android memiliki konsep pengautentikasi pengguna yang dapat membuka kunci perangkat dan melakukan tugas lainnya:
- Subsistem Gatekeeper melakukan autentikasi pola atau sandi perangkat di Trusted Execution Environment (TEE).
- Komponen Weaver opsional melakukan autentikasi pola atau sandi di elemen aman terpisah.
- Perangkat dengan sensor sidik jari mendukung penggunaan sidik jari yang terdaftar.
- Perangkat dapat mendukung autentikasi wajah.
Android juga mendukung kunci kriptografi yang didukung hardware yang hanya dapat digunakan jika autentikasi pengguna dengan salah satu mekanisme ini telah terjadi.
Biometrik
Android 9 dan yang lebih tinggi menyertakan class BiometricPrompt
yang dapat digunakan oleh developer aplikasi untuk mengintegrasikan autentikasi biometrik ke dalam aplikasi mereka dengan cara yang agnostik terhadap perangkat dan modalitas. Hanya biometrik kuat yang dapat diintegrasikan dengan BiometricPrompt
.
Enkripsi
Setelah perangkat dienkripsi, semua data yang dibuat pengguna akan otomatis dienkripsi sebelum di-commit ke disk dan semua pembacaan akan otomatis mendekripsi data sebelum mengembalikannya ke proses panggilan. Enkripsi memastikan bahwa meskipun pihak yang tidak berwenang mencoba mengakses data, mereka tidak dapat membacanya.
Keystore
Android menawarkan keystore yang didukung hardware yang menyediakan fungsi kriptografi dengan materi kunci yang terdapat dalam lingkungan yang aman. Android Keystore mendukung pembuatan dan impor kunci simetris dan asimetris, yang dikombinasikan dengan primitif enkripsi, dekripsi, penandatanganan, dan perjanjian kunci.
Security-Enhanced Linux
Sebagai bagian dari model keamanan Android, Android menggunakan Security-Enhanced Linux (SELinux) untuk menerapkan kontrol akses wajib (MAC) di semua proses, bahkan proses yang berjalan dengan hak istimewa root atau superuser (kemampuan Linux).
Trusty TEE
Trusty TEE
Trusty adalah sistem operasi (OS) aman yang menyediakan TEE untuk Android. Trusty OS berjalan di prosesor yang sama dengan Android OS, tetapi Trusty diisolasi dari sistem lainnya oleh hardware dan software.
Booting Terverifikasi
Booting Terverifikasi dirancang untuk memastikan bahwa semua kode yang dieksekusi berasal dari sumber tepercaya (biasanya OEM perangkat), bukan dari penyerang atau kerusakan. Booting Terverifikasi membuat rantai kepercayaan penuh, dimulai dari root kepercayaan yang dilindungi hardware hingga bootloader, ke partisi booting, dan partisi terverifikasi lainnya.