What problem does it solve?
It helps prevent fraud by verifying that your requests originate from an authentic Apple device running your unmodified app, rather than a tampered or spoofed client.
Core Features & Use Cases
- DeviceCheck per-device integrity signals (DCDevice): Generate ephemeral device tokens and use them to query/update two persistent boolean “bits” on the server for flags or risk controls.
- App Attest attestation and request signing (DCAppAttestService): Create a Secure Enclave–backed key, perform one-time attestation with a server-issued challenge, then generate per-request assertions for ongoing verification.
- Server verification guidance and hardening: Use attestation verification, assertion counter checks (replay protection), and endpoint design patterns to ensure signatures and challenges match.
Quick Start
Have the client generate a DeviceCheck token and/or an App Attest key, send the token/attestation to your backend, and verify assertions for sensitive endpoints using server-stored public keys and counters.