डेटाबेस डंप से कुछ भी उजागर नहीं होता।
हर उपयोगकर्ता का व्यक्तिगत डेटा प्रति-टेनेंट कुंजियों के साथ रेस्ट पर एन्क्रिप्टेड रहता है, जो कभी डेटाबेस तक नहीं पहुँचतीं। लीक हुए स्टोरेज क्रेडेंशियल या चोरी हुए बैकअप से सिर्फ़ सिफरटेक्स्ट मिलता है — ईमेल नहीं, नाम नहीं, फ़ोन नंबर नहीं।
यह कैसे काम करता है
- एन्क्रिप्शन डेटाबेस के बाहर होता है। वैल्यूज़ को HashiCorp Vault Transit के ज़रिए एन्क्रिप्ट और डिक्रिप्ट किया जाता है — एप्लिकेशन कभी की-मटीरियल नहीं रखता, और डेटाबेस कभी कोई की नहीं देखता।
- हर टेनेंट की अपनी कुंजी होती है। किसी टेनेंट को डिलीट करने पर उसकी कुंजी क्रिप्टो-श्रेड हो जाती है, जिससे उस टेनेंट का सारा डेटा स्थायी रूप से अप्राप्य हो जाता है — रो-बाय-रो इरेज़र की ज़रूरत नहीं पड़ती।
- रैंडमाइज़्ड AES-256-GCM हर वैल्यू की सुरक्षा करता है, जिससे समान इनपुट कभी समान सिफरटेक्स्ट नहीं बनाते।
एन्क्रिप्टेड, फिर भी खोजने योग्य
आमतौर पर एन्क्रिप्शन का मतलब खोज सुविधा छोड़ना होता है। यहाँ ऐसा नहीं है। हर एन्क्रिप्टेड वैल्यू के साथ हम keyed-HMAC "ब्लाइंड इंडेक्स" (blind index) टोकन स्टोर करते हैं — जिससे ईमेल से लॉगिन, नाम से एडमिन सर्च, और "acme.com के सभी उपयोगकर्ता" जैसी क्वेरीज़ ऐसे डेटा पर एग्ज़ैक्ट और प्रीफ़िक्स लुकअप के रूप में काम करती हैं जो कभी प्लेन टेक्स्ट में स्टोर नहीं होता। इंडेक्स कीज़ भी HMAC ही हैं: इंडेक्स टेबल का डंप भी कुछ उजागर नहीं करता।
क्या सुरक्षित है
ईमेल पते, पहला और अंतिम नाम, फ़ोन नंबर, कंपनी के नाम, और आपके द्वारा स्टोर किए गए किसी भी कस्टम एट्रिब्यूट — यह सब रेस्ट पर एन्क्रिप्टेड रहता है। पासवर्ड कभी रिवर्सिबल तरीक़े से स्टोर नहीं किए गए (उन्हें एक आधुनिक KDF के साथ वन-वे हैश किया जाता है)। रोल असाइनमेंट, ओपेक ID, और टाइमस्टैम्प व्यक्तिगत डेटा नहीं हैं और सिस्टम को चालू रखने के लिए इन्हें प्लेन टेक्स्ट में छोड़ा जाता है।
जिस ख़तरे के विरुद्ध हमने डिज़ाइन किया
यह परिदृश्य है: एक लीक हुआ स्टोरेज क्रेडेंशियल या उजागर हुआ बैकअप — कोई टेबल्स की एक रॉ कॉपी हासिल कर लेता है। ट्रांसपेरेंट डिस्क-लेवल एन्क्रिप्शन (कस्टमर-मैनेज्ड कीज़) यहाँ काम नहीं आता: यह स्टोर को पढ़ने वाली किसी भी चीज़ के लिए अपने-आप डिक्रिप्ट हो जाता है, इसलिए डंप प्लेनटेक्स्ट में सामने आता है। एप्लिकेशन-लेवल एन्क्रिप्शन मदद करता है — कुंजियाँ Vault में रहती हैं, डेटा से अलग, इसलिए टेबल्स की एक कॉपी सिफरटेक्स्ट की ही कॉपी होती है।
ट्रांज़िट में भी
डेटा रेस्ट के साथ-साथ ट्रांज़िट (TLS 1.2+) में भी एन्क्रिप्टेड रहता है। हमें एंटरप्राइज़ ग्राहकों को NDA के तहत अपने सुरक्षा नियंत्रणों के बारे में विस्तार से बताने में ख़ुशी होगी।
किसी कमज़ोरी की रिपोर्ट करना
कुछ मिला? [email protected] पर ईमेल करें। हमारा मशीन-रीडेबल संपर्क /.well-known/security.txt पर प्रकाशित है।