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 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 sandi atau pola 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 terdaftar.
- Perangkat dapat mendukung autentikasi wajah.
Android juga mendukung kunci kriptografis 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 developer aplikasi untuk mengintegrasikan autentikasi biometrik ke dalam
aplikasi mereka dengan cara yang tidak bergantung pada perangkat dan modalitas. Hanya biometrik yang kuat yang dapat
berintegrasi dengan BiometricPrompt
.
Enkripsi
Setelah perangkat dienkripsi, semua data yang dibuat pengguna akan otomatis dienkripsi sebelum di-commit ke disk dan semua operasi baca akan otomatis mendekripsi data sebelum menampilkannya 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 kriptografis dengan materi kunci yang terdapat dalam lingkungan yang aman. Keystore Android mendukung pembuatan dan impor kunci simetris dan asimetris, yang digabungkan dengan primitif enkripsi, dekripsi, penandatanganan, dan kesepakatan 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 OS Android, 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 menetapkan rantai kepercayaan lengkap, mulai dari root of trust yang dilindungi hardware ke bootloader, ke partisi booting dan partisi terverifikasi lainnya.