Repository navigation
Releases: HasBrain/FaceUnlock
Release list
v1.1.0 - FaceUnlock for macOS
Fixed: "The application can't be opened" & Keychain errors
v1.0.0 was signed with a provisioning profile that expired after 7 days, causing macOS to block the app entirely. This release fixes the signing permanently - no more expiry, no more blocked launches.
Also fixed:
- Touch ID now correctly prompts on every app launch
- Universal binary (Apple Silicon + Intel)
Security hardening
- Authoritative lock-state check before password injection uses CGSessionCopyCurrentDictionary (can't be spoofed by user-session apps) in addition to the notification-based flag.
- Pre-injection lock re-check - closes the race between "face matched" and "password typed" if the screen state changed during the scan.
Upgrading from v1.0.0?
You may see a keychain access prompt once after upgrading. Click "Always Allow" on both prompts, then re-enter your Mac password in the app's Settings tab.
If your previous enrollment was working fine, you can keep using it. If you notice accuracy has dropped in different lighting, Reset → Capture for a fresh enrollment (which now uses the new 5-point alignment and 2-second stable capture). Then use Add Captures across different lighting over the next few days for full robustness.
v1.0.0 - FaceUnlock for macOS
Face-recognition unlock daemon for macOS. Wake the display, press Space/Return on the lock screen, and FaceUnlock types your password for you. Everything runs on-device - no network, no telemetry.
Highlights
- ArcFace on the Apple Neural Engine : 7-pose enrollment, landmark-aligned 112x112 crops, best-of-N frame averaging, TTA flip, CLAHE + gamma exposure normalization for reliable indoor matching.
- Working distance ~20–70cm with ROI filtering so background people are ignored.
- Movement-based liveness: flat photos and screenshots can't pass.
- AES-GCM encryption of both password and enrolled embeddings, session key held in the Keychain behind Touch ID.
- Hardened Runtime + PT_DENY_ATTACH in release. Zero network, zero AppleEvents entitlements.
- Menu bar agent: Dock icon optional.
Requirements
- macOS 14 (Sonoma) or later, Apple Silicon recommended
- Camera + Accessibility permission
- Touch ID or a device password
See the README for setup, threat model, and architecture.