Skip to main content
ZombieMutex

30 results · ↑ ↓ navigate · Enter open · Esc close

← All projects

Project notebook / Systems

Documented

Hardening iOS Device Trust Signals

I hardened iOS device-trust decisions by separating untrusted client signals from evidence verified by backend services.

Discuss this project

What I built

  • I defined server-issued nonce challenges, separated verifiable evidence from advisory device signals, and implemented rejection paths for stale, replayed and mismatched requests.

Experiments & checks

  • Check nonce freshness, binding, and replay rejection at the API boundary.
  • Treat instrumentation and device posture claims as advisory unless independently verified.
  • Exercise outage and fallback paths for privileged actions.

Notes & limitations

Client-side device posture was being treated as stronger evidence than the backend could verify. That created room for replay and manipulated signals in high-risk decisions.

Needed to preserve user experience under partial outages while still failing closed for privileged actions.

I made the verification boundary explicit: backend evidence could inform a privileged decision, while client posture alone could not. The case study focuses on that design and its failure paths, rather than publishing private system telemetry.

Screenshots & media

Screenshot of the public ZombieMutex page for Hardening iOS Device Trust Signals
Preview of the public project page or browser lab. This is not a screenshot of a private customer system. View full size ↗

Project updates

Dated notes tied to actual revisions of the site, not a simulated activity feed.

  1. Projects index updated

    Removed featured project categories and aligned the projects directory.

    Site revision aadd62d

  2. Project workspaces published

    Added the project's documentation, architecture and verification views.

    Site revision 67a4a50

These entries reflect published changes to this website. The website repository is private; revision IDs are not public source links.

Discuss this project

Questions, ideas, minimal reproductions and corrections are welcome. Each project has its own public GitHub Discussion.

You can read without an account; posting requires GitHub sign-in. Keep private customer information, credentials and restricted material out of public threads.

Open this project's discussion