Firefox Disables Loophole that Allows Sites To Track Users Via Battery Status (theguardian.com)
New submitter xogg writes: Battery Status API allows web sites to read the battery level of user's system. The API was found to bring privacy risks and abuse potential and a number of implementation bugs. Now with apparent no legitimate use cases, Mozilla is taking the unprecedented decision to vaporize a browser API due to privacy concerns. And apparently, WebKit, powering Apple's Safari follows. Is that the first time a browser reduces functionality following research reports warning of privacy risks?
There were many promising use cases for this functionality, which now have gone into the shitter. A website could serve up fewer video intensive ads if it detected a low battery status, for example, or even pop up an alert window and offer to sell the user a new battery. It could go ahead and save the user's status or input if it thought that the battery was about to die. There were a lot of things that this could have been useful for, but now we'll have to find work arounds.
Just replace the battery percentage value, if that's what the API was returning with an BatteryIsLow() boolean, which could be set at something arbitrary, like 30%.
This way, the valid use cases, like control of video serving or "intensity", could still work, but the privacy concern would be gone. You can't effectively track someone in general just by knowing the times when they transition around 30%. That would be too rare to be a useful tracking data point.
Where are we going and why are we in a handbasket?
This API never needed to provide battery level as a double value. An enumeration such as { Full | Sufficient | Low | Critical } would have solved the privacy issue while providing useful information.
All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.