Skip to main content

Tile Identity Resolver

A dependency-free Python library for identifying registered Tile trackers from version-2 FEED service data. Requires Python 3.10 or newer.

Install

python -m pip install tile-identity-resolver

Usage

from tile_identity_resolver import Tile, TileResolver

# Replace these example credentials with your Tile's ID and auth key.
tile = Tile(
    tile_id="0011223344556677",
    auth_key="AAECAwQFBgcICQoLDA0ODw==",
)
resolver = TileResolver([tile])

# Pass the raw service-data value for UUID 0000feed-0000-1000-8000-00805f9b34fb.
def handle_feed_payload(payload: bytes) -> None:
    info = resolver.resolve(payload)
    if info is not None:
        print(info.tile.tile_id, info.counter, info.version, info.flags)

Tile IDs are eight-byte lowercase hex strings. Auth keys are sixteen-byte hex or padded Base64 strings. Invalid credentials raise ValueError.

API

API Behavior
TileResolver(tiles=()) Register one or more Tiles
resolver.add(tile) Register a Tile; duplicate IDs raise ValueError
resolver.remove(tile_id) Remove a Tile; missing IDs raise KeyError
resolver.tiles Immutable snapshot of registered Tiles
resolver.resolve(payload) Return TileInfo for an unambiguous match, otherwise None

TileInfo contains the registered tile, counter, version, and flags. Remove and re-add a Tile to replace its key.

Registration precomputes private IDs and uses memory per Tile. In async apps, prepare the resolver in a worker thread and serialize access during mutations. The library resolves identities only; it does not track Bluetooth addresses or presence, and a match does not prove freshness or proximity.

Development

python -m pip install -e '.[dev]'
python tools/check_package.py

Runs tests, code checks, and package validation.

Acknowledgements

Based on Security and Privacy Analysis of Tile's Location Tracking Protocol by Akshaya Kumar, Anna Raymaker, and Michael A. Specter (USENIX Security 2026).

Unofficial; not affiliated with Tile or Life360. Licensed under the MIT License.

Metadata

Release files for tile-identity-resolver 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tile-identity-resolver 0.1.0
File Size Uploaded Provenance Actions
tile_identity_resolver-0.1.0.tar.gz 7.7 kB With provenance Details for tile_identity_resolver-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tile-identity-resolver 0.1.0
File Interpreter ABI Platform Actions
tile_identity_resolver-0.1.0-py3-none-any.whl Python 3 none any Details for tile_identity_resolver-0.1.0-py3-none-any.whl

Total release size: 14.1 kB

Release files / tile_identity_resolver-0.1.0.tar.gz

Download URL tile_identity_resolver-0.1.0.tar.gz
Size 7.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0575d6ec030becd7e4f8fa20f3c5b00dddb18a00a36d46f0e0d2a6b09599f226
BLAKE2b-256 checksum
How to use checksums
dfe35e0742aec44b0831a561286c1d0db4ba0e14ac4e8bde7566a331e8dd40cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / tile_identity_resolver-0.1.0-py3-none-any.whl

Download URL tile_identity_resolver-0.1.0-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f9d9b436dfd084e365720d4359f2a25f2154c96edaf87f3720f691e06ee78af4
BLAKE2b-256 checksum
How to use checksums
4115d7e5df8baeda30a49f3ab5ae0858d0eb23cea86d7a73382c04c416470f02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Security for tile-identity-resolver 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tile_identity_resolver-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page