> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# KYC向けデバイスフィンガープリントとIPリスクAPI

> DiditのデバイスとIPの分析は、KYC検証中に重複デバイス、不正グループ、VPN、プロキシ、Tor、位置情報の不一致、不審なデバイスを検出します。

Diditのデバイス・IP分析は、デバイスフィンガープリント、重複デバイスの復元、IPインテリジェンス、ジオロケーションのチェックを、検証フローの中で組み合わせた機能です。ユーザーがセッションを変えたり、ブラウザのストレージを消去したり、シークレットウィンドウを開いたり、ネットワーク情報を切り替えたりしても、同じ物理デバイスが複数のアカウントにアクセスしようとしていることを検出できます。

デバイス・IP分析の連携プロンプト
        Copy prompt to clipboard



      
      

\<pre>

\````# Goal
Integrate Didit Device & IP Analysis (device fingerprinting + IP intelligence + geolocation) into your app.

\# Delivery mode
IP Analysis is **session-only**. The Web/Mobile SDK collects the device fingerprint and IP during the hosted flow — there is no standalone /v3/ip-analysis/ endpoint. It runs automatically on every session and does not require a workflow feature toggle for the basic signal set.

\# Steps
1\. (Optional) In the Business Console enable strict-mode rules for IP / device — e.g. "decline on VPN", "review on duplicate device", "decline on country mismatch with document".
2\. Create a session — POST /v3/session/ with { workflow_id, vendor_data, callback }. See /sessions-api/create-session.
3\. Open session.url for the user — the SDK collects fingerprint + IP in-band.
4\. Fetch the decision — GET /v3/session/{sessionId}/decision/ or subscribe to session.status.updated.

curl (create session):
\```bash
curl -X POST 'https://verification.didit.me/v3/session/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"workflow_id": "YOUR_WORKFLOW_ID",
"vendor_data": "user-123",
"callback": "https://yourapp.com/post-kyc"
}'
\```

\# Decision surface
The result lands under `ip_analyses[]` on the decision payload (one entry per IP/device collection point in the workflow). Each entry carries the resolved geo, ASN, VPN / proxy / Tor flags, device fingerprint id, duplicate-device matches, and the warnings array.

\# Status enum (per ip_analyses[].status)
"Not Started" | "In Progress" | "Approved" | "In Review" | "Declined" | "Abandoned" | "Kyc Expired"

\# Warnings (LogWarningChoices.LOCATION)
Heads-up: IP Analysis emits warnings under the **LOCATION** bucket (not "IP_ANALYSIS"). Risk codes include:
VPN_DETECTED, PROXY_DETECTED, TOR_DETECTED, DATACENTER_IP, HIGH_RISK_COUNTRY, LOCATION_MISMATCH_WITH_DOCUMENT, DUPLICATED_DEVICE, POSSIBLE_DUPLICATED_DEVICE, IMPOSSIBLE_TRAVEL, DEVICE_FINGERPRINT_BLOCKLISTED, DEVICE_LINKED_TO_LIVENESS_ATTACK, DEVICE_MODEL_INCONSISTENT.
Full catalogue: /core-technology/ip-analysis/warnings-ip-analysis.

\# Failure modes to handle
\- ip_analyses[] empty — the user blocked the SDK fingerprinting script (privacy extensions, content blockers). Decide whether to fail-closed or fall back to soft signals.
\- VPN_DETECTED / PROXY_DETECTED / TOR_DETECTED — treat per your fraud policy (decline, manual review, additional liveness step).
\- DUPLICATED_DEVICE — same device previously enrolled under a different vendor_data; merge accounts or block per policy.
\- LOCATION_MISMATCH_WITH_DOCUMENT — the IP country does not match the document's issuing country; route to review.

\# See also
\- Canonical schema: /reference/data-models#ip-analysis
\- Per-feature report: /core-technology/ip-analysis/report-ip-analysis
\- Risk catalogue: /core-technology/ip-analysis/warnings-ip-analysis
\- Full integration playbook: /integration/integration-prompt````

\</pre>



      
      

Paste into

この機能は、誤検知のコストが大きい不正防止の判断向けに設計されています。デバイスの完全一致は、安定した永続的な識別子を使います。復元されたデバイスの一致は、v2フィンガープリントのシグナルベクトルと高信頼度のゲートを使うため、Diditは無関係なユーザーを過剰に結び付けることなく、不審な再利用を検出できます。検証結果の読み方を扱うAcademyのレッスンでは、9:49のチャプターでデバイスとIPの分析シグナルを解説しています。[デバイスとIPの分析 — Didit Academy](https://www.youtube.com/embed/7htTWCWsl60?start=589\&rel=0\&playsinline=1)![ジオロケーション、デバイスフィンガープリント、デバイスインテリジェンス、VPN検出を示すDiditのデバイス・IP分析の概要](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/ip-analysis.png?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=a2fbbbdd3d6fed3d759e54f362bf4762)![IP、デバイスフィンガープリント、申告された所在地を相互にチェックするDiditのデバイス・IP分析のアーキテクチャ図](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/ip-analysis-how-it-works.jpg?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=3519ad9ad50091a00db5e09d5197fdfe)## 仕組みデバイス・IP分析は検証セッション中に自動的に実行され、デバイス、ネットワーク、本人情報のコンテキストを、1つのリスク情報にまとめます。**1. デバイスフィンガープリントの取得**検証クライアントは、WebまたはモバイルのデバイスシグナルをプライバシーセーフなV2フィンガープリントのペイロードとして送信します。| データポイント | 説明 |
| - | - |
| **永続的なデバイスID** | ストレージが保持されている場合に、同一デバイスを完全一致で検出するために使うファーストパーティの識別子。 |
| **複合ハッシュ** | 衝突対策を備えた、決定論的な重複チェックに使う、安定したグループ化シグナルのハッシュ。 |
| **シグナルベクトル** | 高信頼度の復元のためにベクトル化した、デバイスとブラウザ/アプリの属性。 |
| **プラットフォームのコンテキスト** | 利用可能な場合の、ブラウザ、OS、アプリ、ハードウェア、WebGL/canvas、メディア、ロケール、タイムゾーン、モバイルの整合性シグナル。 |**2. IPと接続の分析**Diditは、観測された接続データを、ネットワークのリスク情報で補強します。- 国、地域、市区町村、座標によるIPジオロケーション
- VPN、プロキシ、Tor、データセンター、プライベートネットワークの検出
- セッションに許可するIPを指定した場合の、期待IPのチェック
- アプリケーションで設定したIPブロックリストのチェック**3. 重複と復元のマッチング**Diditは、現在のセッションが、別の`vendor_data`の過去のセッションと一致するかを確認します。| チェック | 目的 |
| - | - |
| **IPの重複** | 異なるユーザー間で同じIPアドレスが使われていることを検出します。 |
| **デバイスフィンガープリントの重複** | 同じ永続的なデバイスIDの完全な再利用を検出します。 |
| **デバイスの復元** | 永続IDが変わった場合に、高信頼度のV2フィンガープリントによる復元を検出します。 |
| **衝突ガード** | 無関係なデバイスを結び付けず、品質の低い共有ハッシュを抑制します。 |**4. 位置情報の相互チェック**デバイス・IP分析は、位置のコンテキストを、信頼できる基準点と比較します。- 書類の国と住所の座標
- 期待されるセッションのIPアドレス
- IPの国と都市
- 住所とIPの位置の距離と方向**5. アクションとレポート**リスクのカテゴリごとに個別に設定でき、Diditのあらゆる出力で結果を利用できます。| チャネル | 説明 |
| - | - |
| **ワークフローアクション** | VPN/プロキシ、位置の不一致、IPの重複、デバイスの完全な重複、復元されたデバイスについて、承認、レビュー、拒否のいずれかを設定します。 |
| **ダッシュボード** | Diditコンソールで、警告、一致したセッション、デバイス情報、ネットワークの詳細を確認します。 |
| **WebhookとAPI** | 判定ペイロードで、構造化された警告と一致結果を受け取ります。 |
| **レポート** | 検証PDFに、デバイス・IP分析の詳細をエクスポートします。 |## マッチングモデルデバイス・IP分析は、完全一致と復元による一致を分けているため、不正への対応を安全に調整できます。| レイヤー | 検出する内容 | 誤検知への姿勢 |
| - | - | - |
| **完全一致の永続ID** | 同じファーストパーティのデバイスIDが、別のユーザーのセッションに現れる。 | 最も強いシグナル。`DUPLICATED_DEVICE_FINGERPRINT`に使われます。 |
| **複合ハッシュ** | 同じ決定論的なデバイスハッシュが、別のユーザーのセッションに現れる。 | 衝突検出で保護されており、一般的なWebView/ブラウザのプールは抑制されます。 |
| **V2で復元されたデバイス** | 永続IDは変わったが、豊富なデバイスシグナルが過去のデバイスと高い信頼度で一致する。 | 保守的。厳格なゲートを通過した後にのみ`DEVICE_RECOVERED_HIGH_CONFIDENCE`に使われます。 |
| **IPの再利用** | 同じIPアドレスが複数のユーザーに現れる。 | 文脈依存。不正グループの検出に有用ですが、共有オフィス、世帯、モバイルキャリアでは正当な場合もあります。 |復元されたデバイスのマッチングには、専用のベクトル復元インデックスを使います。このインデックスが利用できない場合、Diditは完全一致の重複チェックを継続し、あいまいな復元候補は出力しません。**ネットワーク**では、同じデータセンター以外のIPインテリジェンスが複数の異なるユーザーまたは法人にわたって現れる場合に、Diditはレジデンシャルプロキシの再利用も強調表示します。グラフには、集計されたリスクシグナル、対象の数、接続タイプ、ISPとASNのコンテキストが表示されますが、生のIPアドレスや他の組織のプロフィールデータは表示されません。## 検出される不正のパターンデバイス・IP分析は、次のような不正の特定と削減に役立ちます。- 複数アカウントの作成と重複アカウントの作成
- 異なる本人情報で同じデバイスを使ったKYC回避の試み
- 共有のデバイスやインフラから多数のアカウントを操作する不正グループ
- ボーナス、紹介、プロモーション、無料トライアルの不正利用
- 同じデバイスの繰り返しによる合成IDのオンボーディング
- マネーミュールのオンボーディングパターン
- 見慣れない、またはリスクの高いデバイスからのアカウント乗っ取りリスク
- クレデンシャルスタッフィングと自動化されたサインアップの試み
- 繰り返されるデバイス/ネットワークのパターンから見えるカードテスト、チャージバック不正、返金不正
- VPN、プロキシ、Tor、データセンター、レジデンシャルプロキシによる回避
- モバイルシグナルが利用できる場合の、デバイスの改ざん、エミュレーターの利用、ジェイルブレイク/ルート化のリスク、アプリのクローン
- 位置情報の偽装と、書類、IP、タイムゾーン、キャリア、デバイスのコンテキスト間の不一致
- ヘッドレスブラウザやスクリプト化されたクライアントによる、ボットを使った検証の試み## 主な機能#### デバイスフィンガープリントと復元- **デバイスの完全な重複の検出**: 異なる`vendor_data`の値を持つセッション間で、同じデバイスIDを検出します。
- **高信頼度の復元**: ストレージの変更やシークレット/プライベートブラウジングで永続IDが変わった場合でも、同じデバイスである可能性が高い関係を復元します。
- **衝突からの保護**: デバイスのハッシュが、多数の異なる永続IDにわたって一般的すぎる場合に、無関係なユーザーを結び付けないようにします。
- **モバイルとWebの両方に対応**: Webブラウザのシグナルと、利用可能な場合は整合性に関するフィールドを含むネイティブモバイルのシグナルを使います。#### IPとネットワークのインテリジェンス- **VPNとプロキシの検出**: 隠蔽または匿名化された接続を特定します。
- **Torとデータセンターの検出**: リスクの高いインフラにフラグを立てます。
- **レジデンシャルプロキシの再利用**: 異なる対象にわたる、住宅用に見えるネットワークの繰り返しの利用を、ネットワークグラフに生のIP値を表示せずに検出します。
- **IPブロックリスト**: IPがアプリケーションのブロックリストに含まれる場合、自動的に拒否します。
- **期待IPの強制**: 観測されたIPを、セッション作成時に指定した期待IPと比較します。#### ジオロケーションと書類の比較- **国の不一致の検出**: 書類の国とIPの国を比較します。
- **ジオフェンシング**: IPジオロケーションに基づき、許可された国からのセッションのみを受け付けます。米国などの国では、州/地域ごとの上書きも可能です。
- **住所の距離チェック**: 書類の住所の座標とIPジオロケーションを比較します。
- **セッション一致のコンテキスト**: スタッフによるレビュー向けに、デバイスと位置の詳細を含む一致したセッションを返します。## アクションの設定ワークフローの設定で、リスクごとにアクションを選びます。慎重なお客様は、まず`recovered_device_action`を`REVIEW`にして、数週間ほど復元されたデバイスの警告を確認し、自社環境での誤検知の傾向を確かめてから`DECLINE`に切り替えることが多いです。| 設定 | 推奨する開始時のアクション | 理由 |
| - | - | - |
| `vpn_detection_action` | `REVIEW`または`DECLINE` | 製品でVPNの利用を許可するかどうかによります。 |
| `ip_mismatch_action` | `REVIEW` | 位置の不一致は強い手がかりですが、正当な場合もあります。 |
| `duplicated_ip_action` | `REVIEW` | 共有ネットワークでは誤検知が起こり得ます。 |
| `duplicated_device_action` | `REVIEW`または`DECLINE` | 複数のユーザーにわたる完全に同一のデバイスの再利用は、強い不正シグナルです。 |
| `recovered_device_action` | `REVIEW` | 高信頼度の復元は意図的に保守的ですが、自動的に拒否する前に監視してください。 |
| `ip_geofencing_action` | `DECLINE` | ジオフェンシングは通常、厳格な法域のルールを表します。制限された場所を手動で振り分けたい場合は`REVIEW`を使います。 |すべてのリスクタグは[デバイス・IP分析の警告](https://docs.didit.me/core-technology/ip-analysis/warnings-ip-analysis.md)を、APIのフィールドは[ワークフローの機能設定](https://docs.didit.me/management-api/workflows/feature-configs.md#device-&-ip-analysis)を参照してください。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.