sgcBiometrics 验证的是人, 而不是 密码。

Windows Hello、指纹传感器和面部识别,集成在原生 Delphi 和 C++ Builder 组件中。sgcBiometrics 直接与 Windows 生物识别框架通信,因此传感器、采集和比对都发生在您的应用所在的这台计算机上。

  • Windows Hello
  • 指纹
  • 面部识别
  • Windows 生物识别框架
  • 100% 原生代码
  • C++ Builder
  • 100%原生代码,不依赖任何云服务
  • 2个组件,一个用于指纹,一个用于面部
  • 18个指纹组件事件
  • 12个面部组件事件
  • 2种传感器池,系统池和私有池
看它运行

两分钟了解 sgcBiometrics。

在 Delphi 和 C++ Builder 应用程序中使用 Windows Hello 面部、指纹和 PIN 身份验证。配有解说和字幕。在您按下播放之前不会下载任何内容。

sgcBiometrics 快速入门

录入、识别,硬件交给 Windows 处理。

  1. 封装 Windows HelloWindows 生物识别框架正是 Windows Hello 使用的那一个,因此机器上现有的读取器或红外摄像头,用 Windows 已有的驱动程序即可工作。
  2. 录入一次调用就能为一个人记录一份模板。传入要录入的手指,并处理 OnEnrollCommit 即可知道是否成功。
  3. 识别调用后,用户触摸传感器,OnIdentify 会告诉您身份、读取它的单元、手指以及拒绝详情。
  4. 一切都是事件会话、传感器位置、已采集和被拒绝的样本、枚举以及错误都以事件形式到达,因此不会阻塞窗体。
  5. 模板存放在哪里可以存放在与 Windows Hello 共享的 Windows 系统数据库中,也可以存放在属于您应用程序的已录入人员数据库中。
身份验证的全过程

读取传感器,验证本人。

在窗体上放一个组件,选择传感器池,然后请求验证。由 Windows 采集,由 Windows 比对,您的事件处理程序会被告知是不是正确的人。

指纹身份验证

通过 Windows 生物识别框架采集并验证指纹。适用于任何兼容 WBF 的指纹传感器,既可使用系统传感器池,也可使用私有传感器池。

面部识别

基于摄像头的人脸检测和在场验证,兼容标准网络摄像头以及用于防欺骗的红外摄像头。

Windows Hello

基于 Windows 10 和 Windows 11 内置的生物识别基础设施实现无密码登录,涵盖 PIN、指纹和面部。

生物特征录入

通过内置的界面提示引导用户完成录入,管理已录入的凭据,并在需要重新登记手指或面部时处理重新录入。

凭据管理

生物识别凭据通过 Windows 凭据管理器存储和管理,支持多个用户和多种凭据类型。

事件驱动 API

OnCaptureSample、OnVerify 和 OnIdentify 是面部组件 12 个事件和指纹组件 18 个事件中的几个,因此扫描永远不会阻塞 VCL 消息循环。

两种传感器池,一套 API。系统池与 Windows 的其余部分共享读取器,私有池则为您的应用程序提供独占访问,适用于自助终端和嵌入式场景。全部功能 →

工作原理

原来是密码提示的地方,只需几行代码。

适用于 Delphi 和 C++ Builder 的设计时 VCL 组件。设置一个处理程序,调用一次,答案就会在事件中到达。

// FingerPrint is a TsgcWinBioFingerPrint dropped on the form
FingerPrint.OnIdentify := DoIdentify;
FingerPrint.Identify;

// Windows does the matching, your handler gets the answer
procedure TForm1.DoIdentify(Sender: TObject;
  const aUnitId: Integer;
  const aIdentity: WINBIO_IDENTITY;
  const aSubFactor: WINBIO_BIOMETRIC_SUBTYPE;
  const aRejectDetail: WINBIO_REJECT_DETAIL);
begin
  case aIdentity._Type of
    WINBIO_ID_TYPE_SID:
      vId := aIdentity.AccountSid.Data;
    WINBIO_ID_TYPE_GUID:
      vId := aIdentity.TemplateGuid.Guid;
  end;
end;
uses
  sgcBiometrics;

FingerPrint.OnEnrollCommit := DoEnrollCommit;

// pass the finger you are recording
FingerPrint.EnrollBiometric(
  WINBIO_ANSI_381_POS_RH_INDEX_FINGER);

procedure TForm1.DoEnrollCommit(Sender: TObject;
  const aIdentity: WINBIO_IDENTITY;
  aIsNewTemplate: Boolean);
begin
  if aIsNewTemplate then
    DoLog('New template committed.')
  else
    DoLog('Template updated.');
end;
uses
  sgcBiometrics, sgcBiometrics_WinBio_Client,
  sgcBiometrics_WinBio_Client_Facial;

procedure TFRMFacial.btnFacialRecognizeClick(Sender: TObject);
begin
  // Facial is a TsgcWinBioFacial dropped on the form
  if not Facial.SessionIsOpen then
  begin
    if Facial.InitializeSensors(10000) then
      if Facial.FacialRecognize then
        DoLog('#Recognized');
  end
  else if Facial.FacialRecognize then
    DoLog('#Recognized');
end;

procedure TFRMFacial.FacialError(Sender: TObject;
  const aError: string; const aCode: Integer);
begin
  DoLog('Error: ' + aError + ' [' + IntToStr(aCode) + ']');
end;
  1. 放入一个组件读取器用 TsgcWinBioFingerPrint,摄像头用 TsgcWinBioFacial。接口相同,事件相同。
  2. 选择传感器池系统池与 Windows 共享传感器。私有池为您的应用程序提供独占访问,适用于自助终端和嵌入式终端。
  3. 录入一次EnrollBiometric 为您传入的手指记录一份模板,OnEnrollCommit 会告诉您它是新建还是更新。
  4. 识别OnIdentify 报告身份(Windows 账户 SID 或模板 GUID),以及单元、手指和拒绝详情。
  5. 按结果分支处理您的代码中不会经过任何指纹图像或面部模板。您的应用程序只需决定如何处理结果。
  • Windows 10 或更高版本
  • Delphi
  • C++ Builder
  • VCL 设计时组件
  • Windows 生物识别框架
  • WBF 指纹传感器
  • 网络摄像头和红外摄像头

已在内部使用 Benss 指纹传感器和 Logitech Brio 4K 网络摄像头验证。预构建的演示可在任何兼容 Windows Hello 的传感器或摄像头上运行。阅读入门指南 →

隐私与安全

生物特征永远不会离开这台计算机。

sgcBiometrics 不是一项服务,而是一组原生组件,调用您的应用程序所在的同一台计算机上 Windows 已有的生物识别基础设施。

您的应用程序与 Windows 生物识别框架通信,再由它与传感器通信:指纹读取器使用 TsgcWinBioFingerPrint,红外摄像头使用 TsgcWinBioFacial。

传感器归 Windows 管理

采集和比对由 Windows 生物识别框架完成,它正是支撑 Windows Hello 的同一套基础设施。您的应用程序只请求验证,不直接处理传感器。

  • 硬件支持
  • 无需分发驱动程序
识别:OnIdentify 处理程序会收到匹配样本的单元 ID、身份类型、身份、手指和拒绝详情。

您的代码收到的是答案

验证和识别事件会交给您一个匹配结果和一个身份,您的应用程序据此分支处理。您的代码中不会经过任何指纹图像或面部模板。

  • OnVerify
  • OnIdentify
模板存放位置:与 Windows Hello 共享的 Windows 系统数据库,或通过 TsgcWinBioStorageFile 和 TsgcWinBioUsersINI 使用您自己的数据库。

凭据保留在 Windows 中

已录入的生物识别凭据由 Windows 存储和管理,因此您的应用程序无需自己再找地方保存。当应用程序需要自己的一组已录入人员时,私有池会把它们与计算机上的其余部分隔离。

  • Windows 凭据管理器
  • 系统池或私有池

没有云参与。无需注册任何 eSeGeCe 服务,也无需配置生物识别 API 密钥。组件是 100% 原生代码,并附带完整源代码,因此您可以准确地看到它们做了什么。需要兼容 Windows Hello 的传感器或摄像头。比较版本 →

适用场景

凡是需要问“这真的是你吗?”的地方

一次生物识别检查只需几行代码,因此凡是现在出现密码提示的地方,都适合用它。

解锁应用程序

在启动时取代登录对话框。用户触摸读取器或看向摄像头,Windows Hello 完成验证,应用程序随即打开。

批准交易

在提交高价值操作之前再次要求指纹,这样无人看管的工作站就无法用来批准该操作。

自助终端和销售点

私有传感器池为您的应用程序提供对读取器的独占访问,这正是自助终端或嵌入式终端所需要的。

解锁签名密钥

在 sgcSign 生成 XAdES 或 PAdES 签名之前,先通过指纹或 Windows Hello 验证,使密钥只能由其所有者使用。sgcSign →

Licensing

一个产品,三个层级。

面向 Delphi 和 C++ Builder 的 sgcBiometrics Professional:支持 Windows Hello 的指纹和面部组件,含完整源代码,二进制文件可免费再分发。按团队规模选择。

Single

一位开发者。指纹、面部识别和 Windows Hello,含完整源代码。

€299 / 1 位开发者

Team

两位开发者。与 Single 是同一个完整产品。

€449 / 2 位开发者

Site

不限开发者人数。与 Single 是同一个完整产品。

€749 / 不限开发者人数

sgcBiometrics 单独许可,同时也包含在涵盖所有 eSeGeCe 产品的 All-Access 订阅中。每份许可证均含 12 个月的更新。

比较层级与价格
Testimonials

开发者怎么说

受到全球各地 Delphi、C++ Builder、Lazarus 和 .NET 开发者的信赖。

非常感谢你们的帮助和支持,我很喜欢你们的组件。
Mark Steinfeld 首席技术官
sgcWebSockets 非常出色,你们的支持也是最棒的!
Christian Meyer 创始人兼首席技术官
你们的 sgcWebSockets 库非常实用,而且易于设置。请继续保持!
Simone Moretti Delphi 开发者

告别密码提示。

用原生组件为您的 Delphi 或 C++ Builder 应用程序添加 Windows Hello、指纹和面部识别,中间没有任何云服务。

eSeGeCe 的更多产品

eSeGeCe 的其他产品

sgcBiometrics 是 eSeGeCe 面向 Delphi、C++ Builder 和 .NET 的组件库之一。它们遵循相同的约定,部署同样免版税。

扩展包、附加组件及更多

博客最新动态

查看全部文章 →

您正在查看 eSeGeCe 的 sgcBiometrics 视角。

换个角度看看 →
30 天退款保证不满意?可在购买后 30 天内申请全额退款。 查看退款政策