Concretely, defined in identifiable_surface.h
. Represents a single source of partially identifying information.
An identifiable surface where the value returned by an operation or an attribute defined in an IDL file independently reports the partial fingerprint. No additional contextual information is necessary to interpret the meaning of the returned value.
E.g.: Screen.width
which is exposed as window.screen.width
.
Direct identifiable surfaces are a special case of Keyed Identifiable Surfaces where the key is implicit and global.
An identifiable surface where the partial fingerprint is only meaningful if its context is fully qualified.
E.g.: HTMLElement.scrollWidth
depends on the contents and styling of the element. Hence for the return value to qualify as a partial fingerprint it needs to be interpreted in the context of the content and styling.
See Surface Types.
An identifiable surface which changes semi-frequently but whose change events can be correlated to join identities across browsing contexts.