क्रिप्टोग्राफिक हैश फंक्शन

क्रिप्टोग्राफिक हैश फ़ंक्शन परिभाषा

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

क्रिप्टोग्राफिक हैश फ़ंक्शन का मुख्य उपयोग डेटा के एक टुकड़े की प्रामाणिकता को सत्यापित करना है। दो फाइलों को केवल समान होने का आश्वासन दिया जा सकता है यदि एक ही क्रिप्टोग्राफिक हैश फ़ंक्शन का उपयोग करके प्रत्येक फ़ाइल से उत्पन्न चेकसम समान हैं।

कुछ सामान्य रूप से इस्तेमाल किए गए क्रिप्टोग्राफिक हैश फ़ंक्शंस में एमडी 5 और एसएचए -1 शामिल हैं , हालांकि कई अन्य भी मौजूद हैं।

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

क्रिप्टोग्राफिक हैश फ़ंक्शन: एक केस का उपयोग करें

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

चेकसम कैलकुलेटर का उपयोग करके, आप एक विशेष क्रिप्टोग्राफिक हैश फ़ंक्शन (SHA-2 कहें) का उपयोग करके चेकसम की गणना करते हैं और उसके बाद मोज़िला की साइट पर प्रकाशित एक से इसकी तुलना करें।

यदि वे बराबर हैं, तो आप उचित रूप से सुनिश्चित कर सकते हैं कि आपके पास डाउनलोड एक मोज़िला है जिसका इरादा आपके पास है।

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

क्रिप्टोग्राफिक हैश फ़ंक्शंस को उलट दिया जा सकता है?

क्रिप्टोग्राफिक हैश फ़ंक्शन को मूल ग्रंथों में बनाए गए चेकसमों को वापस करने की क्षमता को रोकने के लिए डिज़ाइन किया गया है।

हालांकि, भले ही वे विपरीत रूप से असंभव हैं, इसका मतलब यह नहीं है कि वे डेटा की सुरक्षा के लिए 100% गारंटीकृत हैं।

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

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

यहां एक इंद्रधनुष तालिका का सरलीकृत संस्करण है यह दिखाने के लिए कि SHA-1 क्रिप्टोग्राफ़िक हैश फ़ंक्शन का उपयोग करते समय कोई कैसे काम करेगा:

सादे पाठ एसएचए -1 चेकसम
12345 8cb2237d0679ca88db6464eac60da96345513964
password1 e38ad214943daad1d64c102faec29de4afe9da3d
मुझे अपने कुत्ते से प्यार है a25fb3505406c9ac761c8428692fbf5d5ddf1316
Jenny400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
dallas1984 c1ebe6d80f4c7c087ad29d2c0dc3e059fc919da2

चेकसम का उपयोग करके इन मानों को समझने के लिए, यह आवश्यक होगा कि हैकर समझता है कि कौन सा क्रिप्टोग्राफिक हैश एल्गोरिदम उन्हें उत्पन्न करने के लिए उपयोग किया गया था।

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

यह एक नया मान उत्पन्न करता है कि केवल वेब सर्वर ही समझता है और यह मूल चेकसम से बिल्कुल मेल नहीं खाता है।

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

ऐसा करने से एक हैक की उपयोगिता सीमित हो जाती है जहां सभी चेकसम चोरी हो जाते हैं।

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

पासवर्ड और क्रिप्टोग्राफिक हैश फ़ंक्शंस

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

यह देखते हुए कि एक क्रिप्टोग्राफिक हैश फ़ंक्शन एक गैर-परिवर्तनीय चेकसम उत्पन्न करता है, इसका मतलब यह है कि आप 1245 34 $ 5 की बजाय 12345 के रूप में अपना पासवर्ड आसान बना सकते हैं, केवल इसलिए कि चेकसम स्वयं को समझा नहीं जा सकता है? यह निश्चित रूप से नहीं करता है , और यहां क्यों है ...

जैसा कि आप देख सकते हैं, इन दो पासवर्ड केवल चेकसम पर देखकर समझना असंभव हैं:

12345 के लिए एमडी 5: 827ccb0eea8a706c4c34a16891f84e7b

12 @ 34 $ 5 के लिए एमडी 5: a4d3cc004f487b18b2ccd4853053818b

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

एक क्रूर बल का हमला तब होता है जब पासवर्ड अनुमान लगाने पर कई यादृच्छिक स्टैब लिया जाता है। इस मामले में, "12345" अनुमान लगाना बहुत आसान होगा, लेकिन दूसरे को यादृच्छिक रूप से समझना बहुत मुश्किल है। एक शब्दकोश हमला समान होता है कि हमलावर सामान्य (और कम सामान्य रूप से उपयोग किए गए) पासवर्ड की सूची से प्रत्येक शब्द, संख्या या वाक्यांश को आजमा सकता है, "12345" निश्चित रूप से ऐसा किया जा रहा है।

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

युक्ति: यदि आप सुनिश्चित नहीं हैं कि आपका एक मजबूत पासवर्ड माना जाता है या नहीं, तो कमजोर पासवर्ड के उदाहरण देखें।

क्रिप्टोग्राफिक हैश फ़ंक्शंस पर अधिक जानकारी

ऐसा लगता है जैसे क्रिप्टोग्राफिक हैश फ़ंक्शन एन्क्रिप्शन से संबंधित हैं लेकिन दोनों काम बहुत अलग तरीकों से हैं।

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

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

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

कारण टकराव हो सकते हैं क्योंकि प्रत्येक क्रिप्टोग्राफिक हैश फ़ंक्शन इनपुट डेटा के बावजूद निश्चित लंबाई का मान उत्पन्न करता है। उदाहरण के लिए, एमडी 5 क्रिप्टोग्राफिक हैश फ़ंक्शन डेटा के तीन पूरी तरह से अलग-अलग ब्लॉक के लिए 827ccb0eea8a706c4c34a16891f84e7b, 1f633b2909b9c1addf32302c7a497983 , और e10adc3949ba59abbe56e057f20f883e उत्पन्न करता है।

पहला चेकसम 12345 से है , दूसरा 700 अक्षरों और संख्याओं से उत्पन्न हुआ था, और तीसरा 123456 से है । सभी तीन इनपुट अलग-अलग लंबाई के होते हैं लेकिन एमडी 5 का उपयोग होने के बाद परिणाम हमेशा 32 वर्ण लंबे होते हैं।

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

यही कारण है कि अन्य क्रिप्टोग्राफिक हैश फ़ंक्शन बनाए गए हैं। जबकि एमडी 5 32-वर्ण मान उत्पन्न करता है, SHA-1 40 वर्ण उत्पन्न करता है और SHA-2 (512) 128 उत्पन्न करता है। चेकसम के पात्रों की संख्या जितनी अधिक होगी, टक्कर कम होने की संभावना कम होगी क्योंकि यह अधिक जगह प्रदान करता है अद्वितीय मूल्य