API Status Bateri: Mengapa Pelayar Menamatkan Penjejakan Tahap Bateri
Ketahui sejarah API Status Bateri HTML5, bagaimana metrik nyahcas bateri berketepatan tinggi membenarkan penjejakan silang tapak, dan mengapa ia dialih keluar.
API Suci yang Menjadi Ancaman Penjejakan
Apabila W3C memperkenalkan API Status Bateri HTML5 (navigator.getBattery()), matlamatnya adalah suci: membenarkan aplikasi web (seperti penyunting video atau permainan) mengehadkan penggunaan sumber dan menjimatkan kuasa apabila kuasa bateri komputer riba atau peranti mudah alih semakin berkurangan.
Walau bagaimanapun, penyelidik keselamatan segera mendapati bahawa bacaan bateri yang berketepatan tinggi mewujudkan kelemahan privasi yang serius.
Bagaimana API Bateri Mencipta Cap Jari Jangka Pendek
API mendedahkan empat sifat utama:
battery.level(cth. 0.542385...)battery.charging(benar/palsu)battery.chargingTimebattery.dischargingTime(saat yang tinggal)
Apabila digabungkan, keempat-empat nilai ini menghasilkan berjuta-juta kombinasi berbeza. Oleh kerana nyahcas bateri adalah berterusan dan boleh diramal, skrip penjejakan boleh mengikut pengguna yang bergerak di antara tab Inkognito atau di seluruh pelayar yang berbeza pada peranti yang sama dalam tetingkap 30 minit.
Penamatan Pelayar dan Pengajaran Privasi
Menyedari ancaman ini, vendor pelayar mengambil tindakan tegas:
- Mozilla Firefox: Mengalih keluar sepenuhnya API Status Bateri di Firefox 52.
- Apple WebKit (Safari): Tidak pernah melaksanakan API atas kebimbangan cap jari.
- Google Chromium: Menyekat ketepatan dan menamatkan akses tanpa diminta.
Kajian kes ini menunjukkan sebab diagnostik privasi moden, seperti Maklumat Peranti dan Cap Jari Pelayar, mengaudit semua API perkakasan pelayar.
WebRTC Leak Test
Test if your real IP address is leaking through your browser even behind a VPN.