Skip to content
All fingerprint checks
Capability surfaces

SharedArrayBuffer exposure agrees with the reported cross-origin isolation

Pim· Clearcote Research 1 min readCheck id sharedarraybuffer-vs-isolation

If crossOriginIsolated reports true, SharedArrayBuffer is exposed. A constructor present without isolation is engine-dependent, reported but not asserted.

What a detector infers

Asking whether SharedArrayBuffer exists would measure the wrong machine: its exposure is gated by the COOP and COEP headers THIS site sends, so the answer describes our configuration rather than the visitor's browser — which is why the Blink-API presence check deliberately excludes it.

What is checkable without that problem is the relationship between two things the browser reports about itself. window.crossOriginIsolated is the browser's own statement about whether the document's agent cluster qualifies for isolation, and SharedArrayBuffer's availability is defined in terms of exactly that state. So the two have to agree no matter what headers this page happened to send, and the check works on any origin without knowing what we served.

Only the specified direction is asserted — isolation implies the constructor — because the converse is genuinely engine- and platform-dependent, and asserting it would convict ordinary browsers.

How to resolve it

crossOriginIsolated is derived from the real agent cluster. If it is being reported from an overridden value, every surface gated on it — SharedArrayBuffer, the high-resolution timer grid, memory measurement — keeps answering from the real state and contradicts it.

How automation gets caught, layer by layer

Nearby checks in Capability surfaces

See all 20 checks in Capability surfaces
Who builds this test

Clearcote is a browser built for fingerprint coherence

It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.

This audit takes no position on how Clearcote scores on Capability surfaces checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.

See the other checks in Capability surfaces — the family sharedarraybuffer-vs-isolation belongs to.