PGP क्या है? Pretty Good Privacy एन्क्रिप्शन पर संपूर्ण गाइड

PGP एन्क्रिप्शन क्या है?

PGP (Pretty Good Privacy) एक एन्क्रिप्शन प्रोग्राम है जो डेटा संचार के लिए गोपनीयता और क्रिप्टोग्राफ़िक प्रमाणीकरण प्रदान करता है। PGP एन्क्रिप्शन सिमेट्रिक-की क्रिप्टोग्राफी और पब्लिक-की क्रिप्टोग्राफी के संयोजन का उपयोग करता है ताकि उपयोगकर्ता संदेशों, फ़ाइलों और अन्य डेटा को एन्क्रिप्ट कर सकें जिसे केवल इच्छित प्राप्तकर्ता ही पढ़ सके। मूल रूप से 1991 में Phil Zimmermann द्वारा बनाया गया, PGP दुनिया का सबसे व्यापक रूप से उपयोग किया जाने वाला ई-मेल एन्क्रिप्शन मानक बन गया है और RFC 4880 में परिभाषित OpenPGP विनिर्देश का आधार है। चाहे आपको गोपनीय ई-मेल भेजना हो, सॉफ़्टवेयर प्रकाशक की पहचान सत्यापित करनी हो, या संवेदनशील फ़ाइलों की सुरक्षा करनी हो, PGP एक सिद्ध क्रिप्टोग्राफ़िक ढाँचा प्रदान करता है जिस पर पत्रकार, सुरक्षा शोधकर्ता, सरकारें और आम उपयोगकर्ता भरोसा करते हैं।

यदि आप बिना सॉफ़्टवेयर इंस्टॉल किए तुरंत PGP एन्क्रिप्शन आज़माना चाहते हैं, तो KeychainPGP एक ऑनलाइन PGP उपकरण प्रदान करता है जो पूरी तरह से आपके ब्राउज़र में काम करता है।

PGP का इतिहास

Phil Zimmermann ने जून 1991 में PGP 1.0 को एक मुफ़्त सॉफ़्टवेयर के रूप में प्रकाशित किया, इस विश्वास से प्रेरित होकर कि मज़बूत क्रिप्टोग्राफी सभी नागरिकों के लिए सुलभ होनी चाहिए — न कि केवल सरकारों और सेनाओं के लिए। उस समय, मज़बूत एन्क्रिप्शन को अमेरिकी निर्यात नियमों के तहत युद्ध सामग्री के रूप में वर्गीकृत किया गया था, और Zimmermann पर PGP को अंतरराष्ट्रीय स्तर पर वितरित करने के लिए अमेरिकी सीमा शुल्क सेवा द्वारा तीन साल की आपराधिक जाँच की गई। जाँच अंततः 1996 में बिना आरोप के बंद कर दी गई, और यह मामला डिजिटल स्वतंत्रता के इतिहास में एक महत्वपूर्ण मोड़ बन गया।

PGP कई व्यावसायिक रूपों से गुज़रा। Zimmermann ने 1996 में PGP Inc. की स्थापना की, जिसे 1997 में Network Associates (बाद में McAfee) ने अधिग्रहित किया, और अंततः 2010 में Symantec ने। इन सभी परिवर्तनों के दौरान, अंतर्निहित क्रिप्टोग्राफ़िक प्रोटोकॉल को Internet Engineering Task Force (IETF) द्वारा OpenPGP के रूप में मानकीकृत किया गया, जिससे यह सुनिश्चित हुआ कि प्रोटोकॉल व्यावसायिक स्वामित्व से स्वतंत्र रूप से खुला और इंटरऑपरेबल बना रहे।

OpenPGP मानक के प्रकाशन का अर्थ था कि कोई भी संगत कार्यान्वयन बना सकता था। इससे GNU Privacy Guard (GnuPG या GPG) का निर्माण हुआ, जो एक मुफ़्त और ओपन सोर्स कार्यान्वयन है और आज भी सबसे व्यापक रूप से उपयोग किए जाने वाले PGP उपकरणों में से एक है। इन कार्यान्वयनों के बीच अंतर समझने के लिए, हमारी PGP बनाम GPG गाइड देखें।

PGP एन्क्रिप्शन कैसे काम करता है

PGP एन्क्रिप्शन क्रिप्टोग्राफ़िक तकनीकों के एक परिष्कृत संयोजन पर निर्भर करता है। एकल विधि का उपयोग करने के बजाय, PGP एक हाइब्रिड एन्क्रिप्शन मॉडल का उपयोग करता है जो सिमेट्रिक एन्क्रिप्शन की गति को एसिमेट्रिक (पब्लिक-की) एन्क्रिप्शन के कुंजी वितरण लाभों के साथ जोड़ता है।

पब्लिक-की क्रिप्टोग्राफी

PGP के केंद्र में पब्लिक-की क्रिप्टोग्राफी है, जिसे एसिमेट्रिक क्रिप्टोग्राफी भी कहा जाता है। प्रत्येक PGP उपयोगकर्ता दो गणितीय रूप से जुड़ी कुंजियों से बनी एक कुंजी जोड़ी जनरेट करता है:

  • पब्लिक कुंजी — किसी के साथ भी खुले तौर पर साझा की जाती है। अन्य लोग इस कुंजी का उपयोग आपके लिए संदेश एन्क्रिप्ट करने और आपके डिजिटल सिग्नेचर सत्यापित करने के लिए करते हैं।
  • प्राइवेट कुंजी (जिसे गुप्त कुंजी भी कहा जाता है) — पूरी तरह गोपनीय रखी जाती है। आप इस कुंजी का उपयोग आपको भेजे गए संदेशों को डिक्रिप्ट करने और डिजिटल सिग्नेचर बनाने के लिए करते हैं।

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

हाइब्रिड एन्क्रिप्शन मॉडल

जबकि पब्लिक-की क्रिप्टोग्राफी कुंजी वितरण की समस्या हल करती है, RSA जैसे एसिमेट्रिक एल्गोरिथम बड़ी मात्रा में डेटा एन्क्रिप्ट करने के लिए कम्प्यूटेशनल रूप से महँगे हैं। PGP इस समस्या को हाइब्रिड दृष्टिकोण से हल करता है:

  1. सत्र कुंजी निर्माण — PGP प्रत्येक संदेश के लिए एक अद्वितीय यादृच्छिक सिमेट्रिक सत्र कुंजी (आमतौर पर 128 या 256 बिट) उत्पन्न करता है।
  2. डेटा एन्क्रिप्शन — संदेश की सामग्री को सत्र कुंजी के साथ तेज़ सिमेट्रिक सिफ़र (जैसे AES-256) का उपयोग करके एन्क्रिप्ट किया जाता है।
  3. सत्र कुंजी एन्क्रिप्शन — सत्र कुंजी को स्वयं प्राप्तकर्ता की पब्लिक कुंजी (एसिमेट्रिक ऑपरेशन) का उपयोग करके एन्क्रिप्ट किया जाता है।
  4. पैकेजिंग — एन्क्रिप्टेड संदेश और एन्क्रिप्टेड सत्र कुंजी को एक साथ पैक करके प्राप्तकर्ता को भेजा जाता है।

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

PGP डिजिटल सिग्नेचर

एन्क्रिप्शन के अलावा, PGP डिजिटल सिग्नेचर प्रदान करता है जो दो आवश्यक कार्य करते हैं: प्रमाणीकरण (यह साबित करना कि संदेश किसने भेजा) और अखंडता (यह साबित करना कि संदेश में पारगमन में बदलाव नहीं किया गया)।

हस्ताक्षर प्रक्रिया इस प्रकार काम करती है:

  1. PGP SHA-256 या SHA-512 जैसे एल्गोरिथम का उपयोग करके संदेश सामग्री का एक क्रिप्टोग्राफ़िक हैश (एक निश्चित-लंबाई का डाइजेस्ट) कंप्यूट करता है।
  2. फिर हैश को प्रेषक की प्राइवेट कुंजी से एन्क्रिप्ट किया जाता है, जिससे डिजिटल सिग्नेचर बनता है।
  3. सिग्नेचर को संदेश के साथ संलग्न किया जाता है।

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

OpenPGP मानक

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

संदर्भ दस्तावेज़ हैं:

  • RFC 4880 (नवंबर 2007) — OpenPGP संदेश प्रारूप का वर्तमान मुख्य विनिर्देश।
  • RFC 6637 (जून 2012) — एलिप्टिक-कर्व क्रिप्टोग्राफी (ECC) समर्थन के साथ OpenPGP का विस्तार।
  • RFC 9580 (2024) — नवीनतम संशोधन जो अनिवार्य Ed25519/X25519 समर्थन, AEAD एन्क्रिप्शन मोड और बेहतर कुंजी फ़िंगरप्रिंट के साथ मानक को आधुनिक बनाता है।

OpenPGP इंटरऑपरेबिलिटी सुनिश्चित करता है: KeychainPGP से एन्क्रिप्ट किया गया संदेश GnuPG, Mailvelope या किसी अन्य अनुपालक कार्यान्वयन द्वारा डिक्रिप्ट किया जा सकता है।

वेब ऑफ ट्रस्ट

PGP की विशिष्ट विशेषताओं में से एक पब्लिक कुंजियों की प्रामाणिकता स्थापित करने के लिए इसका विकेंद्रीकृत वेब ऑफ ट्रस्ट मॉडल है। TLS/SSL द्वारा उपयोग किए जाने वाले केंद्रीकृत प्रमाणपत्र प्राधिकरण (CA) मॉडल के विपरीत, PGP उपयोगकर्ताओं को स्वयं एक-दूसरे की पुष्टि करने की अनुमति देता है।

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

KeychainPGP जैसे उपकरण इस प्रक्रिया को सरल बनाते हैं, उपयोगकर्ताओं को सहज इंटरफ़ेस के माध्यम से कुंजियों के साथ सीधे काम करने की अनुमति देते हैं, एन्क्रिप्टेड संदेश और पब्लिक कुंजियाँ आसानी से साझा करने के लिए क्लिपबोर्ड एन्क्रिप्शन का उपयोग करते हैं।

PGP एल्गोरिथम और कुंजी प्रकार

PGP क्रिप्टोग्राफ़िक एल्गोरिथम की एक श्रृंखला का समर्थन करता है जो क्षेत्र में प्रगति के साथ विकसित हुए हैं।

क्लासिक एल्गोरिथम

  • RSA (Rivest-Shamir-Adleman) — PGP के इतिहास में सबसे व्यापक रूप से तैनात एसिमेट्रिक एल्गोरिथम। RSA-2048 बिट कुंजियाँ आज न्यूनतम सुरक्षा मानी जाती हैं, दीर्घकालिक सुरक्षा के लिए 4096 बिट कुंजियों की सिफ़ारिश की जाती है।
  • DSA (Digital Signature Algorithm) — एन्क्रिप्शन के लिए ElGamal के संयोजन में हस्ताक्षर के लिए उपयोग किया जाता है। आज कम पसंद किया जाता है।
  • AES (Advanced Encryption Standard) — संदेश सामग्री को एन्क्रिप्ट करने के लिए उपयोग किया जाने वाला प्रमुख सिमेट्रिक सिफ़र। AES-128 और AES-256 समर्थित हैं।
  • SHA-2 (SHA-256, SHA-384, SHA-512) — डिजिटल सिग्नेचर में डाइजेस्ट कंप्यूटेशन के लिए उपयोग किए जाने वाले क्रिप्टोग्राफ़िक हैश फ़ंक्शन।

आधुनिक एल्गोरिथम

OpenPGP कार्यान्वयन की नवीनतम पीढ़ी एलिप्टिक-कर्व क्रिप्टोग्राफी (ECC) का समर्थन करती है, जो काफी छोटे कुंजी आकारों के साथ RSA के समतुल्य सुरक्षा प्रदान करती है:

  • Ed25519 — Curve25519 पर आधारित डिजिटल सिग्नेचर एल्गोरिथम। तेज़ और कॉम्पैक्ट सिग्नेचर उत्पन्न करता है। RFC 9580 में अनुशंसित।
  • X25519 (Curve25519 ECDH) — कुंजी विनिमय (एन्क्रिप्शन) के लिए उपयोग किया जाता है। मज़बूत सुरक्षा गुणों के साथ उत्कृष्ट प्रदर्शन प्रदान करता है।
  • NIST P-256 / P-384 / P-521 — NIST द्वारा मानकीकृत एलिप्टिक कर्व। OpenPGP द्वारा समर्थित लेकिन आमतौर पर Curve25519 आधारित एल्गोरिथम से कम पसंद किए जाते हैं।

KeychainPGP जैसे आधुनिक उपकरण इन समकालीन एल्गोरिथम का समर्थन करते हैं, जिससे Ed25519 और X25519 के साथ कुंजी निर्माण सरल और सीधा हो जाता है।

PGP के सामान्य उपयोग

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

आज PGP

अपनी रचना के तीन दशक से अधिक समय बाद, PGP उपलब्ध सबसे महत्वपूर्ण क्रिप्टोग्राफ़िक उपकरणों में से एक बना हुआ है। OpenPGP मानक विकसित होता रहता है, RFC 9580 में आधुनिक एलिप्टिक-कर्व एल्गोरिथम के अनिवार्य समर्थन और AEAD एन्क्रिप्शन मोड सहित महत्वपूर्ण आधुनिकीकरण शामिल हैं।

PGP उपकरणों का पारिस्थितिकी तंत्र काफी समृद्ध हो गया है। GnuPG कमांड लाइन उपयोग के लिए संदर्भ कार्यान्वयन बना हुआ है। KeychainPGP जैसे आधुनिक उपकरण नेटिव डेस्कटॉप एप्लिकेशन (Windows, macOS, Linux), Android ऐप, स्क्रिप्टिंग के लिए CLI और ब्राउज़र में वेब ऐप प्रदान करते हैं — सभी एक ही Rust Sequoia-PGP इंजन पर निर्मित।

PGP से शुरुआत करें

PGP एन्क्रिप्शन शुरू करने के लिए तैयार हैं? यहाँ सर्वोत्तम अगले कदम हैं:

  1. अपने ब्राउज़र में आज़माएँ — बिना कुछ इंस्टॉल किए कुंजी जोड़ी जनरेट करने, संदेश एन्क्रिप्ट करने या सिग्नेचर सत्यापित करने के लिए KeychainPGP के ऑनलाइन PGP उपकरण का उपयोग करें।
  2. शुरुआती गाइड पढ़ें — यदि आप क्रिप्टोग्राफी में नए हैं, तो हमारी शुरुआती लोगों के लिए PGP गाइड आपको चरण-दर-चरण मार्गदर्शन करती है।
  3. व्यावहारिक वर्कफ़्लो सीखें — हमारी PGP का उपयोग कैसे करें गाइड कुंजी निर्माण, एन्क्रिप्शन और डिक्रिप्शन, कीरिंग प्रबंधन और सर्वोत्तम प्रथाओं को कवर करती है।
  4. क्लिपबोर्ड एन्क्रिप्शन समझें — अपने क्लिपबोर्ड से सीधे टेक्स्ट एन्क्रिप्ट और डिक्रिप्ट करने के लिए PGP क्लिपबोर्ड एन्क्रिप्शन के बारे में जानें।
  5. उपकरणों को जानें — अपने वर्कफ़्लो के लिए सही उपकरण चुनने के लिए PGP और GPG के बीच अंतर समझें।

PGP एन्क्रिप्शन तीस वर्षों से अधिक समय से संवेदनशील संचार की रक्षा कर रहा है। आधुनिक उपकरणों और मानकों के साथ, यह पहले से कहीं अधिक सुलभ है।