मुख्य कंटेंट पर जाएं
Didit ने पहचान और धोखाधड़ी के लिए इंफ्रास्ट्रक्चर बनाने हेतु $7.5M जुटाए
Didit
ब्लॉग पर वापस जाएँ
ब्लॉग · 7 मार्च 2026

डिडिट के प्रिमिटिव्स के साथ गो में एक्स्टेंसिबल आइडेंटिटी चेक (HI)

डिडिट के मॉड्यूलर आइडेंटिटी प्रिमिटिव्स का लाभ उठाते हुए, कस्टम आइडेंटिटी चेक के लिए गो में एक लचीली प्लगइन आर्किटेक्चर कैसे डिज़ाइन करें, इसकी खोज करें। यह दृष्टिकोण स्केलेबल, अनुकूलनीय सत्यापन वर्कफ़्लो की अनुमति देता है जो.

द्वारा Diditअपडेट किया गया
extensible-identity-checks-in-go-with-didits-primitives.png

फुर्ती के लिए मॉड्यूलर डिज़ाइनगो में एक एक्स्टेंसिबल प्लगइन आर्किटेक्चर का निर्माण व्यवसायों को अपनी पूरी पहचान सत्यापन प्रणाली को बदले बिना विकसित हो रहे अनुपालन विनियमों और नए धोखाधड़ी वैक्टर के अनुकूल होने की अनुमति देता है।

गो की शक्तियों का लाभ उठाएंगो की मजबूत टाइपिंग, प्रदर्शन और समवर्ती विशेषताएं इसे उच्च थ्रूपुट को संभालने में सक्षम मजबूत और स्केलेबल पहचान सत्यापन सेवाओं को विकसित करने के लिए एक आदर्श भाषा बनाती हैं।

डिडिट प्रिमिटिव्स के साथ कंपोजिबिलिटीडिडिट के एआई-नेटिव पहचान प्रिमिटिव्स, जैसे आईडी सत्यापन, निष्क्रिय और सक्रिय जीवंतता, और एएमएल स्क्रीनिंग को एकीकृत करना, शक्तिशाली, पूर्व-निर्मित घटक प्रदान करता है जिन्हें कस्टम गो प्लगइन्स के भीतर ऑर्केस्ट्रेट किया जा सकता है।

डिडिट का डेवलपर-फर्स्ट दृष्टिकोणडिडिट के स्वच्छ एपीआई, इंस्टेंट सैंडबॉक्स और मॉड्यूलर आर्किटेक्चर एक्स्टेंसिबल सिस्टम बनाने वाले डेवलपर्स के लिए पूरी तरह से उपयुक्त हैं, जो विकास को गति देने के लिए मुफ्त कोर केवाईसी और कोई सेटअप शुल्क नहीं प्रदान करते हैं।

एक्स्टेंसिबल आइडेंटिटी वेरिफिकेशन की आवश्यकता

आज के तेजी से बदलते डिजिटल परिदृश्य में, पहचान सत्यापन (IDV) अब एक स्थिर प्रक्रिया नहीं है। विनियम विकसित होते हैं, नई धोखाधड़ी तकनीकें उभरती हैं, और व्यावसायिक ज़रूरतें बदलती हैं। एक कठोर, मोनोलिथिक IDV प्रणाली जल्दी से एक बाधा बन जाती है, नवाचार में बाधा डालती है और अनुपालन जोखिमों को बढ़ाती है। यही कारण है कि एक एक्स्टेंसिबल प्लगइन आर्किटेक्चर केवल एक विलासिता नहीं बल्कि एक आवश्यकता है, खासकर प्रदर्शनकारी भाषाओं जैसे गो के साथ काम करने वाले डेवलपर्स के लिए।

एक एक्स्टेंसिबल आर्किटेक्चर व्यवसायों को पूरी सेवा को फिर से तैनात किए बिना गतिशील रूप से पहचान जांच को जोड़ने, हटाने या संशोधित करने की अनुमति देता है। यह चपलता क्षेत्र-विशिष्ट केवाईसी (अपने ग्राहक को जानें) आवश्यकताओं के अनुकूल होने, अत्याधुनिक धोखाधड़ी का पता लगाने वाले तंत्र को एकीकृत करने, या नए उपयोगकर्ता ऑनबोर्डिंग प्रवाह के साथ प्रयोग करने के लिए महत्वपूर्ण है। उदाहरण के लिए, एक व्यवसाय को शुरू में बुनियादी आईडी सत्यापन और जीवंतता का पता लगाने की आवश्यकता हो सकती है। बाद में, उन्हें विशिष्ट उत्पादों के लिए आयु अनुमान जोड़ने या वित्तीय लेनदेन के लिए एएमएल स्क्रीनिंग को शामिल करने की आवश्यकता हो सकती है। एक प्लगइन-आधारित प्रणाली इन अतिरिक्त को सहजता से संभालती है।

गो में एक प्लगइन आर्किटेक्चर डिजाइन करना

गो का इंटरफ़ेस-संचालित डिज़ाइन और मजबूत टाइपिंग इसे मजबूत प्लगइन सिस्टम बनाने के लिए एक उत्कृष्ट विकल्प बनाते हैं। मुख्य विचार एक सामान्य इंटरफ़ेस को परिभाषित करना है जिसे सभी पहचान जांच "प्लगइन्स" को लागू करना चाहिए। यह इंटरफ़ेस एक अनुबंध के रूप में कार्य करता है, यह सुनिश्चित करता है कि किसी भी नई जांच को मौजूदा वर्कफ़्लो में सहजता से एकीकृत किया जा सके।

पहचान जांच इंटरफ़ेस को परिभाषित करना

आइए एक पहचान जांच के लिए एक सरल इंटरफ़ेस पर विचार करें:

package main

type IdentityCheckResult struct {
    Passed  bool
    Details string
}

type IdentityChecker interface {
    Name() string
    Execute(data map[string]interface{}) (IdentityCheckResult, error)
}

यहां, IdentityChecker दो विधियों को परिभाषित करता है: प्लगइन की पहचान करने के लिए Name() और वास्तविक जांच करने के लिए Execute(), जो सामान्य इनपुट डेटा लेता है और एक परिणाम देता है। यह अमूर्तन दस्तावेज़ सत्यापन से लेकर बायोमेट्रिक विश्लेषण तक विभिन्न प्रकार की जांच की अनुमति देता है।

डिडिट के प्रिमिटिव्स के साथ कस्टम चेक लागू करना

अब, आइए देखें कि हम इस प्लगइन फ्रेमवर्क के भीतर डिडिट के शक्तिशाली प्रिमिटिव्स का उपयोग करके विशिष्ट पहचान जांचों को कैसे लागू कर सकते हैं। डिडिट का मॉड्यूलर आर्किटेक्चर, स्वच्छ एपीआई और एआई-नेटिव क्षमताएं इन उन्नत सेवाओं को एकीकृत करना सीधा बनाती हैं।

उदाहरण: डिडिट आईडी सत्यापन प्लगइन

दस्तावेज़-आधारित पहचान सत्यापन के लिए, हम एक प्लगइन बना सकते हैं जो डिडिट के आईडी सत्यापन उत्पाद का लाभ उठाता है, जिसमें 220+ देशों में ओसीआर, एमआरजेड और बारकोड स्कैनिंग शामिल है। यह प्लगइन दस्तावेज़ छवियों और डेटा को डिडिट के एपीआई पर भेजेगा और प्रतिक्रिया को संसाधित करेगा।

package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io/ioutil"
    "net/http"
)

type DiditIDVCheck struct{}

func (d *DiditIDVCheck) Name() string {
    return "DiditIDVerification"
}

func (d *DiditIDVCheck) Execute(data map[string]interface{}) (IdentityCheckResult, error) {
    documentImage, ok := data["documentImage"].(string)
    if !ok {
        return IdentityCheckResult{Passed: false, Details: "Missing document image"}, nil
    }

    // In a real application, you'd send the image to Didit's ID Verification API.
    // For this example, we'll simulate a call.
    // Documentation: https://docs.didit.me/core-technology/id-verification

    // Simulate API call to Didit's ID Verification
    // Replace with actual API call and error handling
    fmt.Printf("Calling Didit ID Verification for image: %s...\n", documentImage[:20]) // Truncate for display
    
    // Assume a successful response for demonstration
    if documentImage != "invalid_id_image" {
        return IdentityCheckResult{Passed: true, Details: "ID document verified by Didit."}, nil
    } else {
        return IdentityCheckResult{Passed: false, Details: "ID document verification failed by Didit." + " Invalid image provided."}, 
            fmt.Errorf("Didit ID Verification failed")
    }
}

उदाहरण: डिडिट जीवंतता जांच प्लगइन

डीपफेक और प्रेजेंटेशन हमलों का मुकाबला करने के लिए, जीवंतता जांच आवश्यक है। डिडिट निष्क्रिय और सक्रिय जीवंतता का पता लगाने दोनों प्रदान करता है। एक प्लगइन इसे एकीकृत कर सकता है, एक छोटा वीडियो या छवियों की एक श्रृंखला को संसाधित कर सकता है।

package main

type DiditLivenessCheck struct{}

func (d *DiditLivenessCheck) Name() string {
    return "DiditLivenessDetection"
}

func (d *DiditLivenessCheck) Execute(data map[string]interface{}) (IdentityCheckResult, error) {
    livenessVideo, ok := data["livenessVideo"].(string)
    if !ok {
        return IdentityCheckResult{Passed: false, Details: "Missing liveness video"}, nil
    }

    // Simulate API call to Didit's Liveness Detection
    // Replace with actual API call and error handling
    fmt.Printf("Calling Didit Liveness Detection for video: %s...\n", livenessVideo[:20])

    if livenessVideo != "deepfake_video" {
        return IdentityCheckResult{Passed: true, Details: "Liveness detected by Didit."}, nil
    } else {
        return IdentityCheckResult{Passed: false, Details: "Liveness detection failed by Didit." + " Deepfake detected."}, 
            fmt.Errorf("Didit Liveness Detection failed")
    }
}

प्लगइन्स के साथ वर्कफ़्लो का ऑर्केस्ट्रेशन

एक बार जब आपके पास अपने प्लगइन्स हो जाते हैं, तो आपको उन्हें एक सुसंगत वर्कफ़्लो में ऑर्केस्ट्रेट करने के लिए एक तंत्र की आवश्यकता होती है। डिडिट के ऑर्केस्ट्रेटेड वर्कफ़्लो इसके लिए एक नो-कोड विज़ुअल बिल्डर प्रदान करते हैं, लेकिन यदि आप एक कस्टम गो सेवा बना रहे हैं, तो आप इस तर्क को प्रोग्रामेटिक रूप से प्रबंधित कर सकते हैं।

package main

import "fmt"

// A simple orchestrator
type Workflow struct {
    Checks []IdentityChecker
}

func (w *Workflow) AddCheck(checker IdentityChecker) {
    w.Checks = append(w.Checks, checker)
}

func (w *Workflow) Run(userData map[string]interface{}) ([]IdentityCheckResult, error) {
    var results []IdentityCheckResult
    for _, check := range w.Checks {
        fmt.Printf("\nRunning %s check...\n", check.Name())
        res, err := check.Execute(userData)
        results = append(results, res)
        if err != nil || !res.Passed {
            fmt.Printf("Check %s failed: %s\n", check.Name(), res.Details)
            return results, fmt.Errorf("workflow failed at %s: %w", check.Name(), err)
        }
        fmt.Printf("Check %s passed: %s\n", check.Name(), res.Details)
    }
    return results, nil
}

func main() {
    workflow := &Workflow{}
    workflow.AddCheck(&DiditIDVCheck{})
    workflow.AddCheck(&DiditLivenessCheck{})

    // Example user data
    userData := map[string]interface{}{
        "documentImage": "valid_passport_image_base64",
        "livenessVideo": "valid_liveness_video_base64",
        "name":          "Jane Doe",
    }

    fmt.Println("--- Running successful workflow ---")
    results, err := workflow.Run(userData)
    if err != nil {
        fmt.Printf("Workflow completed with errors: %v\n", err)
    } else {
        fmt.Println("Workflow completed successfully!")
    }
    for _, r := range results {
        fmt.Printf("- %s: Passed = %t, Details = %s\n", r.Name, r.Passed, r.Details)
    }

    // Example of a failing workflow
    fmt.Println("\n--- Running failing workflow (invalid ID) ---")
    failingUserData := map[string]interface{}{
        "documentImage": "invalid_id_image",
        "livenessVideo": "valid_liveness_video_base64",
        "name":          "John Smith",
    }
    failingResults, err := workflow.Run(failingUserData)
    if err != nil {
        fmt.Printf("Workflow completed with errors: %v\n", err)
    } else {
        fmt.Println("Workflow completed successfully!")
    }
    for _, r := range failingResults {
        fmt.Printf("- %s: Passed = %t, Details = %s\n", r.Name, r.Passed, r.Details)
    }
}

यह सरल ऑर्केस्ट्रेटर जांचों को क्रमिक रूप से निष्पादित करता है। एक वास्तविक दुनिया के परिदृश्य में, आप सशर्त तर्क, समानांतर निष्पादन, या पुनः प्रयास जोड़ सकते हैं, जो डिडिट के नो-कोड वर्कफ़्लो बिल्डर की क्षमताओं को दर्शाता है।

गो प्लगइन आर्किटेक्चर के लिए उन्नत विचार

गो में उत्पादन-तैयार प्लगइन आर्किटेक्चर का निर्माण करते समय, इन पहलुओं पर विचार करें:

  • त्रुटि हैंडलिंग: प्रत्येक प्लगइन के लिए मजबूत त्रुटि हैंडलिंग और लॉगिंग लागू करें।
  • कॉन्फ़िगरेशन: प्लगइन्स को गतिशील रूप से कॉन्फ़िगर करने की अनुमति दें (जैसे, एपीआई कुंजी, थ्रेशोल्ड)।
  • प्लगइन लोडिंग: पुनर्संकलन के बिना सच्ची एक्स्टेंसिबिलिटी के लिए, गो के plugin पैकेज (हालांकि इसमें प्लेटफ़ॉर्म सीमाएं हैं) या इंटर-प्रोसेस संचार के लिए बाहरी प्रक्रियाओं/gRPC का पता लगाएं।
  • सुरक्षा: सुनिश्चित करें कि दुर्भावनापूर्ण कोड निष्पादन को रोकने के लिए प्लगइन्स को सैंडबॉक्स किया गया है या ठीक से जांचा गया है।
  • डेटा प्रवाह: प्रत्येक प्लगइन के इनपुट और आउटपुट के लिए स्पष्ट डेटा अनुबंधों को परिभाषित करें।
  • व्हाइट-लेबलिंग: यदि आप उपयोगकर्ता-सामने वाला प्रवाह बना रहे हैं, तो याद रखें कि डिडिट व्यापक व्हाइट-लेबलिंग विकल्प प्रदान करता है, जिससे आप रंग, फ़ॉन्ट, लोगो और यहां तक कि एक कस्टम डोमेन का उपयोग कर सकते हैं, जिससे एक सहज ब्रांड अनुभव सुनिश्चित होता है। यह उपयोगकर्ता के विश्वास को बनाए रखने और सत्यापन प्रक्रिया के दौरान ड्रॉप-ऑफ दरों को कम करने के लिए महत्वपूर्ण है।

डिडिट कैसे मदद करता है

डिडिट को विशेष रूप से इस तरह के मॉड्यूलर, एक्स्टेंसिबल एकीकरण के लिए डिज़ाइन किया गया है। एक एआई-नेटिव, डेवलपर-फर्स्ट पहचान प्लेटफॉर्म के रूप में, डिडिट बिल्डिंग ब्लॉक्स - या "प्रिमिटिव्स" - प्रदान करता है जिसे आपके गो प्लगइन आर्किटेक्चर में सहजता से एकीकृत किया जा सकता है। हमारा मॉड्यूलर आर्किटेक्चर का मतलब है कि आप अपनी ज़रूरत के सटीक सत्यापन घटकों को चुन सकते हैं, चाहे वह आईडी सत्यापन, निष्क्रिय और सक्रिय जीवंतता, 1:1 चेहरा मिलान, एएमएल स्क्रीनिंग और निगरानी, पते का प्रमाण, या आयु अनुमान हो। इनमें से प्रत्येक आपके सिस्टम में एक अलग प्लगइन हो सकता है।

डिडिट मुफ्त कोर केवाईसी की पेशकश करके खड़ा है, जिससे आप बिना किसी अग्रिम लागत के आवश्यक पहचान जांच शुरू कर सकते हैं। हमारे स्वच्छ एपीआई और व्यापक दस्तावेज़ीकरण, एक इंस्टेंट सैंडबॉक्स के साथ, एकीकरण को सहज और तेज़ बनाते हैं। डिडिट का लाभ उठाकर, आप परिष्कृत एआई मॉडल, वैश्विक दस्तावेज़ डेटाबेस और अनुपालन अपडेट को बनाए रखने की जटिलता को कम करते हैं, जिससे आपकी गो सेवा ऑर्केस्ट्रेशन और व्यावसायिक तर्क पर ध्यान केंद्रित कर सकती है। डिडिट का प्रति-सफल-जांच मॉडल और सेटअप शुल्क की अनुपस्थिति एक लचीली, स्केलेबल वास्तुकला के साथ और संरेखित होती है, यह सुनिश्चित करती है कि आप केवल उसी के लिए भुगतान करते हैं जिसका आप उपयोग करते हैं।

शुरू करने के लिए तैयार हैं?

डिडिट को कार्रवाई में देखने के लिए तैयार हैं? आज ही एक मुफ्त डेमो प्राप्त करें

डिडिट के मुफ्त टियर के साथ मुफ्त में पहचान सत्यापित करना शुरू करें।

पहचान और धोखाधड़ी के लिए इंफ्रास्ट्रक्चर।

KYC, KYB, ट्रांज़ैक्शन मॉनिटरिंग और वॉलेट स्क्रीनिंग के लिए एक API। 5 मिनट में इंटीग्रेट करें।

इस पेज को समराइज़ करने के लिए AI से पूछें
गो में एक्स्टेंसिबल आइडेंटिटी चेक: डिडिट के प्रिमिटिव्स.