जॉन्स हॉपकिन्स में कंप्यूटर विज्ञान के क्रिप्टोग्राफी-केंद्रित प्रोफेसर मैट ग्रीन कहते हैं, एन्क्रिप्टेड स्पेस, कुछ अर्थों में, सिग्नल प्रोटोकॉल की अगली पीढ़ी है, लेकिन अधिक जटिल और पूरी तरह से फीचर्ड टूल के लिए जो मैसेजिंग और कॉल से परे है। “उन्होंने एक ऐसी प्रणाली बनाई है जो एंड-टू-एंड एन्क्रिप्शन का एक प्रकार का विस्तार है, जहां आपके पास एंड-टू-एंड एन्क्रिप्टेड सहयोग करने के लिए एक वास्तविक वास्तुकला है,” ग्रीन कहते हैं, जिन्होंने एन्क्रिप्टेड स्पेस प्रोजेक्ट और एक प्रोटोटाइप एप्लिकेशन की रूपरेखा तैयार करने वाले एक श्वेत पत्र की समीक्षा की। “आप इसे सहयोग ऐप्स के लिए सिग्नल प्रोटोकॉल के रूप में सोच सकते हैं।”
हालाँकि, सिग्नल के विपरीत, एन्क्रिप्टेड स्पेस समूह ने जो कोड जारी किया है, वह फिलहाल एक भी उपयोग के लिए तैयार एप्लिकेशन नहीं है। इसके बजाय, यह एक कोड रिपॉजिटरी है जिसकी समीक्षा करने के लिए समूह क्रिप्टोग्राफी शोधकर्ताओं और डेवलपर्स को आमंत्रित कर रहा है, जिसका लक्ष्य अंततः कोडर्स को अपने स्वयं के एन्क्रिप्टेड सहयोगी ऐप बनाने की अनुमति देना है – लेकिन किसी भी क्रिप्टोग्राफी ज्ञान की आवश्यकता के बिना। “हम इसे बनाना चाहते हैं इसलिए डेवलपर के पास कोई कारण नहीं है नहीं अपने एप्लिकेशन को एंड-टू-एंड एन्क्रिप्टेड बनाना चाहते हैं, क्योंकि यह बहुत आसान हो जाता है,” ट्रैप कहते हैं।
लॉग बदलें और शून्य-ज्ञान रोल-अप
एन्क्रिप्टेड स्पेस का लक्ष्य एंड-टू-एंड एन्क्रिप्टेड ऐप्स की एक महत्वपूर्ण सीमा से निपटना है: क्योंकि सर्वर उपयोगकर्ताओं के डेटा को डिक्रिप्ट नहीं कर सकता है, इसलिए उस जानकारी का कोई भी हेरफेर उपयोगकर्ताओं के डिवाइस पर होना चाहिए। यह काफी अच्छी तरह से काम करता है जब ऐप दो उपयोगकर्ताओं के फोन को जोड़ने वाला एक पाइप है, जिनमें से प्रत्येक में उनकी बातचीत को डिक्रिप्ट करने के लिए एक कुंजी होती है। लेकिन जब ऐप एक सहयोगी प्लेटफ़ॉर्म होता है जिसमें दर्जनों या सैकड़ों उपयोगकर्ता एक साथ काम करते हैं, तो एंड-टू-एंड एन्क्रिप्शन का वह मॉडल एक गंभीर बाधा पैदा करता है: ऐप केवल उपयोगकर्ताओं की जानकारी को सर्वर पर संग्रहीत नहीं कर सकता है और इसे उस केंद्रीकृत स्थान में हेरफेर नहीं कर सकता है जैसा कि यह स्लैक या Google डॉक्स जैसे अनएन्क्रिप्टेड प्लेटफ़ॉर्म के लिए होगा।
एन्क्रिप्टेड स्पेस एक नया मॉडल पेश करता है: इसके साथ बनाया गया एक ऐप एक केंद्रीकृत सर्वर से डेटा का प्रबंधन करता है और उपयोगकर्ताओं को इसे एन्क्रिप्टेड रखते हुए सामूहिक रूप से उस जानकारी में बदलाव करने देता है। अधिक विशेष रूप से, एन्क्रिप्टेड स्पेस एक परिवर्तन लॉग रखता है – एन्क्रिप्टेड डेटा में प्रत्येक परिवर्तन का एक रिकॉर्ड जो उपयोगकर्ता समय के साथ करते हैं – जिसे प्रत्येक उपयोगकर्ता के फोन या कंप्यूटर पर ऐप के साथ साझा किया जा सकता है, ताकि ऐप उन परिवर्तनों को स्थानीय रूप से लागू कर सके और जानकारी के सभी संस्करण को सिंक और अद्यतित रख सके।
सर्वर प्रत्येक उपयोगकर्ता के डिवाइस को यह साबित करने के लिए शून्य-ज्ञान प्रमाण, एक अपेक्षाकृत नई क्रिप्टोग्राफ़िक तकनीक का उपयोग करता है कि कोई भी परिवर्तन गायब नहीं है और कोई भी गलत परिवर्तन नहीं किया गया है, लेकिन सर्वर कभी भी अनएन्क्रिप्टेड डेटा या उसमें हुए परिवर्तनों तक नहीं पहुंच पाता है। (इसलिए “शून्य ज्ञान”) वास्तव में, एन्क्रिप्टेड स्पेस शून्य-ज्ञान प्रमाणों की एक प्रकार की “रोल-अप” संपत्ति का उपयोग कर सकता है ताकि यह सुनिश्चित किया जा सके कि प्रत्येक उपयोगकर्ता के पास संपूर्ण परिवर्तन लॉग में प्रत्येक परिवर्तन को लागू किए बिना उनके समूह के डेटा का नवीनतम संस्करण है। पेरिन कहते हैं, “सर्वर परिवर्तनों को एक संक्षिप्त प्रमाण में रोल कर सकता है कि यह वर्तमान स्थिति संपूर्ण इतिहास को दर्शाती है।” “यह आपको आश्वस्त कर सकता है कि इसने परिवर्तन लॉग को वास्तव में भेजे बिना ही सही ढंग से लागू किया है।”
सर्वर यह देखने के लिए शून्य-ज्ञान प्रमाण का भी उपयोग करता है कि लोगों के उपकरण क्रिप्टोग्राफ़िक कुंजियों को कैसे प्रबंधित करते हैं जो केवल अधिकृत उपयोगकर्ताओं को डेटा को डिक्रिप्ट और बदलने की अनुमति देते हैं, नए उपयोगकर्ताओं को आमंत्रित करने की अनुमति देते हैं, और यदि कोई समूह छोड़ता है तो उनकी पहुंच को रद्द कर सकता है। स्पेस के उपयोगकर्ता ऐप का पूरा इतिहास साझा करना या नए आमंत्रित व्यक्ति को उनके प्रवेश के बाद जोड़े गए नए संदेशों या डेटा तक सीमित करना भी चुन सकते हैं।