A Windows 11 x64 Credential Provider and background host system that enables facial recognition sign-in and unlock using a standard RGB webcam (built with OpenCV YuNet + SFace).
Warning
CRITICAL SECURITY DISCLAIMER / TECHNICAL LIMITATIONS This software is NOT a secure biometric authentication solution. It is designed solely as a "casual home prank/snooping prevention tool" for single-user home PCs.
- Vulnerable to Photo/Video Spoofing: Since it works with a standard 2D RGB camera (no IR or depth sensor support), it can easily be bypassed by holding up a printed photo or video of your face.
- WANT REAL SECURITY? BUY A WINDOWS HELLO COMPATIBLE IR CAMERA.
- Credentials Wrapper: This tool is not a low-level authentication replacement. It is a convenience helper that decrypts and submits your local account password (secured via DPAPI) when a face match is detected.
- No Hiding of Defaults: It does not disable or hide standard Windows sign-in options (PIN/Password).
- NO WARRANTY OF ANY KIND: This software is provided "as-is" without warranty of any kind, either expressed or implied. Use at your own risk.
- Facial Recognition Sign-In
Automatically starts the camera when the lock screen appears, and signs you in once the face matches the registered template (OpenCV SFace 128-dimensional vector). - PIN Fallback
Provides a fallback PIN (4โ16 alphanumeric/symbolic characters) login UI when facial recognition fails (e.g., in low-light rooms). - Security & Brute-Force Protection
- Passwords are encrypted and stored locally using the Windows Data Protection API (DPAPI).
- PINs are hashed using PBKDF2-SHA256 and verified using constant-time comparison to prevent timing attacks.
- Failsafe lockout: 5 consecutive incorrect PIN attempts will lock out PIN authentication for 30 seconds.
- Basic liveness detection using frame-to-frame pixel difference (optional) and a sliding-window consensus verification (e.g., matching 3 out of 5 consecutive frames).
- Tauri v2 Management GUI
A modern dashboard for configuring credentials, registering PINs, enrolling face templates with live previews, diagnostics, and log viewing. - One-Click Installer
Built with Inno Setup to automate DLL registration and setup runtime directories.
For stability and security, the application is split into a lightweight DLL running inside LogonUI.exe and an isolated helper process doing the heavy CV lifting.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Windows LogonUI.exe โ
โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ FaceLogonProvider.dll (Credential Provider DLL) โ โ
โ โ - Renders UI tiles on the lock screen โ โ
โ โ - Performs secure local PIN validation โ โ
โ โ - Decrypts and serializes password credentials โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
Bidirectional Named Pipe Connection
(\\.\pipe\HomeFaceLogonPipe_[ProcessId]_[SessionNonce])
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ FaceLogonHost.exe (Helper Process running as SYSTEM) โ
โ - OpenCV YuNet face detection & SFace feature extraction โ
โ - Motion-based liveness check, sliding-window consensus โ
โ - Sends scan results back to DLL and terminates on complete โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Adjust parameters in %ProgramData%\HomeFaceLogon\config.json:
| Key | Type | Default | Description |
|---|---|---|---|
enabled |
boolean | false |
Enables/Disables the Credential Provider. |
targetSid |
string | "" |
Target user's Security Identifier (SID) for auto-login. |
cameraIndex |
int | 0 |
Camera device index. |
matchThreshold |
double | 0.363 |
SFace cosine similarity threshold. Higher values are stricter. |
requiredMatches |
int | 3 |
Required match count inside the sliding window. |
windowSize |
int | 5 |
Sliding window size (number of recent frames tracked). |
scanTimeoutMs |
int | 10000 |
Scan timeout in milliseconds before auto-canceling. |
livenessEnabled |
boolean | false |
Enables frame-difference motion check. |
- Run Installer
RunHomeFaceLogonSetup.exeas Administrator to install. - Setup Wizard
The management GUI will launch automatically.- Step 1: Select target user, fetch SID, and input your Windows password.
- Step 2: Choose a secure PIN (4-16 chars) for lock screen fallback.
- Step 3: Face camera to register your face template (takes a few seconds).
- Step 4: Toggle "Enable Facial Recognition Sign-In" to ON.
- Verify
Lock screen (Win + L) to test.
- Visual Studio 2022 (with "Desktop development with C++" workload)
- Node.js (v18+) & npm
- Rust toolchain (for Tauri)
- Inno Setup 6 (for packaging)
Run these scripts in PowerShell to download OpenCV and ONNX models:
# Fetch OpenCV binaries
pwsh tools/fetch-opencv.ps1
# Fetch YuNet & SFace models
pwsh tools/fetch-models.ps1& "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\MSBuild\Current\Bin\MSBuild.exe" HomeFaceLogon.sln /p:Configuration=Release /p:Platform=x64cd src/gui
npm install
npm run tauri buildpwsh tools/build-installer.ps1The output setup file will be generated in installer_output/.
If the login screen freezes or behaves incorrectly, you can bypass the provider:
- Hold
Shiftwhile clicking "Restart" on the lock screen. - Go to: Troubleshoot > Advanced options > Startup Settings > Restart.
- Press
4orF4to enter Safe Mode. - Sign in normally and run this in an Administrator command prompt:
reg add HKLM\SOFTWARE\HomeFaceLogon /v Enabled /t REG_DWORD /d 0 /f
- Boot into Windows Recovery Environment (WinRE) and open a Command Prompt.
- Load the registry hive:
reg load HKLM\TempSoftware C:\Windows\System32\config\SOFTWARE - Disable the provider:
reg add HKLM\TempSoftware\HomeFaceLogon /v Enabled /t REG_DWORD /d 0 /f
- Unload and reboot:
reg unload HKLM\TempSoftware
ไธ่ฌ็ใช RGB Web ใซใกใฉใไฝฟ็จใใOpenCV YuNet + SFace ใง้ก่ช่จผใซใใ Windows ใตใคใณใคใณใใใณใญใใฏ่งฃ้คๆฉ่ฝใๅฎ็พใใ Credential Provider ใจใใใฏใฐใฉใฆใณใใในใใฎใทในใใ ใงใใ
Warning
ใใปใญใฅใชใใฃใซ้ขใใ้่ฆไบ้ ใปๆ่ก็้็ใ ๆฌใฝใใใฆใงใขใฏใ**ๅไบบๆๆใฎ่ชๅฎ PC๏ผๅไธใฆใผใถใผ็ฐๅข๏ผใซใใใใ็ฐกๆ็ใชใคใฟใบใฉใป่ฆใ่ฆ้ฒๆญขใ**ใๅๆใจใใใธใงใผใฏใปใใใผๅใใใผใซใงใใใๅ ็ขใชใปใญใฅใชใใฃๅฏพ็ญใจใใฆใฏๆฉ่ฝใใพใใใ
- ๅ็ใๅ็ปใซใใใชใใใพใๅฏพ็ญใฏใใใพใใ: ไธ่ฌ็ใช2D RGBใซใกใฉใไฝฟ็จใใใใใ้กๅ็ใๅ็ปใใซใกใฉใซใใใใ ใใง็ช็ ดใใใๅฏ่ฝๆงใใใใพใ๏ผ่ตคๅค็ทใปๆทฑๅบฆๆค็ฅ็ญใซใฏ้ๅฏพๅฟ๏ผใ
- ็้ข็ฎใชใปใญใฅใชใใฃใๆฌฒใใใใฐใWindows HelloๅฏพๅฟใฎIRใซใกใฉใใ่ณผๅ ฅใใ ใใใ
- ่ณๆ ผๆ ๅ ฑใฎใฉใใใผ: ๆฌใใผใซใฏWindows Helloใฎใใใชไฝใฌใใซใฎ่ช่จผๆฉๆง่ชไฝใ็ฝฎใๆใใใใฎใงใฏใใใพใใใ้กไธ่ดใๆค็ฅใใ้ใซใๅฎๅ จใซไฟ็ฎกใใใใในใฏใผใ๏ผDPAPIไฟ่ญท๏ผใ่ชๅ็ใซๅพฉๅทใใฆใตใคใณใคใณใไปฃ่กใใๆฏๆดใฆใผใใฃใชใใฃใงใใ
- ๆจๆบๆฉ่ฝใฎ็ถญๆ: Windows ๆจๆบใฎใตใคใณใคใณใชใใทใงใณ๏ผใในใฏใผใ/PIN๏ผใ็กๅนๅใใใ้ ใใใใใใใจใฏใใใพใใใ
- ๅ่ณชใใใณ็กไฟ่จผใซใคใใฆ: ๆฌใฝใใใฆใงใขใฏ็กไฟ่จผ๏ผๅ่ณชไฟ่จผใชใใๅฎๅ จ่ชๅทฑ่ฒฌไปป๏ผใงๆไพใใใพใใๆฌใฝใใใฆใงใขใไฝฟ็จใใใใจใซใใไธๅ ทๅใใใผใฟๆๅคฑใใใฎไปใใใชใ็ดๆฅ็ใป้ๆฅ็ไธๅฉ็ใซๅฏพใใฆใใไฝ่ ใฏไธๅใฎ่ฒฌไปปใ่ฒ ใใพใใใ
- ้ก่ช่จผใตใคใณใคใณ
ใญใใฏ็ป้ขใ่กจ็คบใใใใจใซใกใฉใ่ชๅใง่ตทๅใใ็ป้ฒใใใ้ก็นๅพด้๏ผOpenCV SFace 128ๆฌกๅ ใใฏใใซ๏ผใจไธ่ดใใๅ ดๅใซ่ชๅใญใฐใคใณใใพใใ - PIN ใใฉใผใซใใใฏๆฉ่ฝ
ๆใ้จๅฑใชใฉใง้ก่ช่จผใๅคฑๆใใๆใฎใใใซใ็ป้ขไธใฎๅ ฅๅๆฌใใใญใฐใคใณใงใใ็ฌ่ชใฎPINใณใผใ๏ผ4ใ16ๆๅญใฎๅ่ง่ฑๆฐๅญใป่จๅท๏ผใ่จญๅฎใงใใพใใ - ใปใญใฅใชใใฃไฟ่ญทใจใใซใผใใใฉใผในๅฏพ็ญ
- ใในใฏใผใใฏใญใผใซใซใใทใณใฎใปใญใฅใชใใฃๅข็ใงใใ DPAPI (Data Protection API) ใงๆๅทๅใใใๅฎๅ จใซไฟ็ฎกใใใพใใ
- PIN ใฏ PBKDF2-SHA256 ใงใใใทใฅๅใใใใฟใคใใณใฐๆปๆๅฏพ็ญใๆฝใใๅฎๆฐๆ้ๆฏ่ผใง็ งๅใใใพใใ
- ้้ใฃใ PIN ใ5ๅ้ฃ็ถใงๅ ฅๅใใใจใ30็ง้ PIN ่ช่จผใใญใใฏใขใฆใใใใพใใ
- ในใญใฃใณๆใฎใชใใใพใใ่ปฝๆธใใใใใใใฌใผใ ๅทฎๅใ็จใใๅไฝๆค็ฅ๏ผLivenessๆค็ฅ๏ผใใใใณ ในใฉใคใใฃใณใฐ็ช๏ผ5ใใฌใผใ ไธญ3ใใฌใผใ ไธ่ด๏ผใซใใ้ฃ็ถไธ่ดๅคๅฎใๅฎ่ฃ ใใฆใใพใใ
- Tauri v2 ็ฎก็ GUI ใใผใซ
่ณๆ ผๆ ๅ ฑใฎ่จญๅฎใPIN ็ป้ฒใใซใกใฉใใฌใใฅใผใไผดใ้กๆ ๅ ฑใฎ็ป้ฒใ่จบๆญใในใใใญใฐ้ฒ่ฆงใ่กใใ็ฎก็่ ็จใใใทใฅใใผใใๅๆขฑใใฆใใพใใ - ใฏใณใฏใชใใฏใคใณในใใผใฉใผ
Inno Setup ใ็จใใใใใฑใผใธไฝๆใซๅฏพๅฟใใฆใใใDLL ใฎ็ป้ฒใ ProgramData ใใฉใซใใฎไฝๆใ่ชๅๅใใพใใ
ๆฌใฝใใใฆใงใขใฏๅฎๅฎๆงใจใปใญใฅใชใใฃใฎใใใซใLogonUI ใงๅไฝใใ่ปฝ้ DLL ใจใใซใกใฉ/AI ๅฆ็ใๅฎ่กใใใในใใใญใปในใฎ2ใคใฎใณใณใใผใใณใใซๅ้ขใใใฆใใพใใ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Windows LogonUI.exe โ
โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ FaceLogonProvider.dll (Credential Provider DLL) โ โ
โ โ - Windows ใญใใฏ็ป้ขใงใฎ่ช่จผใฟใคใซ่กจ็คบ โ โ
โ โ - ็ฌ่ชใฎๅฎๅ
จใชใญใผใซใซ PIN ๆค่จผ โ โ
โ โ - ๆๅทๅใในใฏใผใ(secret.bin)ใฎๅพฉๅทใจใทใชใขใฉใคใบ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
ๅๆนๅ Named Pipe ๆฅ็ถ
(\\.\pipe\HomeFaceLogonPipe_[ProcessId]_[SessionNonce])
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ FaceLogonHost.exe (้ก่ช่จผใใใฏใฐใฉใฆใณใใใญใปใน) โ
โ - OpenCV YuNet ใซใใ้กๆคๅบ & SFace ใซใใ็นๅพดๆฝๅบ โ
โ - ๅไฝๆค็ฅ (Liveness), ในใฉใคใใฃใณใฐ็ชๅคๅฎ โ
โ - ในใญใฃใณๅฎไบ/ใฟใคใ ใขใฆใๆใซ็ตๆใ DLL ใซ่ฟๅดใใฆ่ชๅ็ตไบโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
%ProgramData%\HomeFaceLogon\config.json ใซใฆใๅไฝใใฉใกใผใฟใ่ฉณ็ดฐใซ่ชฟๆดใงใใพใใ
| ใญใผๅ | ๅ | ใใใฉใซใๅค | ่ชฌๆ |
|---|---|---|---|
enabled |
boolean | false |
ๆฌใใญใใคใใผใๆๅนใซใใใใ |
targetSid |
string | "" |
่ชๅใตใคใณใคใณๅฏพ่ฑกใจใชใ Windows ใฆใผใถใผใฎ SIDใ |
cameraIndex |
int | 0 |
ไฝฟ็จใใใซใกใฉใใใคในใฎใคใณใใใฏในใ |
matchThreshold |
double | 0.363 |
SFace ใฎใณใตใคใณ้กไผผๅบฆใใใๅคใ้ซใใปใฉๅณๆ ผใซใชใใพใใ |
requiredMatches |
int | 3 |
ไธ่ดใจๅคๅฎใใใใใซใในใฉใคใใฃใณใฐ็ชๅ ใงๅฟ ่ฆใชไธ่ดใใฌใผใ ๆฐใ |
windowSize |
int | 5 |
ไธ่ดๅคๅฎใซไฝฟ็จใใในใฉใคใใฃใณใฐ็ชใฎใตใคใบ๏ผ้ๅปใใฌใผใ ๆฐ๏ผใ |
scanTimeoutMs |
int | 10000 |
ในใญใฃใณ้ๅงใใ่ชๅ็ตไบใใใพใงใฎๆ้๏ผใใช็ง๏ผใ |
livenessEnabled |
boolean | false |
ใใฌใผใ ๅทฎๅใซใใๅไฝๆค็ฅใๆๅนใซใใใใ |
- ใคใณในใใผใฉใผใฎๅฎ่ก
็ฎก็่ ๆจฉ้ใงใคใณในใใผใฉใผ๏ผHomeFaceLogonSetup.exe๏ผใๅฎ่กใใใคใณในใใผใซใ่กใใพใใ - ็ฎก็ใใผใซใฎ่ตทๅ
ใคใณในใใผใซๅฎไบๅพใซ่ตทๅใใใHomeFaceLogon ็ฎก็ใใผใซใใงใปใใใขใใใฆใฃใถใผใใ้ฒใใพใใ- ในใใใ 1: ๅฏพ่ฑกใฆใผใถใผใฎ SID ใ่ชๅๅๅพใใMicrosoft ใขใซใฆใณใใฎใในใฏใผใใๅ ฅๅใใพใใ
- ในใใใ 2: ใญใใฏ็ป้ข็จใฎ PIN๏ผ4ใ16ๆๅญใฎๅ่ง่ฑๆฐๅญใป่จๅท๏ผใ่จญๅฎใใพใใ
- ในใใใ 3: ใซใกใฉใ้ธๆใใฆ้ก็ป้ฒใ้ๅงใใพใใใซใกใฉใใพใฃใใ่ฆใคใใใจใๆฐ็งใง็นๅพด้ใฎๆฝๅบใๅฎไบใใพใใ
- ในใใใ 4: ใ้ก่ช่จผใตใคใณใคใณใๆๅนๅใใใชใณใซใใฆใฆใฃใถใผใใ้ใใพใใ
- ็ขบ่ช
Win + Lใงใญใใฏ็ป้ขใ่กจ็คบใใใซใกใฉใ่ตทๅใใฆ่ชๅใตใคใณใคใณใพใใฏ PIN ใง่งฃ้คใงใใใ็ขบ่ชใใพใใ
- Visual Studio 2022 (C++ ใซใใใในใฏใใใ้็บใฏใผใฏใญใผใ)
- Node.js (v18ไปฅไธ) & npm
- Rust ใใผใซใใงใผใณ (Tauriใใซใ็จ)
- Inno Setup 6 (ใคใณในใใผใฉใผไฝๆๆ)
ไปฅไธใฎในใฏใชใใใๅฎ่กใใฆใOpenCV ใฎใใคใใชใใใณ ONNX ใขใใซใใกใคใซใๅๅพใใพใใ
# OpenCV ใฎใใฆใณใญใผใใจๅฑ้
pwsh tools/fetch-opencv.ps1
# YuNet & SFace ONNX ใขใใซใฎๅๅพ
pwsh tools/fetch-models.ps1& "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\MSBuild\Current\Bin\MSBuild.exe" HomeFaceLogon.sln /p:Configuration=Release /p:Platform=x64cd src/gui
npm install
npm run tauri buildpwsh tools/build-installer.ps1ใใซใใใใใคใณในใใผใฉใผใฏ installer_output/ ใใฃใฌใฏใใชใซ็ๆใใใพใใ
้ก่ช่จผใใใญใใคใใผใฎ่ชคๅไฝใซใใ Windows ใตใคใณใคใณ็ป้ขใๆไฝไธ่ฝใซใชใฃใๅ ดๅใฏใไปฅไธใฎๆ้ ใง็กๅนๅใงใใพใใ
- ใตใคใณใคใณ็ป้ขๅณไธใฎ้ปๆบใขใคใณใณใใฏใชใใฏใใ
Shiftใญใผใๆผใใชใใใๅ่ตทๅใใใฏใชใใฏใใพใใ - ๅ่ตทๅๅพใใใใฉใใซใทใฅใผใใฃใณใฐใ ๏ผ ใ่ฉณ็ดฐใชใใทใงใณใ ๏ผ ใในใฟใผใใขใใ่จญๅฎใ ๏ผ ใๅ่ตทๅใใ้ธๆใใพใใ
- ๅ่ตทๅๅพใใญใผใใผใใฎ
4ใพใใฏF4ใๆผใใใปใผใใขใผใใใง่ตทๅใใพใใ - ใปใผใใขใผใใง้ๅธธ้ใใตใคใณใคใณใใ็ฎก็่
ๆจฉ้ใงใณใใณใใใญใณใใใ้ใใไปฅไธใๅฎ่กใใฆ็กๅนๅใใพใใ
reg add HKLM\SOFTWARE\HomeFaceLogon /v Enabled /t REG_DWORD /d 0 /f
- Windows ใ่ตทๅใใชใๅ ดๅใ่ชๅไฟฎๅพฉ็ป้ขใใใ่ฉณ็ดฐใชใใทใงใณใ ๏ผ ใใใฉใใซใทใฅใผใใฃใณใฐใ ๏ผ ใ่ฉณ็ดฐใชใใทใงใณใ ๏ผ ใใณใใณใ ใใญใณใใใใ้ใใพใใ
- ใฌใธในใใช SOFTWARE ใใคใใไธๆใญใผใซใญใผใใใพใใ
reg load HKLM\TempSoftware C:\Windows\System32\config\SOFTWARE - ๆๅนๅใใฉใฐใ 0 ใซๅคๆดใใพใใ
reg add HKLM\TempSoftware\HomeFaceLogon /v Enabled /t REG_DWORD /d 0 /f
- ใใคใใใขใณใญใผใใใฆ PC ใๅ่ตทๅใใพใใ
reg unload HKLM\TempSoftware