Human Presence
Human presence is the core concept that BotShield verifies. Understanding what it means and how it differs from other verification methods is key to evaluating BotShield for your platform.What is Human Presence?
Human presence is the verification that a human is physically present at the moment an action is taken. It is not about:- Behavior patterns
- Device fingerprints
- Session history
- User accounts or identity
Why Human Presence Matters
Bots Can Mimic Behavior
Automated systems can replicate user behavior patterns, solve CAPTCHAs, and pass behavioral analysis
Presence Requires a Human
Actual human presence verified through device biometrics (Face ID / Touch ID) cannot be faked by bots
How BotShield Verifies Presence
BotShield uses the device’s built-in biometric and authentication hardware:- Hardware-backed authentication — Face ID, Touch ID, or device passcode via the Secure Enclave
- Real-time interaction — The authentication happens at the moment of the action
- Cryptographic attestation — The result is a signed Human Presence Signal (HPS) token
- CAPTCHA — Solves puzzles (can be automated by CAPTCHA-solving services)
- 2FA — Requires user account and device ownership verification
- Behavior Analysis — Tracks patterns over time (can be mimicked)
- Device Fingerprinting — Identifies devices, not humans
Properties of Presence
Presence is Transient
Presence exists only at the moment of action. It is not stored, tracked, or reused.
Presence is Action-Scoped
Verification is limited to the specific action:- Checking out — verify presence for checkout
- Buying tickets — verify presence for ticket purchase
- Signing up — verify presence for signup
Presence is Consumed
Once verified, the HPS is consumed by the action:- No reuse across actions
- No session persistence
- No cross-platform tracking
Presence Requires Secure Device State
The user’s device must have a system passcode enabled. Without it, BotShield cannot issue a valid attestation. Learn more about device security requirements.What BotShield Returns — Verdict + Reason
A single presence event is binary — the user either passed the biometric check or did not. But platforms need more than binary. A first-time user verifying right now and a long-time user whose MultiPass is still active from a prior session are not the same situation, and elevated-risk actions warrant different handling than standard ones. BotShield resolves this by returning a two-field decision pair on every call to/signal/check or /signal/evaluate:
| Field | Values | Meaning |
|---|---|---|
verdict | pass | No further verification needed — proceed with the action |
verdict | require_presence | Run the full Face ID flow |
reason | multipass_active | Pass on credential continuity (passkey + presence consent + valid TTL) |
reason | presence_fresh | Pass on a fresh Face ID event in the current session window (5 minutes) |
reason | multipass_stale | Standard scope, MultiPass freshness lapsed — verify again |
reason | elevated_requires_presence | Elevated scope demands live proof, even when MultiPass is active |
reason | no_resolution | Unknown user — establish identity first |
What BotShield Does NOT Return to Partners
BotShield internally tracks a user-facing Human Presence tier (New / Stable / Strong / Durable) on the user’s Account tab — but this tier is never returned to partners. Per Engine Spec v3.4 §2.6 + §6.4 the visible tier is presence-only (“how human”) and intentionally separate from MultiPass durability (“how durable”). Partners see only the verdict + reason contract above; the tier informs the user about their own presence trajectory and is not part of any partner integration.Benefits of Presence Verification
Privacy-First
No tracking, profiling, or surveillance
User-Friendly
5-second verification for returning users
Effective
Hardware-backed — stops bots reliably
Flexible
Works for any action type via REST API
Related Concepts
- Trusted Account Signal — Class A/B classification and how mature linkages strengthen MultiPass durability
- Signal Durability — The streak mechanism that drives the MultiPass TTL window
- Device Security — Why device passcode is required
- Action-Scoped Enforcement — How verification is scoped per action and how scopes resolve to standard vs elevated