Skip to content

一款基于 Tauri 框架开发的现代化 Windows 面容识别解锁增强软件。它通过自定义 Credential Provider (DLL) 注入 Windows 登录界面,结合前端 Vue 3 和后端 OpenCV 人脸识别算法,为用户提供类似 Windows Hello 的解锁体验。

License

Notifications You must be signed in to change notification settings

Temparo/FaceWinUnlock-Tauri

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FaceWinUnlock-Tauri

FaceWinUnlock-Tauri 是一款基于 Tauri 框架开发的现代化 Windows 面容识别解锁增强软件。它通过自定义 Credential Provider (DLL) 注入 Windows 登录界面,结合前端 Vue 3 和后端 OpenCV 人脸识别算法,为用户提供类似 Windows Hello 的解锁体验。

下载地址

蓝奏云 密码:5969 推荐:不限速、不用登录、不用下载网盘

百度云 提取码: 2ugj

天翼云 访问码:u9gv

抖音ID: czm529797 提供的公益站点

📖 前言

这个项目的诞生源于一次小小的“心理落差”:

某天,公司新来的同桌入职了,他那台自带红外摄像头的笔记本每次开机只需“看一眼”就能秒进桌面。反观我手里这台性能拉满但摄像头不支持 Windows Hello 的设备,每天还要苦哈哈地敲那一串复杂的密码。

“凭什么他能刷脸,我不行?”

秉着“硬件不够,代码凑”的精神,我决定自己动手整一个。既然系统原生不支持普通摄像头面容解锁,那我就自己写一个注入 Windows 登录界面的组件。这就是 FaceWinUnlock-Tauri 的由来——为了让所有带摄像头的 Windows 设备都能体验到这份“优雅”。

📝 更新记录

版本号 更新日期 更新内容 备注
v0.1.0 2026-01-10 初始版本发布 支持基础面容录入、多账户解锁、系统初始化向导
v0.1.1 2026-01-13 Bug 修复 1. 修复用户名或密码错误时,点击磁贴进入无限循环的bug (#1)
2. 修复不显示页面磁贴时,解锁失败的问题 (#4)
需要重新初始化
v0.2.0 2026-01-19 功能添加、Bug修复 添加按操作调用面容代码的功能
添加面容识别失败后的重试功能(仅按操作生效)
添加面容禁用功能 (#10)
添加重试时间选项
添加静默自启选项
添加版本号显示
修复DLL设置显示磁贴不管用的bug (#15)
修复核心组件的线程无法安全退出的bug
修复核心组件重复创建凭证类的bug
修复每次修改面容后,缩略图会强制启用的bug
修复笔记本不插电源线时,自启失效的bug
可能修复了所有Win11自启不管用的bug (#16) (#17)
优化缩略图的显示状态提示
优化多开时的显示逻辑(会将程序设为焦点)
需要重新初始化
v0.2.1 2026-01-21 Bug修复、系统增强 修复自启不显示窗口的bug
修复在某部分系统上自启不显示托盘的bug
添加密码输入提示
修改重试时间最低为1秒
自启添加失败后的重试机制
需要重新初始化
v0.2.2 2026-01-26 功能添加、增强安全性,优化部分UI @tztztzy提供提供,代码切换tztztzy分支
增加活体检测功能,模型使用通义实验室的人脸活体检测模型-RGB
增加应用密码,需要密码才可进入应用,超过设定时间自动要求重新登录,增强安全性
优化一部分UI
需要重新初始化
v0.3.0 2026-02-03 功能添加、性能优化、Bug修复 添加开机面容解锁的支持 (#25) (#18) (#42) (#40) (#30)
添加解锁失败时记录最后一帧画面的功能
添加服务日志
一致性验证添加活体检测逻辑
修复多面容只识别第1个的bug
修复多账户不能用的问题(由@Xiao-yu233提供
修改所有日志为倒序
修复账户输入密码时取消登录,发生的内存泄漏并导致无法正常解锁的bug (#35)
修复账户输入密码时取消登录,引用计数错乱的bug
修复安装到有空格的路径时,开机自启失败的bug (#25)
大幅优化程序的内存占用问题 (#33) (#40)
优化未检测到人脸的提示
增强活体检测的准确性(默认0.6)
更新登录安全的相关功能 (#21)
修复0xc000007b报错问题 (#43)
需要重新初始化
v0.3.1 2026-02-07 Bug修复 添加用户名和账户类型修改提示
优化活体检测的准确性 (#56) (#51) (#35)
修复Program目录无法读取和写入数据的bug (#50) (#46) (#44)
修复开机时数据库数据读取异常的bug (#60) (#61)
修复开机时延迟时间解锁不能用的bug (#60) (#61)
v0.3.2 2026-02-13 功能添加、性能优化、Bug修复 添加未检测到面容停止识别功能 (#32) (#22) (#73)
添加活体检测开启提示(准确率高后会去除)
添加活体检测时的人脸对齐选项
优化活体检测算法(仍无法与2.2相比) (#64) (#56) (#51) (#35)
修复RAF报错后无法录入人脸的bug (#63)
优化录入人脸未检测到人脸提示 (#58)

📢 重要通知

风险预警: 由于本项目涉及底层 注册表修改Winlogon 进程操作,在极端情况下(如 DLL 崩溃、路径配置错误等)可能会导致 Windows 登录界面无法正常显示,甚至导致无法进入系统桌面

建议: 在部署前仔细阅读程序的弹窗通知,并拍照留档,以便出问题后恢复(虽然概率极小)

重要提示: 密码请输入账户中的密码,非Pin码!很多用户是用Pin解锁的,然后在软件输入的Pin码,会提示账户或密码错误。软件不支持Pin码,请输入账户密码

如果多次提示密码错误,请卸载软件,不要使用,否则微软官方会锁定账户!


🎯 适用范围与安全性说明

  • 安全性警告:本项目基于 2D 面容识别 技术。相比于 Windows Hello 的 3D 结构光或红外活体检测,2D 识别存在被照片、视频绕过的风险。
  • 建议场景:仅建议在对安全性要求不高、追求便捷体验的个人家用电脑或开发机环境使用。严禁用于存储高机密数据的办公或服务器环境。
  • 系统环境:Windows 10/11 64位系统(Win7 64位尚未测试)
  • 注意事项:请勿将本软件用于非法用途,如用于非法用途,请自行负责。

🛠️ 安装与使用

在开始之前,请确保你已经阅读并理解了顶部的 风险预警

  1. 第一步:系统初始化 运行软件后,系统会自动检测摄像头权限及注册表环境。强烈推荐在第2步拍照留档,一旦出错方便恢复。 重要通知 1-2 点击执行后,软件会锁定账户,5秒后自动解锁,请勿手动解锁。解锁成功即初始化完成。

  2. 第二步:个性化设置 初始化成功后,点击首选项,选择一个摄像头设备。 2-1

  3. 第三步:面容录入 点击面容管理->添加新面容,即可添加,图片如下: 3-1 选择下面任意方式添加面容 3-2

  4. 第四步:关联账户 上一步面容添加成功后,输入别名、Windows账户类型,用户名(自动检查)和密码,点击添加即可完成。 4-1 面容列表功能如下图: 4-2

  5. 第五步:测试 按下 Win + L 锁定屏幕,滑动鼠标或按键盘(如果你选的延迟时间,请等待相应的秒数),将调用面容识别代码。 5-1

  6. 第六步:卸载 点击首选项->点击卸载核心组件(不走这一步,直接卸载软件会有残留) 6-1 打开软件安装目录的 uninstall.exe 卸载主程序即可 6-2 最后删除残留的数据库和日志文件,程序卸载完成,无残留文件。 6-3

  7. 附加说明:一致性验证 添加或编辑面容界面,有一致性验证,可以验证当前面容和对比面容的一致性。 7-1 点击后软件将调用摄像头,面容一致性实时显示在右侧。 7-2

  8. 附加说明:性能 这是面容验证时的系统资源占用情况 8-1 后台程序占用情况 8-2

💡 开发计划 (Roadmap)

  • 系统初始化向导
  • 实时摄像头人脸录入
  • 多面容关联单账户
  • 多面容关联多账户(代码提供者:@Xiao-yu233,万分感谢)
  • DLL 和软件的个性化配置
  • Log 日志查看
  • 静默自启
  • 本地账号与联机账户支持
  • 活体检测 (@tztztzy提供
  • 登录安全功能(@tztztzy提供
  • 解锁失败时记录最后一帧画面
  • 交互优化:仅在用户有操作时调用面容识别(26-01-18完成)

后续计划

  • Windows登录凭证加密存储
  • 解锁服务的性能优化(2月13优化了一次,待优化)
  • 日志清除功能
  • 解决睡眠、休眠前进行面容解锁的问题
  • 无面容时添加超时关闭功能
  • 登录密码找回密码的功能
  • 非锁屏时不调用面容识别
  • 活体检测优化(仍无法与2.2相比,待优化)
  • 一键卸载脚本(claude生成了一部分,有机会完善)
  • 检查更新功能(联网的功能暂时不考虑)
  • 识别成功后的动态反馈(做不出来……)
  • 放弃OpenCV,减少70M体积并解决中文目录无法使用问题(考虑中……)

⚠️ 遗留问题 (Known Issues)

以下是目前开发中遇到的技术瓶颈,欢迎有能力的开发者提交 PR 协助修复:

  • 卸载流程简化:目前缺乏全自动卸载脚本(需编写 NSIS 脚本以实现一键清理)。
  • 锁屏 UI 增强:受限于 Windows 锁屏界面隔离机制,暂无法实现类似 Win Hello 的原生动画与动态通知。

✨ 特性

  • 现代化 UI: 基于 Vue 3 + Element Plus 构建,告别传统软件的“土味”界面。
  • 系统级集成: 自动注册 WinLogon 凭据提供程序 (Credential Provider)。
  • 双账户支持: 同时支持本地账户 (Local Account) 与微软联机账户 (MSA) 解锁。
  • 轻量级后端: Rust 后端确保了高效的文件 IO 处理与注册表操作安全性。
  • 隐私保护: 系统凭据通过 SQLite 本地存储,绝不上传云端

🛠️ 技术栈

  • 前端界面: Vue 3 (Composition API), Pinia, Element Plus
  • 后端接口: Rust (Tauri), Windows API
  • 数据库: SQLite 3
  • 面容识别: OpenCV (人脸检测与特征比对)
  • 解锁组件: 基于 Rust 编写的 WinLogon 注入组件 (Credential Provider DLL)

📦 代码库结构

  • WinLogon DLL - 负责与系统登录界面交互的核心组件。
  • 图形化界面 - 负责面容录入、配置管理的主程序。
  • 解锁服务 - 负责处理解锁请求,与 WinLogon DLL 交互。

⚠️ 免责声明

本项目涉及修改 Windows 系统内核登录行为。在使用或二次开发时,请务必了解:

  1. 错误的操作可能导致系统无法正常登录。
  2. 建议在虚拟机 (VMware/Hyper-V) 环境中进行调试。
  3. 作者不对因使用本软件导致的任何数据丢失、系统崩溃或安全漏洞承担责任。

📄 开源协议

本项目采用 MIT License 开源。


如果你觉得这个项目有点意思,欢迎点个 ⭐ Star 关注进度!

About

一款基于 Tauri 框架开发的现代化 Windows 面容识别解锁增强软件。它通过自定义 Credential Provider (DLL) 注入 Windows 登录界面,结合前端 Vue 3 和后端 OpenCV 人脸识别算法,为用户提供类似 Windows Hello 的解锁体验。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 53.8%
  • Vue 33.4%
  • JavaScript 12.2%
  • Other 0.6%