CIO, CTO और सुरक्षा टीमों के लिए
तकनीकी आर्किटेक्चर
क्या कहाँ चलता है, हम कौन-सा डेटा रखते हैं, वह कैसे सुरक्षित है और आपके सिस्टम कैसे जुड़ते हैं। नीचे सब कुछ उस कोड और इन्फ्रास्ट्रक्चर के आधार पर है जो आज चल रहा है; नियोजित चीज़ें अलग से बताई गई हैं।
- होस्टिंग
- मुंबई, भारत
- हम रखते हैं
- सहमति रिकॉर्ड, आपके ग्राहकों का डेटा नहीं
- हस्ताक्षर
- हार्डवेयर सुरक्षा मॉड्यूल (HSM) में ECDSA P-256 + ML-DSA-65 (पोस्ट-क्वांटम)
- डेटाबेस
- प्रबंधित रिलेशनल डेटाबेस, मल्टी-ज़ोन
सिस्टम का अवलोकन
तीन तरह के उपयोगकर्ता एज के ज़रिए एक ही प्लेटफ़ॉर्म तक पहुँचते हैं। एप्लिकेशन सेवाएँ निजी सबनेट में चलती हैं; डेटा, कुंजियाँ और लॉग मुंबई क्षेत्र से बाहर नहीं जाते।
एक सहमति, शुरू से अंत तक
- 1
अनुरोध
आपका बैकएंड सूचना और आपके ग्राहक संदर्भ के साथ POST /v1/consent-requests कॉल करता है और एक होस्टेड सहमति लिंक पाता है।
- 2
सूचना
व्यक्ति लिंक खोलता है, साइन इन से पहले ही मदवार सूचना पढ़ता है, कोड से साइन इन करता है और हर उद्देश्य अलग से चुनता है।
- 3
रिकॉर्ड
एक ही डेटाबेस ट्रांज़ैक्शन में हम सहमति सहेजते हैं और एक हस्ताक्षरित, हैश-शृंखलित लेजर इवेंट जोड़ते हैं। व्यक्ति को रसीद मिलती है।
- 4
जाँच
प्रोसेस करने से पहले आपके सिस्टम उस व्यक्ति और उद्देश्य के लिए POST /v1/consents/verify कॉल करते हैं।
- 5
वापसी
व्यक्ति एक टैप में सहमति वापस लेता है। आपको हस्ताक्षरित वेबहुक मिलता है; आपकी पुष्टि उसकी टाइमलाइन पर दर्ज होती है।
तकनीकी स्टैक
-
सहमति API
gunicorn पर Python 3.12, Django और Django REST Framework। एक मॉड्यूलर मोनोलिथ: पहचान, टेनेंट, कैटलॉग, सहमति, लेजर, रसीद, सत्यापन, अधिकार और इंटरऑप अलग मॉड्यूल हैं, हर एक के अपने रूट, जॉब और SQL स्कीमा।
-
वर्कर
वही कोडबेस, अलग सेवा के रूप में: सहमति की समाप्ति, ट्रांज़ैक्शनल आउटबॉक्स से वेबहुक, लेजर अखंडता जाँच और एंकरिंग।
-
डेटा
प्रबंधित रिलेशनल डेटाबेस, संस्करणित माइग्रेशन के साथ सीधे SQL से। पृष्ठभूमि का काम उसी डेटाबेस के ट्रांज़ैक्शनल आउटबॉक्स से चलता है, इसलिए सेवाओं के बीच कोई इवेंट नहीं खोता।
-
वेब ऐप
React और Vite सिंगल-पेज ऐप: व्यक्ति का डैशबोर्ड, होस्टेड सहमति पेज, व्यवसाय कंसोल और डेवलपर पोर्टल।
-
मोबाइल ऐप
Android और iOS के लिए Expo / React Native, वेब डैशबोर्ड जैसी ही सुविधाओं के साथ।
-
इन्फ्रास्ट्रक्चर
हर क्लाउड संसाधन Terraform में परिभाषित है, dev, sandbox और production के अलग-अलग स्टैक के साथ।
डेटा का स्थान और हम क्या रखते हैं
सारा व्यक्तिगत डेटा, बैकअप और लॉग भारत (मुंबई) में ही रखे और प्रोसेस किए जाते हैं। API किसी और क्षेत्र में शुरू ही नहीं होता। हम सहमति रिकॉर्ड रखते हैं, वह ग्राहक डेटा नहीं जिसे आप प्रोसेस करते हैं। वैश्विक रूप से केवल CDN के वेब फ़ायरवॉल नियम और TLS प्रमाणपत्र हैं; उनमें कोई व्यक्तिगत डेटा नहीं होता।
| डेटा | कहाँ | सुरक्षा |
|---|---|---|
| व्यक्ति का मोबाइल नंबर (साइन-इन के लिए) | डेटाबेस | कुंजी प्रबंधन सेवा की डेटा कुंजी से AES-256-GCM एनवेलप एन्क्रिप्शन; कुंजीबद्ध हैश से खोज |
| कंसोल उपयोगकर्ता का नाम और ईमेल | डेटाबेस | वही एनवेलप एन्क्रिप्शन |
| आपका ग्राहक संदर्भ | डेटाबेस | आपके संगठन तक सीमित कुंजीबद्ध हैश; मूल मान कभी नहीं सहेजा जाता |
| सहमति लेजर | डेटाबेस + अपरिवर्तनीय स्टोरेज | केवल छद्मनाम, केवल जोड़ा जा सकता है, हस्ताक्षरित और हैश-शृंखलित |
| सेशन, कोड, API कुंजियाँ | डेटाबेस | गोपनीय मानों के केवल SHA-256 या HMAC हैश |
| एप्लिकेशन लॉग | लॉग सेवा | व्यक्तिगत डेटा हटाया गया, केवल id, एन्क्रिप्टेड, 400 दिन तक |
सुरक्षा नियंत्रण
-
एन्क्रिप्शन
CDN और लोड बैलेंसर पर TLS 1.2+ (1.3 प्राथमिक), डेटाबेस तक TLS। व्यक्तिगत डेटा के लिए फ़ील्ड-स्तर AES-256-GCM; डेटाबेस, स्टोरेज, लॉग और बैकअप प्रबंधित कुंजियों से एन्क्रिप्टेड।
-
कुंजी प्रबंधन
लेजर हस्ताक्षर कुंजियाँ हार्डवेयर सुरक्षा मॉड्यूल से कभी बाहर नहीं जातीं। गोपनीय मान एक प्रबंधित सीक्रेट्स वॉल्ट में रहते हैं। डेवलपमेंट कुंजियों के साथ या लाइव WhatsApp साइन-इन कोड प्रदाता के बिना production शुरू नहीं होता।
-
मज़बूत साइन-इन
कंसोल सेशन के लिए मज़बूत कारक ज़रूरी है: पासकी, ऑथेंटिकेटर ऐप या सत्यापित मोबाइल पर कोड। पासवर्ड argon2id से हैश होते हैं। OpenID Connect या SAML 2.0 से SSO।
-
API पहुँच
256-बिट API कुंजियाँ, केवल हैश के रूप में सहेजी गईं, सीमित दायरे वाली और रद्द करने योग्य, सैंडबॉक्स और लाइव कुंजियाँ अलग। वेबहुक HMAC-हस्ताक्षरित होते हैं।
-
टेनेंट पृथक्करण
हर क्वेरी कॉल करने वाले संगठन या व्यक्ति तक सीमित है, स्वचालित पृथक्करण परीक्षणों के साथ। हर संगठन के लिए छद्मनाम अलग हैं, इसलिए रिकॉर्ड अलग व्यवसायों के बीच जोड़े नहीं जा सकते।
-
दुरुपयोग से सुरक्षा
एज पर वेब एप्लिकेशन फ़ायरवॉल, साइन-इन कोड पर प्रति-IP और प्रति-नंबर सीमा, और लिखने वाले अनुरोधों पर आइडेम्पोटेंसी कुंजियाँ।
-
सुरक्षित डिलीवरी
हर बदलाव पर Bandit, Semgrep, pip-audit, pnpm audit, Trivy और Terraform सत्यापन चलते हैं। distroless कंटेनर निजी सबनेट में non-root और read-only फ़ाइल सिस्टम के साथ चलते हैं।
-
आश्वासन दस्तावेज़
STRIDE थ्रेट मॉडल, OWASP ASVS लेवल 2 चेकलिस्ट, DPIA टेम्पलेट और पेनिट्रेशन-टेस्ट का दायरा, NDA के तहत आपकी सुरक्षा टीम के साथ साझा।
ऐसा प्रमाण जिसे कोई भी जाँच सके
-
हैश-शृंखलित लेजर
हर दी गई सूचना, अनुमति, बदलाव, वापसी और पुष्टि उसी ट्रांज़ैक्शन में जोड़ी जाती है जिसमें बदलाव होता है, फिर उसे कैनोनिकल (RFC 8785) बनाकर हैश किया जाता है और पिछले इवेंट से जोड़ा जाता है। डेटाबेस ट्रिगर किसी भी बदलाव या मिटाने को रोकते हैं, और पूरी शृंखला हर 10 मिनट में दोबारा जाँची जाती है।
-
हार्डवेयर में हस्ताक्षर
हर इवेंट हैश पर हार्डवेयर सुरक्षा मॉड्यूल के भीतर ECDSA P-256 से हस्ताक्षर होता है। सार्वजनिक कुंजियाँ JWKS के रूप में प्रकाशित हैं, इसलिए कोई भी, ब्राउज़र में भी, हस्ताक्षर जाँच सकता है।
-
क्वांटम-तैयार हस्ताक्षर
उसी हैश पर ML-DSA-65 से भी हस्ताक्षर होता है, जो NIST का पोस्ट-क्वांटम मानक (FIPS 204) है। ECDSA को आज हर ब्राउज़र जाँच सकता है; ML-DSA भविष्य के ऐसे क्वांटम कंप्यूटर के सामने भी सुरक्षित रहता है जो ECDSA को तोड़ सकता है। रसीद की जालसाज़ी के लिए दोनों को तोड़ना होगा।
-
एंकर और टाइमस्टैंप
इवेंट RFC 6962 Merkle ट्री में बैच होकर सात साल की अवधि वाले write-once (WORM) स्टोरेज में लिखे जाते हैं और उन पर टाइमस्टैंप (RFC 3161) लगता है, हर इवेंट के लिए समावेशन प्रमाण के साथ। फ़िलहाल टाइमस्टैम्प एक स्थानीय (डेवलपमेंट) प्राधिकरण से लगते हैं; बाहरी RFC 3161 टाइमस्टैम्पिंग लाइव API के साथ शुरू होगी।
-
स्वतंत्र सत्यापन
लोगों को JSON और PDF/QR रसीदें मिलती हैं। कोई ऑडिटर, बोर्ड या अदालत सार्वजनिक सत्यापन पेज पर या ओपन-सोर्स cmverify टूल से, हम पर भरोसा किए बिना, कोई भी रसीद जाँच सकती है।
आपके सिस्टम कैसे जुड़ते हैं
-
REST API
OpenAPI दस्तावेज़, RFC 7807 त्रुटियों और आइडेम्पोटेंसी कुंजियों के साथ संस्करणित /v1 JSON API।
-
SDK
Node.js, Python, Java और Go, रीट्राई, टाइप्ड त्रुटियों और वेबहुक हस्ताक्षर जाँच के साथ।
-
वेबहुक
लगभग दो दिन तक रीट्राई और dead-letter स्थिति वाले HMAC-SHA256 हस्ताक्षरित इवेंट, ट्रांज़ैक्शनल आउटबॉक्स से भेजे जाते हैं ताकि कोई छूटे नहीं।
-
होस्टेड पेज और विजेट
लोगों को हमारे होस्टेड सहमति पेज पर भेजें, या सहमति विजेट अपनी साइट में लगाएँ।
-
सैंडबॉक्स
लाइव जैसा ही, अलग कुंजियों और अलग स्टैक के साथ, ताकि परीक्षण असली रिकॉर्ड से न मिलें।
-
एंटरप्राइज़ साइन-इन
आपके कर्मचारी आपके अपने आइडेंटिटी प्रोवाइडर से कंसोल में साइन इन करते हैं।
उपलब्धता और संचालन
-
स्टेटलेस सेवाएँ
API और वर्कर लोड बैलेंसर के पीछे तीन availability zone में प्रबंधित कंटेनर के रूप में चलते हैं, CPU के आधार पर ऑटोस्केलिंग के साथ।
-
डेटाबेस की मज़बूती
35 दिन की point-in-time recovery और deletion protection के साथ मल्टी-ज़ोन प्रबंधित डेटाबेस; कोई cross-region replication नहीं, इसलिए बैकअप भारत में ही रहते हैं। लक्ष्य: RPO 5 मिनट या कम, RTO एक घंटा या कम।
-
लॉगिंग और ऑडिट
request id वाले संरचित JSON लॉग, इन्फ्रास्ट्रक्चर ऑडिट ट्रेल, हर कंसोल व ऑपरेटर कार्रवाई का केवल-जोड़ने-योग्य ऑडिट लॉग, और त्रुटियों, लेटेंसी, डेटाबेस लोड व क्यू पर अलार्म जो ऑन-कॉल टीम तक जाते हैं। लॉग 400 दिन तक रखे जाते हैं।
-
क्षमता
सहमति जाँच पढ़ने की क्रिया है और API स्तर के साथ बढ़ती है। लिखने की क्रियाएँ एक हस्ताक्षरित शृंखला से होकर जाती हैं, आज लगभग 100–200 प्रति सेकंड; अधिक मात्रा के लिए chain sharding और batch signing नियोजित हैं।
डीपीडीपी अधिनियम से मिलान
सूचना (धारा 5)
हर उद्देश्य के लिए मदवार, संस्करणित सूचनाएँ, अंग्रेज़ी और आठवीं अनुसूची की सभी 22 भाषाओं में। हर सहमति दिखाए गए सटीक संस्करण से जुड़ी होती है।
सहमति (धारा 6)
हर उद्देश्य अलग से चुना जाता है; वापसी देने जितनी ही आसान, और वेबहुक व पुष्टि के साथ आप तक पहुँचती है।
बच्चे और अभिभावक (धारा 9)
आयु जाँच, DigiLocker से अभिभावक के वयस्क होने का सत्यापन, और बच्चों के लिए ट्रैकिंग या लक्षित विज्ञापन वाले उद्देश्य नहीं।
सुरक्षा और उल्लंघन (धारा 8)
ऊपर दिए नियंत्रण, साथ में उल्लंघन रजिस्टर, लोगों को सूचना और बोर्ड को 72 घंटे की रिपोर्ट की ट्रैकिंग।
अधिकार और शिकायतें (धारा 11–14)
जानकारी, सुधार और मिटाने के अनुरोध, जवाब की समय-सीमा वाली शिकायतें, और नामांकन।
सहमति प्रबंधक के रिकॉर्ड
हस्ताक्षरित, सत्यापन योग्य रिकॉर्ड, कम से कम सात साल तक रखने के लिए बनाए गए।
स्थिति और आगे क्या
- myconsentapp एक प्रस्तावित सहमति प्रबंधक है: डेटा संरक्षण बोर्ड में अभी पंजीकृत नहीं, और 13 नवंबर 2026 को पंजीकरण खुलने पर आवेदन करेगा।
- अन्य सहमति प्रबंधकों के साथ इंटरऑपरेबिलिटी एक सिम्युलेटेड सहमति प्रबंधक पर दिखाई गई है; लाइव जुड़ाव के लिए साझेदार समझौते चाहिए।
- प्लेटफ़ॉर्म के स्वतंत्र प्रमाणन का दायरा एक ऑडिटर के साथ तय किया जा रहा है।
- कुछ सौ प्रति सेकंड से अधिक लिखने की मात्रा के लिए chain sharding।
आर्किटेक्चर या सुरक्षा समीक्षा की योजना बना रहे हैं?
हम आपकी टीम को डिज़ाइन समझाते हैं और NDA के तहत थ्रेट मॉडल, ASVS चेकलिस्ट, DPIA टेम्पलेट और पेनटेस्ट का दायरा साझा करते हैं।