पीयूआरबी (क्रिप्टोग्राफी)

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

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

इसके अलावा, एक पीयूआरबी पैडिंग है जो संभावित लंबाई के एक सीमित सेट के लिए है, ताकि जानकारी की मात्रा को कम करने के लिए एन्क्रिप्टेड डेटा संभावित रूप से पर्यवेक्षकों को इसकी कुल लंबाई के माध्यम से लीक कर सके। पैडिंग के बिना, एन्क्रिप्टेड ऑब्जेक्ट्स जैसे फ़ाइलें या बिट स्ट्रिंग्स लंबाई में $$M$$ बिट्स तक एक पर्यवेक्षक को सूचना के $$O(\log M)$$ बिट्स तक जानकारी लीक कर सकते हैं- अर्थात् लंबाई का सटीक रूप से प्रतिनिधित्व करने के लिए आवश्यक बिट्स की संख्या। एक पीयूआरबी एक फ़्लोटिंग पॉइंट नंबर में प्रदर्शित होने वाली लंबाई तक पैडेड होता है जिसका अपूर्णांश इसके प्रतिपादक की तुलना में अधिक नहीं होता है (अर्थात, इसमें अधिक महत्वपूर्ण बिट्स नहीं होते हैं)। यह बाधा जानकारी की अधिकतम मात्रा को सीमित करती है, एक पीयूआरबी की कुल लंबाई $$O(\log \log M)$$ बिट्स तक लीक हो सकती है, एक महत्वपूर्ण उपगामी कमी और चर-लंबाई वाले एन्क्रिप्टेड स्वरूपों के लिए सामान्य रूप से सर्वोत्तम प्राप्त करने योग्य, जिसका गुणक उपरिव्यय अनपैडेड पेलोड आकार के एक स्थिर कारक तक सीमित है। यह उपगामी रिसाव वैसा ही है जैसा कि एन्क्रिप्टेड ऑब्जेक्ट को किसी आधार की घात, जैसे कि दो की घात को पैडिंग करके प्राप्त होता है। केवल एक घातांक के अपेक्षाकृत लंबाई के प्रतिनिधित्व में कुछ महत्वपूर्ण अपूर्णांश बिट्स की अनुमति देना, हालांकि, पैडिंग के उपरिव्यय को काफी कम कर देता है। उदाहरण के लिए, अगली दो की घात के लिए पैडिंग ऑब्जेक्ट के आकार को लगभग दोगुना करके 100% उपरिव्यय लगा सकती है, जबकि एक पीयूआरबी की पैडिंग छोटे स्ट्रिंग्स के लिए अधिकतम 12% का उपरिव्यय लगाती है और ऑब्जेक्ट्स के बड़े होने पर धीरे-धीरे (6%, 3%, आदि.) घट जाती है।

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

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

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

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

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

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

पीयूआरबी एन्क्रिप्शन विधा का एक प्राथमिक नुकसान एन्कोडिंग और डिकोडिंग की जटिलता है, क्योंकि डिकोडर डिक्रिप्शन से पहले पारंपरिक पार्सिंग तकनीकों पर भरोसा नहीं कर सकता है। एक माध्यमिक नुकसान उपरिव्यय है जो पैडिंग जोड़ता है, हालांकि पीयूआरबी के लिए प्रस्तावित पैडिंग योजना महत्वपूर्ण आकार की ऑब्जेक्ट्स के लिए केवल कुछ प्रतिशत उपरिव्यय पर ही लागू होती है।

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

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