भारत के IT Act, 2000 में डिजिटल सिग्नेचर को क़ानूनी मान्यता मिलती है, लेकिन उसके लिए असिमेट्रिक क्रिप्टोग्राफ़ी और हैश फ़ंक्शन के साथ-साथ Controller of Certifying Authorities (CCA) से लाइसेंस प्राप्त सर्टिफ़ाइंग अथॉरिटी का सर्टिफ़िकेट भी ज़रूरी है। ख़ुद जेनरेट की गई PGP-की क़ानूनी रूप से उतनी वज़नदार नहीं मानी जाती — फिर भी भारत के डेवलपर समुदाय में GPG रोज़मर्रा का औज़ार है।
एक की पेयर: पब्लिक और प्राइवेट
सिमेट्रिक एन्क्रिप्शन (जैसे AES) के उलट, जहाँ एक ही की डेटा एन्क्रिप्ट और डिक्रिप्ट करती है, PGP गणितीय रूप से जुड़ी हुई एक की पेयर इस्तेमाल करता है। पब्लिक की को खुलेआम बाँटा जा सकता है — कोई भी इससे सिर्फ़ आपके लिए मैसेज एन्क्रिप्ट कर सकता है, और सिर्फ़ मैचिंग प्राइवेट की का मालिक ही उसे पढ़ सकता है।
कमिट साइनिंग: भारत का असली GPG इस्तेमाल
Linux kernel, Debian जैसे बड़े ओपन-सोर्स प्रोजेक्ट्स में योगदान देने वाले कई भारतीय डेवलपर अपने Git कमिट्स PGP/GPG से साइन करते हैं — यह किसी CCA-लाइसेंस्ड अथॉरिटी की माँग नहीं करता, सिर्फ़ यह साबित करता है कि कमिट वाक़ई उसी व्यक्ति ने भेजा जिसकी पब्लिक की सबको पता है।
डिजिटल सिग्नेचर — वही आइडिया उलटा
किसी मैसेज पर साइन करने के लिए लेखक उसे हैश करता है और उस हैश को अपनी प्राइवेट की से एन्क्रिप्ट करता है। कोई भी लेखक की पब्लिक की से सिग्नेचर वेरिफ़ाई कर सकता है — सफल वेरिफ़िकेशन कन्फ़र्म करता है कि मैसेज प्राइवेट की के मालिक ने ही बनाया और बाद में बदला नहीं गया।
यह किस काम आता है
- पहले से सीक्रेट एक्सचेंज किए बिना किसी पाने वाले के लिए गोपनीय मैसेज एन्क्रिप्ट करना।
- ओपन-सोर्स कमिट या सॉफ़्टवेयर रिलीज़ साइन करना, बिना किसी CCA-लाइसेंस्ड अथॉरिटी की ज़रूरत के।
- साइन किए गए ईमेल या फ़ाइलों की प्रामाणिकता वेरिफ़ाई करना।
Web of Trust बनाम CCA की लाइसेंसिंग चेन
भारत का डिजिटल सिग्नेचर मॉडल ऊपर से नीचे बना है: CCA सर्टिफ़ाइंग अथॉरिटी को लाइसेंस देता है, अथॉरिटी यूज़र को सर्टिफ़िकेट जारी करती है। PGP इसका उल्टा करता है — कोई केंद्रीय अथॉरिटी नहीं, बस "Web of Trust": यूज़र ख़ुद एक-दूसरे की पब्लिक कीज़ पर साइन करते हैं, यह पुष्टि करते हुए कि उन्होंने ख़ुद जांचा कि की किसकी है, और किसी अनजान की पर भरोसा उन लोगों के हस्ताक्षरों की चेन से बनता है जिन पर आप पहले से भरोसा करते हैं।