%---------------------------------------------------------------
\chapter{Main Approaches to Fingerprinting Defences}
%---------------------------------------------------------------
\label{chap:def}

Browser fingerprinting has surpassed traditional tracking methods such as cookies, using device and browser traits to uniquely identify users. 
This method does not depend on client-side storage, such as cookies, making it harder to detect and prevent. 
To counteract this, modern web browsers have introduced various measures to mitigate fingerprinting and protect user privacy.

Defensive strategies are systematically categorised into two main methodologies: randomisation and unification~\cite{anti_fp_techniques}. 
The primary objective of both methodologies is to decrease the capacity of websites to distinctively identify users on an individual basis. 
Randomisation introduces variability into the~exposed attributes, leading to~inconsistent and~unreliable fingerprints. 
In~contrast, unification standardises exposed features, making all users appear identical across every session and~eliminating distinctive traits.
Neither of~these methodologies is intended to~adversely affect the~user experience.
However, excessive or~aggressive use of~them may indeed lead to~noticeable effects.
Various web browsers employ different strategies. 
Brave and~Apple~Safari mainly use randomisation to~create controlled variability in~fingerprintable data. 
By~comparison, Tor~Browser adopts unification, rendering all~users identical to~prevent individual tracking.
Mozilla~Firefox mainly employs unification, occasionally choosing randomisation.

In~developing security measures to~combat browser fingerprinting, it is essential to~take into account factors beyond entropy that influence user tracking risks~\cite{fp_mitigating}. 
Entropy quantifies the~uniqueness of~a~fingerprinting surface, but~detectability refers to its monitoring and mitigation potential. 
Persistence assesses the duration of~a~fingerprint's consistency and~the~user's ability to~reset it. 
Availability addresses whether the~method is universally accessible or~limited to~authorised contexts. 
Furthermore, scope defines whether an~identifier is exclusive to~a~site or~spans multiple sites. 
Overlooking any~of~these elements can introduce privacy vulnerabilities, emphasising the~need for~a~holistic approach toreduce fingerprinting threats.

The~following chapter provides a~detailed description of~these defensive strategies, examining their implementation and~effectiveness in~mitigating fingerprint-based tracking. 

\section{Randomisation}
\label{chap:rand}

Randomisation serves as~an~advanced anti-fingerprinting method, based \linebreak on~the~principle of~dynamically altering the~specific values that can be used to~generate a~browser fingerprint in~a~non-deterministic way. 
Its principal goal is to~interrupt and~destabilise the~consistency and~reliability of~browser fingerprinting techniques by~frequently varying these fingerprintable attributes.
This process is achieved by~configuring each instance of~the~browser to~generate a~dynamic and~unique fingerprint that varies over time, instead of~producing a~consistent and~unchanging one.

The~fingerprint randomisation process operates across various layers~\cite{multilogin_fp_randomisation}. 
One~of~these tiers involves altering the~fingerprint on~a~per-session basis. 
In~this scenario, each time the~user initiates a~new session or~restarts their browser, a~unique fingerprint is systematically generated.
Due~to variations in~the~browser's fingerprint, it becomes exceedingly challenging to~distinctly recognise a~user's session based solely on~fingerprint data, rendering such identification nearly impractical over extended user interactions.
An~additional layer involves request-based randomisation, in~which a~distinct fingerprint is generated for~every specific request or~page load. 
This approach substantially complicates the process of~tracking users. 
However, it may degrade the~user experience due~to~the~potential disruption of~website functionality.
A~broad spectrum of~other layers is accessible for~the~aims of~introducing randomness, encompassing factors such~as~domain-specific attributes and~variations in~hardware conditions.

According to~the~findings presented by~PriVaricator, the~implementation of~well-structured randomisation strategies can substantially diminish the~efficacy of~the~fingerprinting scripts that undergo evaluation~\cite{privaricator_2015}. 
This is achieved with negligible detriment to the operational capabilities of~and~the~overall experience of~users on~these platforms.
The~frequent modification of~attributes such as~plugins, fonts, and~canvas data can lead to~randomisation, effectively hindering the~establishment of a stable and durable identifier.
This significantly complicates the~efforts of~trackers to~monitor users in~different sessions or~websites.
However, for~randomisation to~be scientifically effective, it must cover a~broad spectrum of~fingerprinting vectors~\cite{fp_why_not_work}. 
Randomising merely a~subset of~attributes allows advanced trackers to~exploit the~persistent attributes to~re-identify users.

The use of fingerprint randomisation techniques can significantly enhance the perceived anonymity of a user as no lasting fingerprint is left behind. 
However, these techniques may occasionally introduce challenges related to~system performance or degrade the quality of user experience. 
In particular, fingerprint practices, when applied in an overly aggressive manner, have the~potential to~alter the operational capabilities of a~website by corrupting the~data within the browser. 
Furthermore, fingerprinting is frequently used as~a~mechanism for bot detection, and when exercised with excessive stringency, it may inadvertently obstruct legitimate users from accessing desired websites. 
Recurring issues arise when a user, employing aggressive fingerprinting strategies, navigates within the confines of a single domain for an extended period.
Request-based fingerprinting can lead to lower performance because some scripts may not be written optimally and could be used often.
If only a minimal portion of~users opt for browsers equipped with randomisation features, these individuals may stand out more noticeably as anomalies within the overall population of~browser users worldwide.

Recent research conducted an extensive examination of 2,067,942 browser fingerprints sourced from the 15 most frequent French websites~\cite{gomez_boix_hiding_2018}. 
In this study, they gathered a dataset comprising 2,067,942 browser fingerprints, with a notable 33.6\% identified as distinctively unique. 
This percentage represents a reduction of almost 50\% compared to data from their previous research effort~\cite{laperdrix_beauty_2016}. 
It was observed that approximately 88\% of these fingerprints originated from personal computers, while the remaining portion was attributed to~personal mobile devices. 
The uniqueness was measured at 35.6\% for individual personal computers, while for personal mobile devices the figure was 16.5\%.
The~researchers went further to model a scenario in which there was a~nondeterministic alteration in various attributes, including content language, the~list of plugins, accessible fonts, and time zone configurations. 
This simulated alteration was projected to result in more than 85\% of the fingerprints collected from the computers being classified as unique.
In the context of~mobile devices, the influence was comparatively minor, yet the percentage surpassed 60\%.
Furthermore, the study explored the hypothetical elimination of~browser plugins, which caused a decline in fingerprint uniqueness from the initial 35.6\% to 19.2\%.
This underscores the complex effects that randomisation applies on~the~process of fingerprinting.
Although it has the potential to diminish the consistency of stable identifiers, paradoxically, it can also increase the visibility of certain fingerprints. 
This effect is largely dependent on~the~specific distributions of attributes in the data.

\section{Unification}
\label{chap:uni}

Unification, occasionally termed generalisation or standardisation, represents one of the two primary methodologies extensively employed for the purpose of anti-fingerprinting~\cite{fp_why_not_work}.
The term refers to a process in which substantial numbers of users display similar or even identical browser and device attributes, thereby complicating the task of distinguishing one particular individual from~another within this large cohort~\cite{gomez_boix_hiding_2018}.

The primary objective is to implement a process of standardisation \linebreak or~“spoofing” of browser and device data, aiming at uniformity in fingerprinting attributes across all users who use a specific browser or its privacy mode settings. 
By ensuring that all individuals produce identical values for these fingerprintable parameters, this approach significantly obstructs the ability of~tracking systems to differentiate between users. 
Consequently, every user appears indistinguishable within the collective group, effectively blending into a~homogeneous crowd.
The process of unification expands the size of anonymity sets, which are groups of users whose digital fingerprints cannot be differentiated from each other~\cite{fp_mitigating}. 
As the anonymity set grows in size, it becomes increasingly challenging to single out or specifically identify any individual user within the group.

This method is favoured by certain projects like Tor Browser or Mozilla Firefox because the element of randomness might lead to a break of web functionality. 
However, both unification and randomisation are influenced by the overall size of the user base. 
The success of unification is highly dependent on~the number of users who have identical fingerprints. 
In scenarios where only a~limited number of individuals use a browser with a strong focus on privacy, the anonymity set remains relatively small, thus raising the possibility of tracking within this specific group.

It is crucial to note that the unification of specific attributes could potentially disrupt the operational capability of the website, similarly to how altering these attributes randomly may result in a loss of functionality.
For example, consistently using UTC as the indicated timezone or imposing constraints on touch interface capabilities might lead to complications for web applications that require precise local configurations or depend on device functionalities~\cite{fp_mitigating}.
Fingerprinting techniques, and consequently the measures taken to counteract them such as anti-fingerprinting unification, typically operate without the user's awareness. 
This lack of visibility can lead to a situation in which users cannot determine the reasons behind the unusual behaviour of certain websites or the decline in the quality of their browsing experience. 
Such occurrences may promote confusion or even lead to an erosion of trust in~the~web services they engage with, as users are left without a clear explanation for these anomalies.

Despite efforts to achieve unification, disparities among operating systems, hardware configurations, or browser versions allow some entropy leaks to remain. 
These persistent variations can be exploited by attackers who combine various subtle indicators to undermine anonymity. 
Furthermore, emerging or indirect fingerprinting methods might target attributes not yet addressed by unification strategies, thereby fuelling a continuous and evolving contest between privacy preservation and identification techniques.