What is font fingerprinting?

This is the method used to identify the browser. This method can be used to distinguish between the browser, for example, display personalized advertisements or uniquely identify the browser on the next visit, even if the user does not have login information available. This method uses the CSS font family to render and stylize the sample text, and then generates a hash code from various metrics derived from the sample text (i.e. the width and height of the bounding box). This metric is calculated for different font families and then the results are converted to a hash code. Since the print buffer relies on browser font rendering capabilities, it provides a pretty good unique identifier.

How can I protect my browser to prevent font fingerprinting?

Some browsers have internal modules that the user can activate to protect against fingerprints. Some others do not offer such an opportunity. In these browsers, you can install the browser extension to simulate your own behavior. The module must change the CSS font property so that the fingerprint data is changed and not unique. There are two popular methods to achieve this. Some browsers or extensions add random noise (that is, invisible disturbances to various metrics, such as width or height) in the metrics of the rendered font, which can lead to an invalid identification hash code. Some others insert these noises in random positions to make sure each fingerprint is different from the previous one. The first method generates a unique identifier, but this identifier is “new” and therefore, the browser information is protected.