Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Perilaku Pengacakan MAC

Fitur pengacakan MAC memungkinkan perangkat untuk menggunakan alamat MAC acak saat menghubungkan ke jaringan Wi-Fi. Untuk petunjuk pelaksanaan, lihat Pelaksana MAC Pengacakan . Halaman ini menjelaskan perilaku pengacakan MAC di Android.

Alamat MAC digunakan oleh perangkat saat menghubungkan ke jaringan Wi-Fi atau titik akses. Karena alamat MAC ini ditransmisikan tanpa enkripsi, mereka dapat ditangkap dan digunakan untuk berpotensi melacak lokasi pengguna. Secara historis, perangkat menggunakan pabrik alamat MAC untuk asosiasi ke jaringan Wi-Fi. Alamat MAC pabrik secara global unik dan statis, memungkinkan perangkat dilacak dan diidentifikasi satu per satu.

Fitur pengacakan MAC meningkatkan privasi pengguna dengan menggunakan alamat MAC acak saat menghubungkan ke jaringan Wi-Fi.

Alamat MAC adalah 48 bit panjang dan biasanya diwakili oleh 12 digit hex (6 oktet karena setiap oktet adalah 8 bit) seperti 00:11:22:AA:BB:CC . Fitur pengacakan MAC randomizes alamat dengan menetapkan bit diberikan secara lokal untuk 1, dan bit unicast untuk 0. lain 46 bit acak.

Untuk perangkat yang menjalankan Android 10 atau lebih tinggi, framework menggunakan alamat MAC acak secara default. Pengguna dapat mengaktifkan atau menonaktifkan MAC pengacakan untuk jaringan individu melalui pilihan di Jaringan Rincian layar di Settings, seperti yang ditunjukkan pada Gambar 1. Jika pengguna menonaktifkan MAC pengacakan untuk jaringan, kerangka menggunakan pabrik alamat MAC (alamat global yang unik).

Opsi pengacakan MAC

Opsi pengacakan Gambar 1. MAC.

Jenis pengacakan MAC

Kerangka Android menggunakan dua jenis MAC pengacakan: pengacakan gigih dan pengacakan non-persistent . Jika pengguna menonaktifkan pengacakan MAC, alamat MAC pabrik akan digunakan.

Android menentukan jenis pengacakan MAC yang akan digunakan saat perangkat dikaitkan ke jaringan Wi-Fi. Secara default, Android menggunakan pengacakan terus-menerus. Mulai Android 12, Android menggunakan pengacakan non-persisten dalam situasi berikut:

  • Sebuah menspesifikasikan aplikasi jaringan saran bahwa pengacakan non-gigih digunakan untuk jaringan melalui WifiNetworkSuggestion.Builder#setMacRandomizationSetting API.
  • Jaringan adalah jaringan terbuka yang belum mengalami captive portal dan config_wifiAllowEnhancedMacRandomizationOnOpenSsids overlay diatur ke true . Overlay ini dinonaktifkan (set ke false ) secara default.

Pengacakan terus-menerus

Android menggunakan jenis pengacakan persisten secara default saat fitur pengacakan MAC diaktifkan. Android menghasilkan alamat MAC acak persisten berdasarkan parameter profil jaringan termasuk SSID, jenis keamanan, atau FQDN (untuk jaringan Passpoint). Alamat MAC ini tetap sama sampai reset pabrik. Alamat MAC tidak mendapatkan re-acak jika lupa pengguna dan re-menambahkan jaringan Wi-Fi sejak MAC ditujukan tergantung pada parameter dari profil jaringan.

Alamat MAC yang persisten diperlukan dalam kasus di mana jaringan bergantung pada kegigihan alamat MAC untuk menyediakan fungsionalitas yang berguna bagi pengguna, misalnya, untuk mengingat perangkat dan memungkinkan pengguna untuk melewati layar login seperti yang diharapkan, atau untuk mengaktifkan kontrol orang tua.

Untuk Android 10 dan 11, framework menggunakan pengacakan persisten untuk semua jaringan saat pengacakan MAC diaktifkan.

Pengacakan non-persisten

Di bawah jenis pengacakan non-persisten, yang digunakan untuk beberapa jaringan di Android 12 atau lebih tinggi, modul Wi-Fi mengacak ulang alamat MAC di awal setiap koneksi atau kerangka kerja menggunakan alamat MAC acak yang ada untuk terhubung ke jaringan. Modul Wi-Fi mengacak ulang alamat MAC dalam situasi berikut:

  • Durasi sewa DHCP telah kedaluwarsa dan lebih dari 4 jam telah berlalu sejak perangkat terakhir kali terputus dari jaringan ini.
  • MAC acak saat ini untuk profil jaringan dibuat lebih dari 24 jam yang lalu. Pengacakan ulang alamat MAC hanya terjadi pada awal koneksi baru. Wi-Fi tidak akan terputus secara aktif untuk tujuan mengacak ulang alamat MAC.

Jika tidak satu pun dari situasi ini berlaku, kerangka kerja menggunakan alamat MAC yang sebelumnya diacak untuk terhubung ke jaringan.

Opsi pengembang untuk pengacakan non-persisten

Untuk perangkat yang menjalankan Android 11 atau 12, pengguna dapat mengaktifkan non-persistent MAC pengacakan secara global untuk semua jaringan Wi-Fi (yang memiliki MAC pengacakan diaktifkan) melalui opsi pengembang layar. Pilihan untuk mengaktifkan non-persistent MAC pengacakan untuk semua profil ditemukan di Settings> Options Pengembang> Wi-Fi non-persistent MAC pengacakan.

Opsi pengacakan MAC non-persisten Wi-Fi

Gambar 2. Wi-Fi non-persistent pilihan pengacakan MAC.