अक्सर किसी ना किसी आर्टिकल में एन्क्रिप्शन और डिक्रिप्शन ये दोनों शब्दों का उल्लेख होता है। इन शब्दों का इस्तेमाल ज्यादातर टेक्निकल आर्टिकल या किसी तकनीक में किया जाता है।
एन्क्रिप्शन और डिक्रिप्शन होता क्या और क्यों इसका इस्तेमाल किया जाता है? आखिर ये किस काम आते है?
प्राचीन काल से ही एन्क्रिप्शन और डिक्रिप्शन का उपयोग किया जा रहा है। जैसा कि आप सभी जानते ही हैं की पुराने समय में सभी अपना सन्देश एक जगह से दूसरी जगह तक भेजने के लिए पत्र लिख कर भेजा करते थे।
उस पत्र में अलग ही तरह के अक्षर और चिन्ह बने होते थे जिससे की कोई और अगर उसे देख भी ले तो उसके समझ में कुछ ना आए। प्राचीन काल के पत्थरों पर भी इस तरह की भाषा लिखी हुई मिल जाएगी।
जिसे वो सन्देश भेजा जाता था वही उसका मतलब जानता था। उस समय सिग्नल बनाने के लिए कई टूल्स का उपयोग किया जाता था। यह योजना वास्तव में मददगार थी क्योंकि कोई दूसरे व्यक्ति इस संदेश को समझ नहीं पाते थे। ऐसी प्रक्रिया को आज के समय में एन्क्रिप्शन कहा जाता है।
क्रिप्टोग्राफी क्या है?
कम्युनिकेशन के दौरान डेटा को सुरक्षित रखने के लिए क्रिप्टोग्राफी का उपयोग किया जाता है। यह अनऑफिसियल व्यक्ति या यूजर के ग्रुप को किसी भी गोपनीय डेटा को एक्सेस करने से रोकने में मदद करता है। एन्क्रिप्शन और डिक्रिप्शन क्रिप्टोग्राफी के दो जरूरी फंक्शन हैं।
नेटवर्क पर भेजा गया मैसेज एक ऐसे फॉर्मेट में बदल दिया जाता है जिसे आसानी से पढ़ा न जा सके उसे डेटा एन्क्रिप्शन के नाम से जाना जाता है। मैसेज मिलने के बाद उसे वापिस से पढ़ने लायक फॉर्मेट में बदल दिया जाता है जिसे डिक्रिप्शन के नाम से जाना जाता है।
एन्क्रिप्शन का क्या मतलब होता है?
एन्क्रिप्शन एक नार्मल मैसेज (plaintext) को एक अर्थहीन मैसेज (ciphertext) में बदलने की प्रक्रिया है। ये एक ऐसा प्रोसेस है जिसमे नार्मल मैसेज को ऐसे फॉर्मेट में बदल जिया जाता है जिसे आसानी कोई भी पढ़ या समझ नहीं सकता, जो की नार्मल मैसेज से बिलकुल अलग होता है।
इसलिए हैकर डेटा को पढ़ने में असक्षम होता है क्योंकि सेन्डर एन्क्रिप्शन एल्गोरिथ्म का उपयोग करते हैं। एन्क्रिप्शन आमतौर पर कीय एल्गोरिदम का उपयोग करके किया जाता है।
डेटा को चोरी होने से बचने के लिए एन्क्रिप्ट किया जाता है। हालाँकि, कई बड़ी कंपनियाँ अपने बिज़नेस को अपने प्रतिद्वंद्वी से गुप्त रखने के लिए डेटा एन्क्रिप्शन भी करती हैं।
![Encryption Process एन्क्रिप्शन प्रक्रिया (Encryption Process)](https://www.taknikigyan.in/wp-content/uploads/Encryption-Process.png)
डिक्रिप्शन का क्या मतलब होता है?
डिक्रिप्शन एक अर्थहीन संदेश (सिफरटेक्स्ट) को उसके असल रूप (प्लेनटेक्स्ट) में बदलने की प्रक्रिया है। डिक्रिप्शन एन्कोडेड/एन्क्रिप्टेड डेटा को ऐसे रूप में बदलने का एक प्रोसेस है जो मानव या कंप्यूटर द्वारा पढ़ा या समझा जा सके।
इसका इस्तेमाल केवल मैसेज को प्राप्त करने वाला व्यक्ति ही कर सकता है।
![Decryption Process डिक्रिप्शन प्रक्रिया (Decryption Process)](https://www.taknikigyan.in/wp-content/uploads/Decryption-Process.png)
एन्क्रिप्शन के प्रकार
एन्क्रिप्शन के दो मुख्य प्रकार सिमेट्रिक (symmetric) एन्क्रिप्शन और असिमेट्रिक (asymmetric) एन्क्रिप्शन हैं। असिमेट्रिक एन्क्रिप्शन को पब्लिक कीय एन्क्रिप्शन के नाम से भी जाना जाता है।
सिमेट्रिक एन्क्रिप्शन में, केवल एक ही कीय होती है, और सभी कम्युनिकेशन पार्टी एन्क्रिप्शन और डिक्रिप्शन दोनों के लिए उस एक ही कीय का उपयोग करते हैं।
असिमेट्रिक या पब्लिक कीय एन्क्रिप्शन में, दो कीय होती हैं: एक कीय का उपयोग एन्क्रिप्शन के लिए किया जाता है, और दूसरी कीय का उपयोग डिक्रिप्शन के लिए किया जाता है। डिक्रिप्शन कीय को प्राइवेट रखी जाती है, जबकि एन्क्रिप्शन कीय पब्लिक में शेयर कर दी जाती है, जिसे कोई भी काम में ले सकता है। असिमेट्रिक एन्क्रिप्शन TLS (जिसे अक्सर SSL के नाम से भी जाना जाता है) के लिए एक मूलभूत तकनीक है।
डेटा एन्क्रिप्शन क्यों जरूरी है?
- एन्क्रिप्शन यह ध्यान रखता है कि प्राप्तकर्ता (recipient) या सही डेटा स्वामी को छोड़कर कोई भी कम्युनिकेशन या डेटा को ना देख या पढ़ सके। यह हमलावरों, विज्ञापन नेटवर्क, इंटरनेट सेवा प्रदाताओं और कुछ मामलों में सरकारों को संवेदनशील डेटा को हस्तछेप करने और पढ़ने से रोकता है।
- एन्क्रिप्शन डेटा चोरी को रोकने में मदद करता है, फिर चाहे डेटा ट्रांसफर हो रहा हो या नहीं। यदि कोई कॉर्पोरेट डिवाइस खो जाता है या चोरी हो जाता है और उसकी हार्ड ड्राइव ठीक से एन्क्रिप्ट की होती है, तो उस डिवाइस का डेटा भी सुरक्षित रहता है। इसी तरह, एन्क्रिप्टेड कम्युनिकेशन दो पक्षों का डेटा लीक किए बिना संवेदनशील डेटा का आदान-प्रदान करने में सक्षम बनाता है।
- एन्क्रिप्शन मलिसियस हमलो को रोकने में भी मदद करता है जैसे कि ऑन-पाथ हमला (on-path attack)। जब डेटा इंटरनेट पर ट्रांसमिट होता है, तो एन्क्रिप्शन यह ध्यान रखता है कि प्राप्तकर्ता को प्राप्त होने वाले डेटा के साथ किसी भी तरह की कोई छेड़छाड़ न की गई हो।
- पब्लिक कीय एन्क्रिप्शन दूसरी चीजों के अलावा यह स्थापित करने के लिए भी उपयोग किया जा सकता है कि वेबसाइट का मालिक वेबसाइट के TLS सर्टिफिकेट में लिस्टेड प्राइवेट कीय का भी मालिक है। जिससे यूजर को को यह पता चलता है कि वे सही वेबसाइट से जुड़े हैं, किसी नकली या गलत वेबसाइट से नहीं।
- इन सभी कारणों से, कई इंडस्ट्रीज और सरकारी नियमों के लिए ऐसी कंपनियों की आवश्यकता होती है जो यूजर डेटा को एन्क्रिप्ट करके संभाल कर रखे।
एन्क्रिप्शन एल्गोरिथम क्या होता है?
एन्क्रिप्शन एल्गोरिथ्म एक मेथड है जिसका उपयोग डेटा को सिफरटेक्स्ट में बदलने के लिए किया जाता है। एल्गोरिथ्म डेटा को अपेक्षित तरीके से बदलने के लिए एन्क्रिप्शन कुंजी का उपयोग करता है, ताकि कि एन्क्रिप्टेड डेटा रैंडम टेक्स्ट फॉर्मेट दिखाई दे, इसे डिक्रिप्शन कीय का उपयोग करके ही प्लैनटेक्सट (ओरिजनल फॉर्म) में वापस लाया जा सकता है।
Plaintext उदाहरण: यह मेरा ब्लॉग है और मैं धर्मेंद्र हूँ।
Ciphertext उदाहरण: wUwDPglyJu9LOnkBAf4vxSpQgQZltcz7LWwEquhdm5kSQIkQl
कुछ सामान्य एन्क्रिप्शन एल्गोरिथम
1. Triple DES एन्क्रिप्शन
यह आमतौर पर ATM मशीनों (पिन को एन्क्रिप्ट करने के लिए) में उपयोग किया जाता है और UNIX के पासवर्ड को एन्क्रिप्ट करने के लिए उपयोग किया जाता है।
ट्रिपल DES या 3 DES ने डेटा एन्क्रिप्शन स्टैंडर्ड (DES) को एन्क्रिप्शन की अधिक भरोसेमंद मेथड में बदल दिया है, क्योंकि यह डेटा को तीन बार एन्क्रिप्ट करता है और हर बार डिक्रिप्ट करने के लिए एक अलग कीय का उपयोग करता है। ये 56 बिट्स के साथ तीन अलग-अलग कीय का उपयोग करता है और हर बार तीनो कीय एक दूसरे से अलग होती है।
यह इंडस्ट्रीज में सबसे बड़े लेवल पर इस्तेमाल किया जाने वाला सिमेट्रिक एल्गोरिथम है। ट्रिपल DES फाइनेंसियल सर्विस और दूसरी इंडस्ट्रीज के लिए भरोसेमंद हार्डवेयर एन्क्रिप्शन है।
2. RSA एन्क्रिप्शन
3 DES के विपरीत, RSA (Rivest–Shamir–Adleman) असिमेट्रिक है, जिसका मतलब है कि यह एन्क्रिप्शन और डिक्रिप्शन के लिए एक ही कीय का उपयोग नहीं करता है। एक पब्लिक और प्राइवेट कीय बनाकर कंट्रोल करता है।
पब्लिक कीय से डाटा को एन्क्रिप्ट और प्राइवेट कीय डिक्रिप्ट करने के काम आती है। RSA का उपयोग SSH ऑथेंटिकेशन के लिए, SSL एन्क्रिप्शन के लिए और कई ब्राउज़रों में संवेदनशील डेटा की सुरक्षा के लिए किया जाता है।
3. Blowfish एन्क्रिप्शन
ब्लोफिश उन सॉफ्टवेयर कैटेगरी में पाई जाती है जिनका उपयोग पासवर्ड मैनेजमेंट टूल के लिए पेमेंट सुरक्षित करने के लिए ई-कॉमर्स प्लेटफॉर्म में किया जाता है। ये सबसे अधिक लचीली एन्क्रिप्शन मेथड में से एक है।
इसी तरह, DES, ब्लोफिश की सिमेट्रिक तकनीक है, जिसका अर्थ है कि डेटा को एन्क्रिप्ट और डिक्रिप्ट करने के लिए एक ही कीय का उपयोग किया जाता है। कीय की लंबाई 32-बिट से लेकर 448-बिट तक अलग अलग हो सकती है।
ब्लोफिश को DES और RSA एन्क्रिप्शन मेथड का अल्टरनेटिव माना जाता है। ये क्रिप्टोग्राफिक सॉफ्टवेयर में अत्यधिक लोकप्रिय है।
4. Twofish एन्क्रिप्शन
Twofish दूसरे लोकप्रिय एन्क्रिप्शन मेथड का उत्तराधिकारी है जैसे कि ब्लोफिश। यह डेटा एन्क्रिप्शन स्टैंडर्ड (DES) को रिप्लेस करने वाला एक दूसरा प्रतिद्वंद्वी है।
Twofish, अपने पूर्वज ब्लोफिश की तरह ब्लॉक सिफरिंग का उपयोग करता है। यह सिमेट्रिक है, जिसका अर्थ है कि एन्क्रिप्शन और डिक्रिप्शन के लिए एक ही कीय का उपयोग करता है। Twofish उस जानकारी को अलग करता है जिसके लिए 128-बिट ब्लॉक में एन्क्रिप्शन कीय जरुरी होता है और सभी ब्लॉकों में कीय को एक साथ अप्लाई करता है।
अपने पूर्वजों के विपरीत, Twofish केवल 256-बिट तक डेटा एन्क्रिप्शन के लिए keys का उपयोग करता है। Twofish को एक तेज, लचीला और एक ही समय में ट्रेडिशनल डिजाइन वाला माना जाता है।
ब्लोफिश की तरह, एन्क्रिप्शन मेथड भी कॉपीराइट नहीं है और यह उपयोग करने के लिए मुफ्त है। आपको इसका बंडल एन्क्रिप्शन प्रोग्राम मिल जाएगा जैसे कि PhotoEncrypt, GPG, और लोकप्रिय ओपन-सोर्स सॉफ़्टवेयर TrueCrypt।
5. AES एन्क्रिप्शन
AES (एडवांस्ड एन्क्रिप्शन स्टैंडर्ड) बेल्जियम के क्रिप्टोग्राफरों द्वारा डिजाइन किया गया था। एन्क्रिप्शन कीय के लिमिटेड चॉइस के कारण प्रोसेसिंग पावर के बढ़ते लेवल और ब्रूट-फोर्स के हमलों से इसे तोडना आसान हो जाता है।
ये हार्डवेयर के साथ-साथ प्रतिबंधित वातावरण में आसानी से लगाए जाने के कारण अधिक लोकप्रिय है। AES एक सिमेट्रिक एन्क्रिप्शन एल्गोरिथ्म है।
AES अपने पूर्वजों की तुलना में अधिक उपयोगी माना गया है, जैसे की DES और 3 DES और अधिक जटिल एल्गोरिथम और लंबी keys का उपयोग करता है। इसमें डिक्रिप्शन तेजी से काम करता है, जो इसे राउटर, फायरवॉल, सुरक्षा प्रोटोकॉल और नार्मल एन्क्रिप्शन का उपयोग करने वाले किसी भी एप्लिकेशन में एक साइबर के लिए बेहतर चॉइस बनाता है।
AES, Twofish के जैसा ही है क्योंकि यह सिमेट्रिक है और यह 128-बिट ब्लॉक के साथ काम करता है। AES स्क्रैम्बल राउंड के साथ काम करता है।
6. IDEA
International Data Encryption Algorithm (IDEA) Xuejia Lai और James Massey द्वारा बनाया गया था और यह एक ओर सिमेट्रिक एन्क्रिप्शन एल्गोरिथम है। IDEA पहले इस्तेमाल किए गए सिफर का एक नया वर्जन है।
ये 64-बिट ब्लॉक और 128-बिट keys का उपयोग करता है। AES की तरह, IDEA एन्क्रिप्शन के राउंड का उपयोग करता है। AES के विपरीत, IDEA भी हाफ-राउंड नाम का एक तरीका अपनाता है।
हर एक राउंड में 6 16-बिट sub-keys का उपयोग किया जाता है। हर एक हाफ-राउंड में 4 sub-keys का उपयोग होता है। पहली 8 sub-keys डायरेक्ट एन्क्रिप्शन कीय से निकाली जाती हैं, जबकि बाकि 8 रोटेशन के आधार पर बनाई जाती हैं।
7. SHA1
SHA1 (Secure Hash Algorithm 1) 1995 में बनाया गया था, लेकिन इसे कभी भी एक स्टैंडर्ड के रूप में नहीं बनाया गया था क्योंकि इसकी कमजोरियां इसके निर्माण जो की 10 साल बाद शुरू हुईं।
NIST, वही आर्गेनाइजेशन है जिसने AES को एक स्टैंडर्ड के रूप में लागू किया और फिर SHA1 के उपयोग पर पाबन्दी लगा दि गई, और 2016 के बाद से कोई भी डिजिटल हस्ताक्षर एजेंसी इस एल्गोरिथम का उपयोग नहीं कर सकती थी।
SHA1, MD5 की तरह ही हैशिंग एल्गोरिथम है, फिर भी SHA1 ने MD5 को बदल दिया है क्योंकि यह अधिक सुरक्षा प्रदान करता था।
8. MD5
MD5 हैशिंग एल्गोरिथ्म एक प्रकार का क्रिप्टोग्राफिक फ़ंक्शन है जो किसी भी लम्बे संदेशों को इनपुट के रूप में एक्सेप्ट करता है और आउटपुट के रूप में वापस दिखता है।
MD5 मैसेज-डाईजेसटिंग एल्गोरिथ्म है जो एक बड़े लेवल पर उपयोग किया जाने वाला हैश फ़ंक्शन है जो 128-बिट हैश को बनाता है। हालांकि MD5 को मूल रूप से क्रिप्टोग्राफिक हैश फ़ंक्शन के रूप में उपयोग करने के लिए डिज़ाइन किया गया था, लेकिन इसमें बड़े पैमाने पर कमजोरियों पाई गई।
अगर ये जानकारी आपको अच्छी लगी हो तो इस आर्टिकल को अपने दोस्तों, परिवार जनो और सोशल मीडिया पर जरूर शेयर करे।
![Dharmendra Author on Web Janakari Dharmendra Author on Takniki Gyan](https://www.taknikigyan.in/wp-content/uploads/Dharmendra-Author-on-Web-Janakari.png)
मेरा नाम धर्मेंद्र मीणा है, मुझे तकनीक (कंप्यूटर, लैपटॉप, स्मार्टफोन्स, सॉफ्टवेयर, इंटरनेट, इत्यादि) से सम्बन्धी नया सीखा अच्छा लगता है। जो भी में सीखता हु वो मुझे दुसरो के साथ शेयर करना अच्छा लगता है। इस ब्लॉग को शुरू करने का मेरा मकसद जानकारी को ज्यादा से ज्यादा लोगो तक हिंदी में पहुंचना है।
Add your first comment to this post