跳到主要内容
Didit 融资 750 万美元,打造身份与欺诈基础设施
Didit
账户盗用保护

通过人脸验证阻止账户盗用。在风险飙升时立即升级验证。

在攻击者瞄准的关键时刻(转账、密码重置、新设备登录)进行生物识别升级。2秒内出结果,每次事件约 $0.13。每月免费验证500次。

投资方
Y CombinatorRobinhood Ventures
Firecrawl
Slash
Crnogorski Telekom
UCSF Neuroscape
Bit2Me

全球3,000多家组织信赖。

攻击者如何攻击

密码被盗。会话被劫持。选择人脸验证。

撞库、SIM 卡劫持和会话劫持攻击都能绕过密码和一次性验证码。 在操作发生时,用 Didit 升级验证取代它们, 每次调用 $0.10,2秒内出结果,每月免费500次。

工作原理

从注册到验证用户,仅需四步。

步骤 01 / 04

创建工作流

选择您需要的检查项, 身份、活体、人脸比对、制裁名单、地址、年龄、电话、邮箱、自定义问题。在控制台中将它们拖入工作流,或通过我们的 API 发布相同的工作流。根据条件分支,运行 A/B 测试,无需代码。

为解决方案而生 · 基础设施定价

六项功能。一次二次验证。每次事件 约 $0.13。

账户盗用 (ATO) 防御是一个组合方案,而非单一检查。您可以在工作流构建器中为每个工作流切换各项功能,或通过 API 将它们组合起来。
01 · 二次验证触发器

您选择时机。Didit 执行检查。

二次验证策略存在于工作流构建器中, 高价值转账、密码重置、向新目的地付款、新设备登录、地理异常。如果网络信号存在风险,您可以使用设备和 IP 分析进行预门控,仅在必要时进行人脸检查。无需重新部署即可更改规则。
工作流编排模块
02 · 生物识别二次验证

一次二次验证。不到两秒出结果。

与用户注册时通过的生物识别引擎相同, iBeta Level 1 活体攻击检测 (PAD) 以及与存储照片的 1:1 人脸比对。每次会话 $0.10。防钓鱼和防 SIM 卡交换。入门级 Android 设备端到端处理时间低于两秒。
生物识别认证模块
03 · 人脸比对 1:1 vs 注册

比对目标是用户存储的照片。

人脸比对 1:1 将每次二次验证自拍与用户存储的注册照片进行比对。返回 0-1.0 的相似度分数和警告;阈值可根据工作流进行调整。被盗的自拍无法通过, 目标锁定为原始注册照片,而非新捕获的图像。
人脸比对 1:1 模块
04 · 深度伪造防御

打印。回放。面具。深度伪造。全部阻止。

经 iBeta 独立测试,并获得 Level 1 PAD 认证,符合 ISO/IEC 30107-3 完整目录标准。可有效阻止打印照片、屏幕回放、纸质/硅胶/乳胶面具、换脸攻击以及账户所有者的 AI 生成深度伪造。每年重新测试。
活体检测模块
05 · IP + 设备预检查

VPN、数据中心、Tor, 在人脸检查前标记。

在二次验证触发前,对用户的 IP(互联网协议)地址和设备指纹进行评分。返回 0-100 的风险分数以及 VPN、代理、Tor、数据中心、国家和 ASN 标志。每次检查 $0.03,耗时低于 100 毫秒。在受信任设备 + 低风险网络上跳过二次验证。
设备与 IP 分析模块
06 · Webhook 决策

一个 Webhook。三个分支。搞定。

一个签名 Webhook 会带着结果(通过、拒绝、审核中、未完成)到达。在读取正文之前,使用 HMAC SHA-256 验证 X-Signature-V2。每次二次验证的负载相同;相应地分支原始操作。免费提供 200 多个欺诈信号。
Webhook 参考
集成

一个会话。一个签名 Webhook。三个分支。

针对生物识别工作流开启二次验证。读取签名结果。分支执行操作。
POST /v3/session/二次验证
$ curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow_id": "wf_ato_step_up",
    "vendor_data": "user-42",
    "metadata": { "trigger": "high_value_transfer" },
    // base64 KYC enrolment selfie, ≤ 1MB
    "portrait_image": "/9j/4AAQSkZJRgABAQE..."
  }'
201创建时间{ "url": "verify.didit.me/..." }
在 webhook 返回 status: Approved 之前阻止操作。文档 →
POST /webhooks/didit判定结果
// X-Signature-V2 verified upstream
if (payload.status === "Approved") {
  unblockAction(payload.vendor_data);
} else if (payload.status === "Declined") {
  logWarnings(payload.liveness.warnings);
  blockAndAlert(payload.vendor_data);
}
200确定状态:已批准 · 已拒绝 · 审核中 · 未完成
读取 payload 前验证 X-Signature-V2。文档 →
代理就绪集成

一键部署账户盗用防御。

粘贴到 Claude Code、Cursor、Codex、Devin、Aider 或 Replit Agent 中。填写您的技术栈。Agent 将连接触发器、启动升级会话、验证 Webhook 并分支原始操作。
didit-integration-prompt.md
You are integrating Didit account-takeover defence into an application that already has the user signed in. Your job: when a sensitive action fires (large transfer, password reset, payout to a new destination, new-device login, geo anomaly), gate it on a Didit biometric step-up. One API call. One signed webhook. Three branches.

WHY THIS SHAPE
  - Credential stuffing, SIM-swap, and stolen-session-cookie attacks all walk past passwords and SMS one-time codes. A face check at the moment of the sensitive action does not.
  - Didit runs Passive Liveness (the user is alive, present, not a deepfake) plus 1:1 Face Match against the portrait captured at sign-up. A stolen selfie cannot pass — the comparison target is locked to the original enrollment.
  - $0.10 per step-up (Biometric Authentication module) + $0.03 IP pre-check (optional) = around $0.13 per event. Sub-two-second verdict on entry-level Android. 500 verifications free every month.

PRE-REQUISITES
  - Production API key from https://business.didit.me (sandbox key in 60 seconds, no credit card).
  - A webhook endpoint with HMAC SHA-256 verification of the X-Signature-V2 header using your webhook secret.
 HMAC-SHA256 verification MUST run against the raw body bytes (the raw payload as Didit sent it) BEFORE any JSON parsing — re-serialising the parsed body changes whitespace and key order, which invalidates the signature.  - A Workflow Builder workflow that bundles Passive Liveness + Face Match 1:1 (with the user's stored sign-up portrait as the comparison target). Optionally compose Device & IP Analysis ahead of the step-up to pre-gate the check.
  - Persist the user's sign-up portrait — either base64 on your side, or rely on Didit's stored enrollment via vendor_data lookup.

STEP 1 — Decide WHEN to step up (your code, not Didit's)
  Run your usual fraud signals. Common triggers worth a biometric step-up:
    - Wire / crypto transfer above the user's daily limit
    - Password / email reset on a session less than 24h old
    - Payout to a bank account or wallet seen for the first time
    - Login from a new device or new country
    - Velocity anomaly — N actions of type T within window W

  Cheap pre-check (optional, ~100ms, $0.03):
    - Score the user's IP via Device & IP Analysis. If the IP is a residential trusted address with a low risk score AND the device fingerprint matches the user's trusted device, skip the step-up. Otherwise run Step 2.

STEP 2 — Create a biometric step-up session
  POST https://verification.didit.me/v3/session/
  Headers:
    x-api-key: <your api key>
    Content-Type: application/json
  Body:
    {
      "workflow_id": "<wf id bundling Passive Liveness + Face Match 1:1>",
      "vendor_data": "<your user id, max 256 chars>",
      "callback": "https://<your-app>/ato/step-up/callback",
      "metadata": {
        "trigger": "high_value_transfer",
        "action_id": "<your internal action reference>"
      },
      "portrait_image": "<base64 JPEG of the user's stored sign-up portrait, ≤ 1 MB — REQUIRED when the workflow has FACE_MATCH active; the step-up matches the new live selfie against this stored reference>"
    }

  Response: 201 Created with a hosted session URL. Redirect the user there inline (or open it in a webview / Didit mobile SDK). The action stays BLOCKED on your side until the signed webhook lands.

STEP 3 — Read the signed webhook on completion
  Didit POSTs the decision to your callback. Verify X-Signature-V2 (HMAC SHA-256 of the raw request body using your webhook secret) BEFORE reading the JSON.

  Payload (excerpted):
    {
      "session_id": "<uuid>",
      "vendor_data": "<your user id>",
      "status": "Approved",
      "liveness": { "status": "Approved" },
      "face":     { "status": "Approved", "similarity_score": 0.94 },
      "ip_analysis": { "status": "Approved", "score": 11 }
    }

  Session status enum (exact case, Title Case With Spaces): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.

STEP 4 — Branch the original action on status
  Approved      → unblock the sensitive action. Log session_id + similarity score on the audit trail.
  In Review     → hold the action, route to a human review queue.
  Declined      → block the action, log liveness warnings (mask / deepfake / replay / morph), alert the user.
  Not Finished  → invite the user to retry with a fresh session URL.
  Expired       → resend the link; the original session has timed out.
  Abandoned     → the user closed the flow before completing; resend the link.

STEP 5 — (Optional) Pull the full decision payload
  GET https://verification.didit.me/v3/session/{session_id}/decision/
  Headers:
    x-api-key: <your api key>
  Returns the same payload as the webhook plus the structured signals (liveness warnings, face-match similarity, IP / device flags). Use for analyst review.

WEBHOOK EVENT NAMES
  - Sessions: standard session webhook (one endpoint, status field tells you where in the lifecycle).
  - Verify X-Signature-V2 (HMAC SHA-256) on every payload.

CONSTRAINTS
  - Session statuses use Title Case With Spaces (Approved, In Review). Never use UPPER_SNAKE_CASE for session verdicts — that's the Transactions API and lives in a different surface.
  - 1:1 face match's comparison target is the user's STORED sign-up portrait, not a freshly captured one. A stolen selfie cannot pass.
  - iBeta Level 1 Presentation Attack Detection (PAD) certified against the full ISO/IEC 30107-3 catalogue — print, replay, paper / silicone / latex mask, deepfake, morph.
  - The Workflow Builder is where you choose the modules in the step-up — change them in the console without redeploying.
  - 200+ fraud signals are surfaced on every session at no extra cost — read them off the decision payload, don't re-query.

Read the docs:
  - https://docs.didit.me/sessions-api/create-session
  - https://docs.didit.me/core-technology/biometric-auth/overview
  - https://docs.didit.me/core-technology/ip-analysis/overview
  - https://docs.didit.me/integration/webhooks

Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.
合规性设计

一键开启新国家/地区业务。 我们为您解决难题。

我们负责设立当地子公司、获取许可证、进行渗透测试、获得认证,并与所有新法规保持一致。要在新国家/地区发布验证服务,只需轻点开关。已覆盖220多个国家/地区,每个季度进行审计和渗透测试, 是唯一一个被欧盟成员国政府正式认定比线下验证更安全的身份提供商。
阅读安全与合规性档案
SOC 2 · Type II — AICPA · 2026
SOC 2 · Type I — AICPA · 2026
ISO/IEC 27001 — 信息安全 · 2026
欧盟金融沙盒 — Tesoro · SEPBLAC · BdE
FIDO Alliance — 准会员 · 2026
iBeta Level 1 PAD — NIST / NIAP · 2026
GDPR — EU 2016/679
HIPAA — 45 CFR §160 · §164
DORA — EU 2022/2554
MiCA — EU 2023/1114
EBA 远程入驻 — EBA/GL/2022/15
AMLD6 · eIDAS 2.0 — 原生符合欧盟标准
Jugendschutz geprüft — FSM · JMStV §4(2) · 2026

数据证明

数据证明
  • iBeta L1
    独立认证的演示攻击检测, 每年重新测试。
  • <2s
    入门级 Android 设备上的端到端升级验证。
  • ~$0.13
    每次事件, $0.10 生物识别升级,外加 $0.03 可选 IP 预检查。
  • 500
    每个账户每月均享免费验证。
三个层级,一份价目表

免费开始,按需付费,可扩展至企业版。

每月500次免费验证,永久有效。之后仅按模块运行付费。企业版提供定制合同、数据驻留和SLA服务。

免费

$0/ 月 · 无需信用卡

适用于构建、测试和您的首批用户。

开始所需的一切:
  • 每月500次完整KYC验证
  • 身份、活体、人脸匹配、设备和IP验证
  • 200+欺诈信号、黑名单、重复项检测
  • Didit网络内可复用KYC
  • 工作流构建器、案件管理、SDK
  • AI 支持 控制台内 AI 助手、文档和社区支持。
最受欢迎

按需付费

$0.33每次完整 KYC

25+ 模块,价格公开透明。自动享受批量折扣。

包含 免费 的所有功能,以及:
  • AML 筛选和监控,低至 $0.07
  • 按国家/地区和数据层级划分的商业注册定价
  • 交易监控 $0.02 / 次
  • 钱包筛选 $0.15 / 次
  • 自有品牌白标流程
  • AI 支持 控制台内 AI 助手、文档和社区支持。

企业版

定制年度合同

适用于大批量和受监管项目。

包含 按需付费 的所有功能,以及:
  • 年度合同,承诺用量定价
  • 定制法律条款和99.99%正常运行时间SLA
  • 数据驻留、保留、安全审查
  • 按需提供人工审核员
  • 经销商和白标条款
  • 优先人工支持 24/7 共享 Slack 频道,专属客户成功经理。

使用量增长时自动享受批量折扣——无需谈判,无需销售电话。

FAQ

常见问题

Didit 是什么?

Didit 是身份和欺诈基础设施,是我们自己构建产品时所希望拥有的平台:开放、灵活、对开发者友好,因此它能真正融入您的技术栈,而不是一个需要您围绕其进行集成的黑盒。

一个 API 即可涵盖人员验证(KYC,了解您的客户)、企业验证(KYB,了解您的业务)、加密钱包筛选(KYT,了解您的交易)以及实时交易监控,其技术栈旨在实现:

  • 快速:每次会话的 p99 均在 2 秒以内
  • 可靠:已在 220 多个国家/地区的 3,000 多家公司投入生产
  • 安全:符合 SOC 2 Type 1 & Type 2、ISO 27001、GDPR 原生标准,并经西班牙金融监管机构正式认证,比亲自验证更安全

底层支持:14,000 多种文档类型,支持 48 种以上语言,1,000 多个数据源,每次会话提供 200 多个欺诈信号。Didit 基础设施通过每次会话动态学习,并日益完善。

什么是账户盗用攻击?

账户盗用 (ATO) 发生在攻击者获得合法用户账户控制权时, 通常通过被盗凭据、被劫持的会话 cookie 或拦截一次性密码 (OTP) 的 SIM 卡交换。然后,他们会清空钱包、转移资金、更改支付详情,或重置电子邮件并将真实所有者锁定在外。

这种攻击绕过了密码,因为密码本身是正确的。它绕过了短信服务 (SMS) 验证码,因为攻击者控制了电话号码。防御措施是在行动发生时,用攻击者不具备的东西, 合法用户的面部, 来中断它。

为什么短信一次性验证码不再能阻止 ATO?

因为 SIM 卡交换欺诈将短信服务 (SMS) 验证码送到了攻击者的手中。攻击者说服运营商将受害者的号码移植到新的用户识别模块 (SIM);从那时起,银行发送的每个验证码都会到达攻击者的手机上。

2026 年的钓鱼工具包也能实时代理验证码, 用户将其输入虚假页面,工具包将其转发到真实网站,会话随即开启。短信为每个渠道提供一个共享密钥;生物识别技术则为摄像头前的人提供与操作绑定的证明。

我的终端用户验证速度有多快?

整个流程通常在 30 秒内完成, 拿起身份证件,拍摄证件,拍摄自拍,完成。这是市场上最快的速度。传统的 KYC 提供商完成相同流程通常需要超过 90 秒。

在后端,Didit 在p99 下两秒内返回结果,从用户完成自拍到您的 webhook 触发。移动端捕获针对慢速手机和慢速网络进行了优化:渐进式图像压缩、延迟 SDK 加载,以及如果用户从网页端开始,通过二维码一键从桌面端切换到手机端。

生物识别二次验证与生物识别注册有何不同?

注册是首次捕获用户身份, 政府身份证件、光学字符识别 (OCR)、被动活体检测以及作为注册基线的肖像。这是一个一次性的、重量级的流程。

二次验证是轻量级、可重复的版本。相同的活体检测引擎在新自拍上运行;人脸比对 1:1 将新自拍与存储的注册肖像进行比较。无需身份证件,无需 OCR。两秒内完成,每次会话 $0.10。

如果用户失败、放弃或过期,会发生什么?

每个会话都会落入七种明确状态之一,因此您的代码始终知道该怎么做:

  • Approved, 所有检查通过。让用户继续。
  • Declined, 一个或多个检查失败。您可以允许用户重新提交特定的失败步骤(例如,重新拍摄自拍),而无需重新运行整个流程。
  • In Review, 标记为合规审查。在控制台中打开案例,查看所有信号,决定批准或拒绝。
  • In Progress, 用户正在进行中。
  • Not Started, 链接已发送,用户尚未打开。如果长时间未打开,发送提醒。
  • Abandoned, 用户打开了链接但未及时完成。重新激活或使其过期。
  • Expired, 会话链接已过期。创建新会话。

每次状态更改都会触发一个签名的 webhook,因此您的数据库始终保持同步。放弃和拒绝的会话是免费的。

我的客户数据存储在哪里以及如何受到保护?

生产数据默认在欧盟的 Amazon Web Services 上处理和存储。企业合同可根据司法管辖区监管机构的要求,申请其他区域。

全面加密。 所有数据库、对象存储和备份均采用 AES-256 静态加密。每次 API 调用、webhook 和业务控制台会话均采用传输层安全协议 1.3 进行传输加密。生物识别数据在单独的客户主密钥下加密。

保留期限由您控制。 默认保留期限为无限期(无限制),除非您配置较短的期限,可在每个应用程序 30 天到 10 年之间选择,并且您可以随时通过仪表板或 API 删除任何单个会话。

认证:SOC 2 Type 1 & Type 2、ISO/IEC 27001:2022、iBeta Level 1 PAD,以及来自西班牙 Tesoro / SEPBLAC / CNMV 的公开证明,表明 Didit 的远程身份验证比亲自验证更安全。完整报告请访问 /security-compliance。

Didit 是否符合我的行业要求?

Didit 默认符合对身份基础设施至关重要的监管机构要求:

  • GDPR + UK GDPR,控制者/处理者职责划分,已发布完整的《数据处理协议》,已指定主要监管机构(西班牙 AEPD)。
  • AMLD6 + EU AML Single Rulebook,实时筛查 1,300 多个制裁、政治公众人物和负面媒体名单。
  • eIDAS 2.0,已上线五种国家 eID(MitID、瑞典 BankID、Finnish Trust Network、Smart-ID 和 Mobile-ID);EUDI 钱包接入即将推出。
  • MiCA (Markets in Crypto-Assets),适用于加密货币入金通道(on-ramp)、交易所和托管机构。
  • DORA,Digital Operational Resilience Act,欧盟金融服务的运营韧性。
  • BIPA, CUBI, Washington HB 1493, CCPA / CPRA,美国生物识别隐私(伊利诺伊州、得克萨斯州、华盛顿州)和加州消费者隐私。
  • UK Online Safety Act,年龄限制和儿童安全义务。
  • FATF Travel Rule,加密货币转账的发起方和受益方数据,可与 IVMS-101 互操作。

详细备忘录、所有证书、所有监管机构函件:/security-compliance。

我能多快集成并开始验证用户?
  • 60 秒即可在 business.didit.me 获得沙盒账户, 无需信用卡。
  • 5 分钟即可通过 Claude Code、Cursor 或任何编码代理,通过我们的模型上下文协议 (MCP) 服务器完成工作验证。
  • 一个周末即可完成生产就绪的集成,包括签名 webhook 验证、重试以及用户被拒绝时的补救流程。

三种集成路径, 选择最适合您技术栈的:

  • 使用我们的 Web、iOS、Android、React Native 或 Flutter SDK 原生嵌入。
  • 将用户重定向到托管验证页面, 零 SDK。
  • 通过电子邮件、短信、WhatsApp 或任何渠道发送链接, 零前端工作。

相同的仪表板、相同的计费、相同的按成功付费价格适用于所有三种方式。分步指南请访问 docs.didit.me/integration/integration-prompt。

在人脸识别触发之前,我如何预先检查网络?

在二次验证之前进行设备和 IP 分析。每次检查 $0.03,耗时不到 100 毫秒,返回 0-100 的风险评分,以及虚拟专用网络 (VPN)、代理、洋葱路由 (Tor)、数据中心、国家和自治系统编号 (ASN) 标志。

如果网络看起来干净(住宅互联网服务提供商 (ISP)、受信任的设备指纹、无国家/地区切换),则跳过人脸识别。如果评分高或任何标志触发,则运行二次验证。这使得生物识别预算用于真正需要的事件。

每次受保护操作的成本是多少?

两项费用:

  • 生物识别认证二次验证:每次会话 $0.10
  • 设备和 IP 分析预检查(可选):每次调用 $0.03

每次经过全面筛选的敏感操作约 $0.13。每个账户每月前 500 次验证免费, 大多数团队发现他们的二次验证量在最初几周内都在此免费额度内。

无最低消费,无年度承诺,无按席位定价。

哪些行业使用此方案?

此方案适用于任何处理高价值操作的团队。常见的实时模式:

  • 金融科技/数字银行:对超出每日限额的转账和支付账户变更进行二次验证
  • 加密货币交易所:对提款到不在白名单上的钱包进行二次验证
  • 市场平台:对支付到新银行账户和批量列表操作进行二次验证
  • iGaming:对提款和负责任游戏限额覆盖进行二次验证
  • 电信/公用事业:对 SIM 卡携出和地址变更请求进行二次验证

相同的 Workflow Builder,不同的触发器, 一次集成,一个定价方案。

身份与欺诈基础设施。

一个 API 即可实现 KYC、KYB、交易监控和钱包筛选。5 分钟即可集成。

让 AI 总结此页面