April 14

New Fingerprint System

Hi, this is the ExitAnty team.

We'd like to introduce the updated Fingerprint system in our application. In this release, we've reworked our previous approaches, improved the stability of parameter spoofing, and resolved the key desynchronizations that caused checkers like CreepJS to flag profiles as suspicious. The main issues we tackled first were related to Canvas and Workers.


Canvas

Canvas is a browser technology used to render graphics, text, shadows, lines, and other visual elements via JavaScript.

For anti-fraud systems, Canvas matters not as a display tool, but as a source of device fingerprinting. Different operating systems, graphics chips, drivers, fonts, and rendering quirks can produce slightly different outputs even from identical code — and that output is what forms the canvas fingerprint.

This is precisely why any instability in Canvas is quickly noticed. If the rendering result differs between environments or behaves unpredictably, a checker interprets this as a sign of spoofing.


Workers

Workers are background browser contexts in which JavaScript runs separately from the main page. They exist to enable parallel processing without burdening the UI — but from an anti-fraud perspective, they're also an independent fingerprinting zone.

Modern checkers compare values collected from the main window, a Dedicated Worker, and a Shared Worker. If Canvas, GPU, language, timezone, or other parameters diverge across these environments, it looks like unnatural browser behavior and increases the risk of detection.


Why Service Workers are unavailable in our product

Service Workers deserve a separate note.

We chose not to enable them just to tick a box on checker reports. In practice, activating them can lead to browser instability, session merging, and additional detection vectors. In our observation, this is exactly where some competing solutions run into problems — which we'll return to below.

Our priority is not a "pretty checkmark" on a test, but genuine stability and session isolation.


ExitAnty behavior on CreepJS

For testing, we used a session launched on an iPhone 15 Pro running iOS 26.2 with the following settings:

  • iOS 26.0
  • Screen Resolution: 390×844
  • Canvas: Noise
  • WebGL: Real

ExitAnty test results


Behavior of a similar solution on CreepJS

The results of testing the competing solution are shown in the video. The session was launched on an iPhone 15 Pro running iOS 26.2 with similar settings:

UA: iOS 26.2
Screen Resolution: 390×844
Canvas: Noise
WebGL: Real

At first glance, the results of ExitAnty and the other solution may seem similar. However, even in the basic tests it is clear that with Canvas Noise enabled, the alternative solution gets a lied status for Canvas, while Service Workers remain available. This points to low-quality Canvas noise implementation in the competing solution.

Moreover, during testing we saw signs of domain-dependent behavior: on certain addresses, such as abrahamjuliot.github.io (CreepJS), Worker values suddenly become “ideal,” whereas if you deploy the exact same checker on your own domain, the picture changes. The video clearly shows that the fingerprint language differs on the same checker when deployed on different domains.
Video with iPhone →


Behavior of the competing solution on CreepJS on another domain

To confirm the domain dependency of the competing solution, we also ran tests on a MacBook. Another device immediately exposed not only the imitation of fingerprint language parameters, but a whole range of other ones as well. Watch the video →

That is where the differences became much more obvious. The testing indicates that the competing solution substitutes a certain set of parameters depending on the domain, but in reality the checker, just like real anti-fraud systems, still detects fingerprint mismatches. It is hard to call this anything other than misleading users, but we’ll let you judge for yourselves.

Instructions for deploying CreepJS on your own domain are below.


Conclusion

The new ExitAnty Fingerprint system is built not around impressive results on a single public checker, but around the consistency of the entire environment: window, Canvas, Workers, WebGL, and other critical parameters.

Our goal is not simply to pass a test — it's to deliver stable, predictable protection under real-world conditions.

To celebrate this update, we're giving you 50% off all plans through the end of the month with promo code: BIRD50