
Flash (solid state) storage has also been shown to
contain unique defects that can be fingerprinted. Both
coupling and timing effects are considered by [29], and
shown to yield feasible identification mechanisms. The
main difficulty of applying flash fingerprinting to the mo-
bile device domain is the consistent move towards using
eMMC-style flash chips [13], which hide much of the
raw data by building in complex wear-leveling logic.
There are some works that aim to fingerprint a device
via the web that go beyond the standard HTTP cookies.
Such works are based on software-related features rather
than hardware related. Ref. [18] showed that parame-
ters of system configuration such as screen resolution,
browser plugins and system fonts as well as the contents
of HTTP headers – User-Agent and Accept – allow to
fingerprint a device. Ref. [31] also showed that good de-
vice identification can also be achieved using the values
of User-Agent, IP address, cookies and login IDs. These
values can be achieved using standard logs of web traffic.
In the past several years it has been shown [8] that may
web sites identify a web client based on “super-cookies”.
These are identifier which are stored on the local host in
various persistent ways outside the control of a browser,
hence the browser can not impose that standard restric-
tion as of HTTP cookies.
Some works deal with remote hardware-based finger-
printing. The most well-known example is [26] which
showed how to measure a device’s clock skew using
ICMP and TCP traffic. The clock’s skew is shown as a
good device identifier. There is also a body of work that
propose remote fingerprinting methods based on wireless
traffic, for example, radiometric analysis of IEEE 802.11
transmitters [10], signal phase identification of bluetooth
transmitters [21], or timing analysis of 802.11 probe re-
quest frames [15].
There are a few recent works which independently
proposed methods to fingerprint accelerometers and
loudspeakers. In [16] is suggested to fingerprint a mo-
bile device using its accelerometer. The proposed finger-
printing method is based on accelerometer output while
the phone is vibrating (e.g. during an incoming call or
message). Then machine learning algorithms are used to
identify a phone based on general features extracted from
the accelerometer output, such as mean, std. dev., and
skewness. These features are indirectly based on the off-
set and sensitivity of the accelerometer. This method re-
quires about 30 seconds of accelerometer recording dur-
ing vibration, which may be hard to obtain if the phone
is not set to vibrating mode. Furthermore, the method
proposed in [16] is influenced by the surface on which
the phone lays and the case in which it is enclosed, while
our method is oblivious to these since we fingerprinting
the accelerometer while it is at rest.
Ref. [12] and [14] propose to fingerprint loudspeakers.
The schemes proposed in these works focus solely on
fingerprinting the loudspeakers; in contrast, our method
allows to fingerprinting the loudspeaker and microphone
combined, thus potentially allowing for more fingerprint
entropy. Moreover, our use of the device’s microphone
removes the need for an external microphone during the
fingerprinting process and allows for a more practical at-
tack scenario. Finally, our scheme relies on short syn-
thesized sounds that can be generated at the appropri-
ate timing. Ref. [14] relies on recording ring-tones and
therefore the attacker has to wait for an incoming call (or
other event) to trigger the sound.
8 Conclusions and future work
We presented a new approach to mobile device identifi-
cation which allows for devices to be recognized without
relying on soft identifiers (which may be lost after a de-
vice reset). Our fingerprinting method exploits sensor
calibration variations in the speaker-microphone system
and in the accelerometer. Accelerometer-based identifi-
cation is particularly noteworthy because it can be per-
formed by untrusted web code running within a mobile
browser. We hope that our results illustrate the poten-
tial risk of granting untrusted code access to seemingly
benign hardware.
This work raises several interesting open problems.
What other types of mobile hardware can be leveraged
for device fingerprinting? Can this be done using im-
perfections in the baseband processor? In other sen-
sors? How much entropy can be extracted overall and,
based on additional data from a larger set of identical de-
vices, can we obtain a high-confidence estimate of the
distributions of the measured calibration parameters? Is
there sufficient entropy in sensor-based fingerprinting to
generate a hardware-based cryptographic key? We hope
these questions can be answered by future work.
Notes
1Location 1 data was used as the training set in this case.
2The device we excluded was not misclassified in the first experi-
ment, so its exclusion did not contribute to the improved results.
3The results are similar (symmetric) if another location is omitted
from the training data instead.
4Earth’s gravity indeed varies a little depending on location, how-
ever even these small variations can be predicted.
5Note that due to the accelerometer defects we are measuring, it
will most likely not be exactly equal to g.
6For further details see [1].
7Containing a large random number—a unique ID.
8Unless the browser application exited and deleted the cookie; we
will ignore this type of scenario here: its presence will strictly degrade
our results, so the analysis we report here is conservative.
10