Cyber security Hashing algorithms (MD5, SHA) | PGDCA APSU New Syllabus Hindi Notes

E-Commerce & Cyber Security

Module 1- Fundamental of E-Commerce
Module 2- Online Payment Tran System
Module 3 Web Security Threat solutions
Module 4 – Cyber Security Digital Sign.
Module 5 – Cyber Laws Ethics Data Privacy
Module 6 -Trends Innovations in E-commerce

हैशिंग एल्गोरिथ्म: MD5, SHA

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

हैशिंग एक ऐसी गणितीय तकनीक है जो किसी भी आकार के डेटा को एक निश्चित और छोटे आकार के अद्वितीय कोड में बदल देती है।

हैशिंग की मूल अवधारणा (Imp.)

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

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

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

उदाहरण (Example) :

  • Input: “Hello World” → SHA256 Hash: a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
  • Input में थोड़ा बदलाव: “Hello World!” → SHA256 Hash: 7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069  पूरी तरह से अलग (completely different)।

हैशिंग की कार्यप्रणाली (Imp.)

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

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

MD5 — (Message Digest 5)   एल्गोरिथ्म 5 (Imp.)

MD5 को रोनाल्ड रिवेस्ट ने 1991 में विकसित किया था और यह 1990 के दशक से 2000 के दशक के मध्य तक सबसे व्यापक रूप से उपयोग होने वाला हैशिंग एल्गोरिथ्म रहा। MD5 इनपुट डेटा को 128 बिट की हैश वैल्यू में बदलता है, जो सामान्यतः 32 हेक्साडेसिमल अक्षरों के रूप में प्रदर्शित होती है।

MD5 की कार्यप्रणाली में मूल डेटा को 512 बिट के ब्लॉक्स में विभाजित किया जाता है और प्रत्येक ब्लॉक पर 64 राउंड की जटिल गणितीय प्रक्रिया की जाती है। इस प्रक्रिया के अंत में 128 बिट की अंतिम हैश वैल्यू प्राप्त होती है। MD5 अपनी गति के लिए जाना जाता था — यह तत्कालीन कंप्यूटर हार्डवेयर पर बहुत तेजी से काम करता था, जिसके कारण इसे फाइल इंटेग्रिटी चेक और चेकसम वेरिफिकेशन जैसे कार्यों में व्यापक रूप से अपनाया गया।

MD5 की सुरक्षा समस्याएँ (Imp.)

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

इन कमजोरियों के कारण आज MD5 को क्रिप्टोग्राफिक सुरक्षा के लिए पूर्णतः असुरक्षित माना जाता है। NIST और साइबर सुरक्षा विशेषज्ञ इस बात पर एकमत हैं कि MD5 का उपयोग पासवर्ड स्टोरेज, डिजिटल सिग्नेचर या किसी भी सुरक्षा-संवेदनशील कार्य में नहीं किया जाना चाहिए। आज MD5 का उपयोग केवल उन सीमित गैर-सुरक्षा कार्यों में होता है जहाँ कोलिजन का जोखिम स्वीकार्य है, जैसे फाइल डाउनलोड के बाद त्वरित अखंडता जाँच जहाँ कोई दुर्भावनापूर्ण हमलावर शामिल न हो। उदाहरण के लिए Linux ISO फाइल डाउनलोड के बाद Checksum Verification में अभी भी कहीं-कहीं MD5 दिखाई देता है, हालांकि सुरक्षा कारणों से SHA-256 को प्राथमिकता दी जाती है।

SHA — (Secure Hash Algorithm) (Imp.)

SHA अमेरिका की संस्था NIST और NSA द्वारा विकसित हैशिंग एल्गोरिथ्म का एक परिवार है जो MD5 की कमजोरियों के समाधान के रूप में विकसित हुआ। SHA के कई संस्करण समय के साथ आए हैं, और प्रत्येक संस्करण ने पिछले की सुरक्षा कमजोरियों को दूर करने का प्रयास किया।

SHA-1(Secure Hash Algorithm 1)   और इसकी कमजोरियाँ

SHA-1 को 1995 में जारी किया गया और यह 160 बिट की हैश वैल्यू उत्पन्न करता है। यह कई वर्षों तक उद्योग जगत का मानक हैशिंग एल्गोरिथ्म रहा और इसे SSL सर्टिफिकेट तथा डिजिटल सिग्नेचर में व्यापक रूप से अपनाया गया। परंतु 2017 में गूगल और CWI एम्स्टर्डम के शोधकर्ताओं ने SHAttered नामक एक व्यावहारिक हमला प्रदर्शित किया, जिसमें उन्होंने दो अलग PDF फाइलें बनाईं जिनकी SHA-1 हैश वैल्यू पूर्णतः समान थी। इस प्रदर्शन के बाद सभी प्रमुख ब्राउज़र और सर्टिफिकेशन अथॉरिटी ने SHA-1 को असुरक्षित घोषित करके इसका उपयोग बंद कर दिया।

SHA-2(Secure Hash Algorithm 2) — वर्तमान मानक (Imp.)

SHA-2 परिवार वर्तमान समय में सबसे व्यापक रूप से उपयोग होने वाला हैशिंग स्टैंडर्ड है। इसमें कई वेरिएंट शामिल हैं जो उनके आउटपुट साइज के आधार पर नामित हैं — SHA-224, SHA-256, SHA-384 और SHA-512। इनमें SHA-256 सबसे अधिक प्रचलित है और यह 256 बिट की हैश वैल्यू उत्पन्न करता है। SHA-2 की आंतरिक संरचना SHA-1 से भिन्न और अधिक मजबूत है, जिसके कारण आज तक इसमें कोई व्यावहारिक कोलिजन कमजोरी नहीं पाई गई है।

SHA-256 का उपयोग आज अत्यंत व्यापक है। बिटकॉइन और अन्य क्रिप्टोकरेंसी के ब्लॉकचेन में प्रत्येक ब्लॉक की पहचान SHA-256 हैश से होती है। SSL/TLS सर्टिफिकेट जो किसी भी HTTPS वेबसाइट को सुरक्षित बनाते हैं, वे SHA-256 का उपयोग करते हैं। डिजिटल सिग्नेचर बनाते समय दस्तावेज़ की हैश वैल्यू निकालने के लिए आज सामान्यतः SHA-256 का ही उपयोग होता है।

भारत में आधार प्रणाली में बायोमेट्रिक डेटा की अखंडता सत्यापित करने में SHA-256 जैसे मजबूत हैशिंग एल्गोरिथ्म का उपयोग होता है। UPI और Internet Banking में संदेशों की अखंडता (Integrity Verification) सुनिश्चित करने के लिए भी SHA-256 आधारित Hashing तकनीकों का उपयोग किया जाता है।

SHA-3 — भविष्य के लिए तैयार मानक

SHA-3 को NIST ने 2015 में जारी किया, परंतु यह SHA-2 की किसी कमजोरी के कारण नहीं बल्कि एक एहतियाती कदम के रूप में लाया गया। SHA-3 की आंतरिक संरचना SHA-1 और SHA-2 से पूर्णतः अलग है — यह केकक नामक एक भिन्न गणितीय संरचना पर आधारित है। इस भिन्नता का उद्देश्य यह सुनिश्चित करना है कि यदि भविष्य में SHA-2 की संरचना में कोई कमजोरी पाई जाए तो SHA-3 उससे प्रभावित नहीं होगा, क्योंकि दोनों की आंतरिक गणितीय नींव अलग है। 2025 तक SHA-3 का उपयोग धीरे-धीरे बढ़ रहा है, विशेषकर उच्च-सुरक्षा वाली सरकारी और वित्तीय प्रणालियों में।

हैशिंग के व्यावहारिक उपयोग (Imp.)

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

आधुनिक सिस्टम bcrypt या Argon2 जैसे विशेष पासवर्ड-हैशिंग फंक्शन का उपयोग करते हैं जो SHA-256 की तुलना में जानबूझकर धीमे बनाए गए हैं, ताकि कोई हमलावर लाखों संभावित पासवर्ड को तेजी से आजमा न सके। 2025 तक OWASP द्वारा Argon2 को सबसे अनुशंसित (Recommended) Password Hashing Algorithm माना जाता है।

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

MD5 और SHA की तुलनात्मक समीक्षा (Imp.)

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

Hashing Algorithm की आदर्श विशेषताएँ (Imp.)

  • Deterministic Output
  • Fixed Length Output
  • Fast Computation
  • One-Way Function
  • Collision Resistance
  • Avalanche Effect

हैशिंग की सीमाएँ

हैशिंग की कुछ व्यावहारिक सीमाएँ भी हैं। यदि कोई एल्गोरिथ्म समय के साथ कमजोर पाया जाता है, जैसा MD5 और SHA-1 के साथ हुआ, तो पुरानी प्रणालियों को नए एल्गोरिथ्म में माइग्रेट करना एक जटिल और समय-साध्य कार्य होता है। रेनबो टेबल अटैक एक तकनीक है जिसमें हमलावर पहले से गणना किए गए लाखों पासवर्ड-हैश जोड़ों की सूची का उपयोग करके कमजोर हैशिंग को तोड़ने का प्रयास करता है — इससे बचने के लिए साल्टिंग (Salting) तकनीक का उपयोग किया जाता है, जिसमें प्रत्येक पासवर्ड में हैशिंग से पहले एक यूनिक रैंडम वैल्यू जोड़ी जाती है।

संभावित प्रश्न

2 अंक:

  • हैशिंग की परिभाषा दीजिए।
  • कोलिजन रेसिस्टेंस क्या है?
  • MD5 कितने बिट की हैश वैल्यू उत्पन्न करता है?
  • SHA-256 का पूरा अर्थ क्या है?
  • साल्टिंग क्या है?
  • Collision क्या है?

5 अंक:

  • हैशिंग और एन्क्रिप्शन में अंतर बताइए।
  • MD5 की कमजोरियों का वर्णन कीजिए।
  • SHA परिवार के विभिन्न संस्करणों की तुलना कीजिए।
  • पासवर्ड स्टोरेज में हैशिंग का उपयोग किस प्रकार होता है?

15 अंक:

  • हैशिंग की मूल अवधारणा, इसकी विशेषताएँ और कार्यप्रणाली का विस्तारपूर्वक वर्णन कीजिए। MD5 और SHA एल्गोरिथ्म की तुलनात्मक समीक्षा सम्मिलित करें।
  • MD5 से SHA-1 और फिर SHA-2/SHA-3 तक के विकास का विश्लेषण कीजिए तथा बताइए कि किस प्रकार सुरक्षा कमजोरियों ने हैशिंग एल्गोरिथ्म के विकास को प्रभावित किया।
  •  MD5 और SHA की तुलनात्मक समीक्षा।
  • Hashing की कार्यप्रणाली एवं उपयोग।
  • MD5 से SHA-3 तक विकास।

For English Notes Click here Arun Computer

error: Content is protected !!