वेब क्रिप्टोग्राफी एपीआई

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

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

वेब क्रिप्टोग्राफी एपीआई का उपयोग कई प्रकार के उपयोगों के लिए किया जा सकता है, जिनमें शामिल हैं:

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

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

कई प्रकार के मौजूदा वेब एप्लिकेशन हैं जिनके साथ वेब क्रिप्टोग्राफी एपीआई उपयोग के लिए उपयुक्त होगा।

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

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

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

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


 * एक निजी या गुप्त कुंजी का चयन करना चुनें
 * यदि वे चाहें तो उनकी कुंजी से एक एन्क्रिप्शन कुंजी प्राप्त करें
 * उनके दस्तावेज़/डेटा को एन्क्रिप्ट करें
 * सेवा प्रदाता के मौजूदा एपीआई का उपयोग करके उनके एन्क्रिप्टेड दस्तावेज़/डेटा अपलोड करें

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

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

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

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

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

बाहरी संबंध

 * Web Crypto API on MDN Web Docs
 * Web Crypto API on MDN Web Docs