कोलाइसन अटैक: Difference between revisions
m (Deepak moved page टकराव का हमला to कोलाइसन अटैक without leaving a redirect) |
(text) |
||
Line 1: | Line 1: | ||
{{Short description|Cryptographic attack}} | {{Short description|Cryptographic attack}} | ||
[[क्रिप्टोग्राफी]] में, [[क्रिप्टोग्राफ़िक हैश]] पर '''कोलाइसन अटैक''' समान हैश वैल्यू उत्पन्न करने वाले दो इनपुट को खोजने का प्रयास करता है, अर्थात हैश कोलाइसन। यह प्रीइमेज अटैक के विपरीत है जहां एक स्पेसिफिक टारगेट हैश वैल्यू निर्दिष्ट किया जाता है। | |||
[[क्रिप्टोग्राफी]] में, [[क्रिप्टोग्राफ़िक हैश]] पर | |||
कोलाइसन के अटैक रफ़ली दो प्रकार के होते हैं: | |||
; | ;क्लासिकल कोलाइसन अटैक: दो अलग-अलग मैसेज ''m<sub>1</sub>'' औरm<sub>2</sub> इस प्रकार ढूंढें कि ''hash''(''m''<sub>1</sub>) = ''hash''(''m''<sub>2</sub>)। | ||
अधिक सामान्यतः: | |||
; | ;चूजेन-प्रीफिक्स कोलाइसन अटैक: दो अलग-अलग प्रीफिक्स p<sub>1</sub> और p<sub>2</sub> दिए गए, दो उपांग m<sub>1</sub> और m<sub>2</sub> इस प्रकार खोजें कि ''hash''(''p''<sub>1</sub> ∥ ''m''<sub>1</sub>) = ''hash''(''p''<sub>2</sub> ∥ ''m''<sub>2</sub>), जहां ∥ कॉनकाटीनेशन को दर्शाता है। | ||
== | ==क्लासिकल कोलाइसन अटैक== | ||
गणितीय रूप से कहा गया है, एक | गणितीय रूप से कहा गया है, एक कोलाइसन के अटैक में दो अलग-अलग मैसेज m1 और m2 मिलते हैं, जैसे कि हैश ''hash(m1)'' = ''hash(m2)''। क्लासिकल कोलाइसन के अटैक में, अटैकर का किसी भी मैसेज कंटेंट पर कोई कंट्रोल नहीं होता है, लेकिन उन्हें एल्गोरिदम द्वारा अर्बिट्रेरिली चुना जाता है। | ||
जैसे [[सममित-कुंजी सिफर]] | जैसे [[सममित-कुंजी सिफर|सिमेट्रिक-की साइफर]] ब्रूट फोर्स अटैक के प्रति वल्नरेबल होते हैं, वैसे ही प्रत्येक [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन]] बर्थडे अटैक का उपयोग करके कोलाइसन के लिए स्वाभाविक रूप से वल्नरेबल होता है। [[जन्मदिन की समस्या|बर्थडे प्रॉब्लम]] के कारण, ये अटैक किसी ब्रूट फोर्स की तुलना में कहीं अधिक तीव्र होते हैं। n बिट्स का एक हैश 2<sup>n/2</sup> समय चरण (हैश फ़ंक्शन का मूल्यांकन) में तोड़ा जा सकता है। | ||
स्पेसिफिक हैश फ़ंक्शंस में [[क्रिप्ट विश्लेषण|क्रिप्टएनालिसिस]] को नियोजित करके अधिक कुशल अटैक संभव हैं। जब कोलाइसन अटैक का पता चलता है और बर्थडे अटैक की तुलना में तीव्र पाया जाता है, तो हैश फ़ंक्शन को प्रायः टूटा हुआ घोषित किया जाता है। [[एनआईएसटी हैश फ़ंक्शन प्रतियोगिता|एनआईएसटी हैश फ़ंक्शन कॉम्पीटीशन]] मुख्य रूप से दो बहुत ही सामान्य रूप से उपयोग किए जाने वाले हैश फ़ंक्शन, [[एमडी5]] और [[SHA-1|एसएचए-1]] के विरुद्ध प्रकाशित कोलाइसन अटैक से प्रेरित थी। <ref name="md5-2004">Xiaoyun Wang, Dengguo Feng, Xuejia Lai, Hongbo Yu: [http://eprint.iacr.org/2004/199 Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD], Cryptology ePrint Archive Report 2004/199, 16 Aug 2004, revised 17 Aug 2004. Retrieved July 27, 2008.</ref> एमडी5 के विरुद्ध कोलाइसन अटैक में इतना सुधार हुआ है कि, 2007 तक, एक रेगुलर कंप्यूटर पर इसमें केवल कुछ सेकंड लगते हैं। <ref>{{cite journal |author=M.M.J. Stevens |date=June 2007 |title=On Collisions for MD5 |url=http://www.win.tue.nl/hashclash/On%20Collisions%20for%20MD5%20-%20M.M.J.%20Stevens.pdf |quote=[...] we are able to find collisions for MD5 in about 2<sup>24.1</sup> compressions for recommended IHVs which takes approx. 6 seconds on a 2.6GHz Pentium 4. }}</ref> इस तरह से बनाए गए हैश कोलाइसन सामान्यतः कांस्टेंट लेंथ के होते हैं और काफी हद तक अनस्ट्रक्चर्ड होते हैं, इसलिए इन्हें व्यापक डॉक्यूमेंट फॉर्मेट या प्रोटोकॉल पर अटैक करने के लिए सीधे लागू नहीं किया जा सकता है। | |||
हालाँकि, कई प्रारूपों में | हालाँकि, कई प्रारूपों में उपस्थित डायनामिक कंस्ट्रस्ट्स का दुरुपयोग करके वर्कअराउंड संभव है। इस तरह, दो डॉक्यूमेंट बनाए जाएंगे जो समान हैश वैल्यू रखने के लिए यथासंभव समान होंगे। एक डॉक्यूमेंट पर साइन करने के लिए अथॉरिटी को दिखाया जाएगा, और फिर साइन को दूसरी फ़ाइल में कॉपी किया जा सकता है। ऐसे मालिशियस डॉक्यूमेंट में एक ही डॉक्यूमेंट में दो अलग-अलग मैसेज होंगे, लेकिन फ़ाइल में सटल चेंज के माध्यम से कन्डीशनली एक या दूसरे को डिस्प्ले किया जाएगा: | ||
* कुछ | * कुछ डॉक्यूमेंट प्रारूप जैसे [[ परिशिष्ट भाग |पोस्टस्क्रिप्ट]], या [[माइक्रोसॉफ्ट वर्ड]] में [[मैक्रो (कंप्यूटर विज्ञान)]] में कंडीशनल कंस्ट्रस्ट्स होती हैं। <ref>{{cite web |author=Magnus Daum |author2=Stefan Lucks |author2-link=Stefan Lucks |title=हैश टकराव (जहरीला संदेश हमला)|work=[[Eurocrypt]] 2005 rump session |url=http://th.informatik.uni-mannheim.de/People/lucks/HashCollisions/ |url-status=dead |archive-url=https://web.archive.org/web/20100327141611/http://th.informatik.uni-mannheim.de/people/lucks/HashCollisions/ |archive-date=2010-03-27 }}</ref><ref name=special-file-formats>{{cite journal |author1=Max Gebhardt |author2=Georg Illies |author3=Werner Schindler |title=विशेष फ़ाइल प्रारूपों के लिए एकल हैश टकराव के व्यावहारिक मूल्य पर एक नोट|date=4 January 2017 |url=http://csrc.nist.gov/groups/ST/hash/documents/Illies_NIST_05.pdf }}</ref> (यदि-तब-अन्यथा) जो यह परीक्षण करने की अनुमति देता है कि क्या डिस्प्ले होने को कंट्रोल करने के लिए फ़ाइल में किसी लोकेशन का एक या दूसरा वैल्यू है। | ||
*टीआईएफएफ फाइलों में क्रॉप की गई | *टीआईएफएफ फाइलों में क्रॉप की गई इमेज हो सकती हैं, जिसमें हैश वैल्यू को प्रभावित किए बिना इमेज का एक अलग हिस्सा डिस्प्ले किया जा सकता है। <ref name=special-file-formats /> | ||
*[[पीडीएफ]] फाइलें कलर वैल्यू का उपयोग करके कोलाइसन अटैक के प्रति वल्नरेबल होती हैं (जैसे कि एक मैसेज का टेक्स्ट सफेद कलर के साथ डिस्प्ले होता है जो बैकग्राउंड में ब्लेंड होता है, और दूसरे मैसेज का टेक्स्ट डार्क कलर के साथ डिस्प्ले होता है) साइन्ड डॉक्यूमेंट की सामग्री बदलने की लिए जिसे बाद में अल्टर जा सकता है। <ref name="special-file-formats" /> | |||
== | ==चूज़न-प्रीफिक्स कोलाइसन अटैक== | ||
कोलाइसन अटैक का एक एक्सटेंशन चूज़न-प्रीफिक्स कोलाइसन अटैक है, जो मर्कल-डैमगार्ड हैश फ़ंक्शन के लिए स्पेसिफिक है। इस केस में, अटैकर दो अर्बिट्रेरिली अलग-अलग डॉक्यूमेंट चुन सकता है, और फिर अलग-अलग काउंट किए गए वैल्यू जोड़ सकता है जिसके परिणामस्वरूप पूरे डॉक्यूमेंट में एक समान हैश वैल्यू होता है। यह अटैक क्लासिकल कोलाइसन अटैक से कहीं अधिक शक्तिशाली है। | |||
गणितीय रूप से कहा गया है, दो अलग-अलग | गणितीय रूप से कहा गया है, दो अलग-अलग प्रीफिक्स ''p''<sub>1</sub>, ''p''<sub>2</sub> दिए गए हैं, अटैक में दो उपांग m<sub>1</sub> और m<sub>2</sub> इस प्रकार मिलते हैं कि ''hash''(''p''<sub>1</sub> ∥ ''m''<sub>1</sub>) = ''hash''(''p''<sub>2</sub> ∥ ''m''<sub>2</sub>) (जहाँ ∥ कॉनकाटीनेशन है)। | ||
2007 में, एमडी5 के विरुद्ध एक | 2007 में, एमडी5 के विरुद्ध एक चूज़न-प्रीफिक्स कोलाइसन अटैक पाया गया, जिसके लिए एमडी5 फ़ंक्शन के लगभग 2<sup>50</sup> इवैल्यूएशन की आवश्यकता थी। पेपर अलग-अलग डोमेन नेम के लिए कोलाइडिंग हैश वैल्यू के साथ दो X.509 सर्टिफिकेट भी डिस्प्ले करता है। इसका अर्थ यह है कि एक सर्टिफिकेट अथॉरिटी को एक डोमेन के लिए सर्टिफिकेट पर साइन करने के लिए कहा जा सकता है, और फिर उस सर्टिफिकेट (विशेष रूप से उसके साइन) का उपयोग किसी अन्य डोमेन को इमपरसोनेट करने के लिए एक नया रॉग सर्टिफिकेट बनाने के लिए किया जा सकता है।<ref name=md5-chosen-2007>{{cite journal |author1=Marc Stevens |author2=Arjen Lenstra |author3=Benne de Weger |date=2007-11-30 |title=Chosen-prefix Collisions for MD5 and Colliding X.509 Certificates for Different Identities |journal=Lecture Notes in Computer Science |volume=4515 |page=1 |doi=10.1007/978-3-540-72540-4_1 |bibcode=2007LNCS.4515....1S |isbn=978-3-540-72539-8 |url=http://www.win.tue.nl/hashclash/ChosenPrefixCollisions/ |doi-access=free }}</ref> | ||
एक रियल-वर्ल्ड कोलाइसन अटैक दिसंबर 2008 में प्रकाशित हुआ था जब सिक्योरिटी रिसर्चर के एक समूह ने एक फ़ोर्ज़ड X.509 साइन सर्टिफिकेट प्रकाशित किया था जिसका उपयोग एमडी 5 हैश फ़ंक्शन के विरूद्व प्रीफिक्स कोलाइसन अटैक का लाभ उठाते हुए, सर्टिफिकेट अथॉरिटी को इमपरसोनेट करने के लिए किया जा सकता था। इसका अर्थ यह था कि एक अटैकर किसी भी [[ परिवहन परत सुरक्षा |ट्रांसपोर्ट लेयर सिक्योरिटी]] - सिक्योर्ड वेबसाइट को मिडिल-मैन के रूप में प्रस्तुत कर सकता है, जिससे [[इलेक्ट्रॉनिक कॉमर्स]] की सिक्योरिटी के लिए प्रत्येक [[वेब ब्राउज़र]] में निर्मित सर्टिफिकेट वेलिडेशन को नष्ट कर दिया जा सकता है। गलत सर्टिफिकेट वास्तविक अधिकारियों द्वारा रीवोकेबल नहीं किया जा सकता है, और इसमें अर्बिट्रेरिली फ़ोर्ज़ड एक्सपायरी टाइम भी हो सकता है। हालाँकि 2004 में एमडी5 को बहुत वीक माना जाता था,<ref name="md5-2004" /> सर्टिफिकेट अथॉरिटी अभी भी दिसंबर 2008 में एमडी5-वेरिफाइड सर्टिफिकेटों पर साइन करने के इच्छुक थे, <ref>{{cite web |date=2008-12-30 |author=Alexander Sotirov |title=एक दुष्ट सीए प्रमाणपत्र बनाना|url=http://www.phreedom.org/research/rogue-ca/ |display-authors=etal |access-date=2009-10-07 |archive-url=https://web.archive.org/web/20120418172628/http://www.phreedom.org/research/rogue-ca/ |archive-date=2012-04-18 |url-status=dead }}</ref> और कम से कम एक माइक्रोसॉफ्ट कोड-साइन सर्टिफिकेट मई 2012 में अभी भी एमडी5 का उपयोग कर रहा था। | |||
फ़्लेम (मैलवेयर) मैलवेयर ने माइक्रोसॉफ्ट रूट सर्टिफिकेट द्वारा अपने घटकों के कोड साइन को धोखा देने के लिए चुने हुए-प्रीफिक्स कोलाइसन अटैक के एक नए वेरिएशन का सफलतापूर्वक उपयोग किया जो अभी भी कम्प्रोमाइस्ड एमडी5 एल्गोरिदम का उपयोग करता है। <ref>{{cite web| url=http://blogs.technet.com/b/msrc/archive/2012/06/03/microsoft-releases-security-advisory-2718704.aspx?Redirected=true| title=Microsoft releases Security Advisory 2718704|publisher=[[Microsoft]]|date=3 June 2012|access-date=4 June 2012|archive-url=https://web.archive.org/web/20120607215605/http://blogs.technet.com/b/msrc/archive/2012/06/03/microsoft-releases-security-advisory-2718704.aspx?Redirected=true|archive-date=7 June 2012|url-status=dead}}</ref><ref>{{cite web|url=http://www.cwi.nl/news/2012/cwi-cryptanalist-discovers-new-cryptographic-attack-variant-in-flame-spy-malware|title=सीडब्ल्यूआई क्रिप्टैनालिस्ट ने फ़्लेम स्पाई मैलवेयर में नए क्रिप्टोग्राफ़िक अटैक वेरिएंट की खोज की|author=Marc Stevens|publisher=Centrum Wiskunde & Informatica|date=7 June 2012|access-date=9 June 2012}}</ref> | |||
2019 में, रिसर्चर ने 2<sup>66.9</sup>और 2<sup>69.4</sup> के बीच और लागत 100,000 अमेरिकी डॉलर से कम कंप्यूटिंग कॉम्पलेक्सिटी के साथ एसएचए-1 के विरुद्ध एक चूज़न-प्रीफिक्स कोलाइसन अटैक पाया। <ref name="SHA-1 collision attacks are now actually practical and a looming danger_2019"> {{cite news | title = SHA-1 टकराव के हमले अब वास्तव में व्यावहारिक हैं और एक खतरा मंडरा रहा है| url = https://www.zdnet.com/article/sha-1-collision-attacks-are-now-actually-practical-and-a-looming-danger/ | work = ZDNet | author = Catalin Cimpanu | language = en | date = 2019-05-13 }} </ref><ref name="Collisions of Chosen-Prefix Collisions SHA-1_2019"> {{cite web | title = टकरावों से लेकर चयनित-उपसर्ग टकरावों के अनुप्रयोग से लेकर पूर्ण SHA-1 तक| url = https://eprint.iacr.org/2019/459.pdf | author1 = Gaëtan Leurent |author2=Thomas Peyrin | date = 2019-05-06 }} </ref> 2020 में, रिसर्चर ने एसएचए-1 के विरुद्ध चुने गए-प्रीफिक्स कोलाइसन अटैक की कॉम्पलेक्सिटी को कम करके 2<sup>63.4</sup> कर दिया। <ref name="SHA-1 is a Shambles - First Chosen-Prefix Collision on SHA-1 and Application to the PGP Web of Trust">{{cite web | title = SHA-1 एक जर्जर स्थिति है - SHA-1 पर पहला चुना-उपसर्ग टकराव और ट्रस्ट के पीजीपी वेब पर अनुप्रयोग| url = https://eprint.iacr.org/2020/014.pdf | author1 = Gaëtan Leurent |author2=Thomas Peyrin | date = 2020-01-05 }}</ref> | |||
2008 में, | |||
==अटैक सिनेरियो== | |||
क्रिप्टोग्राफ़िक हैश फ़ंक्शंस के कई एप्लीकेशन [[टकराव प्रतिरोध|कोलाइसन रेजिस्टेंस]] पर निर्भर नहीं होते हैं, इस प्रकार कोलाइसन अटैक उनकी सिक्योरिटी को प्रभावित नहीं करते हैं। उदाहरण के लिए, [[एचएमएसी]] वल्नरेबल नहीं हैं। <ref name=collision-qna>{{cite web |date=2005-02-15 |title=हैश टकराव प्रश्नोत्तर|publisher=Cryptography Research Inc. |url=http://www.cryptography.com/cnews/hash.html |quote=जिस तरह से एचएमएसी निर्माण में हैश फ़ंक्शन का उपयोग किया जाता है, इन हालिया हमलों में उपयोग की जाने वाली तकनीकें लागू नहीं होती हैं|archive-url = https://web.archive.org/web/20080717103333/http://www.cryptography.com/cnews/hash.html |archive-date = 2008-07-17}}</ref> अटैक के उपयोगी होने के लिए, अटैकर के पास हैश फ़ंक्शन के इनपुट का कंट्रोल होना चाहिए। | |||
===डिजिटल साइन=== | |||
क्योंकि डिजिटल साइन एल्गोरिदम बड़ी मात्रा में डेटा पर एफिशिऐंटली साइन नहीं कर सकते हैं, अधिकांश इम्प्लीमेंटेशन डेटा की मात्रा को कम करने (संपीड़ित) के लिए हैश फ़ंक्शन का उपयोग करते हैं जिन्हें कांस्टेंट साइज में साइन डाउन करने की आवश्यकता होती है। जैसे ही अंडरलाइंग हैश फ़ंक्शन प्रक्टिकली टूट जाता है, डिजिटल साइन स्कीम प्रायः हैश कोलाइसन के प्रति वल्नरेबल हो जाती हैं; अंडरलाइंग हैशिंग जैसी तकनीकें कठिन प्रीइमेज अटैक की आवश्यकता के कारण अतिरिक्त समय खरीद लेंगी। <ref>Shai Halevi and Hugo Krawczyk, [http://www.ee.technion.ac.il/~hugo/rhash/ Randomized Hashing and Digital Signatures]</ref> | |||
सामान्य अटैक सिनेरियो इस प्रकार होता है: | |||
# मैलोरी दो अलग-अलग डॉक्यूमेंट A और B बनाता है जिनका हैश वैल्यू समान होता है, यानी कोलाइसन। मैलोरी बॉब को डॉक्यूमेंट बी स्वीकार करने के लिए ओसटेन्सीब्ली ऐलिस से धोखा देना चाहता है। | |||
# मैलोरी डॉक्यूमेंट ए को ऐलिस को भेजता है, जो डॉक्यूमेंट में कही गई बातों से सहमत होती है, उसके हैश पर साइन करती है, और मैलोरी को साइन भेजती है। | |||
# मैलोरी डॉक्यूमेंट ए से डॉक्यूमेंट बी में साइन जोड़ता है। | |||
# मैलोरी फिर बॉब को साइन और डॉक्यूमेंट बी भेजता है, यह दावा करते हुए कि ऐलिस ने बी पर साइन किए हैं। क्योंकि डिजिटल साइन डॉक्यूमेंट बी के हैश से मेल खाता है, बॉब का सॉफ़्टवेयर सब्स्टिट्यूशन का पता लगाने में असमर्थ है। | |||
2008 में, रिसर्चर ने इस सिनेरियो का उपयोग करते हुए, एक रॉग सर्टिफिकेट अथॉरिटी सर्टिफिकेट तैयार करने के लिए, एमडी5 के विरुद्ध एक चुने हुए-प्रीफिक्स कोलाइसन अटैक का उपयोग किया। उन्होंने ट्रांसपोर्ट लेयर सिक्योरिटी [[सार्वजनिक कुंजी प्रमाणपत्र|पब्लिक की सर्टिफिकेट]] के दो संस्करण बनाए, जिनमें से एक वैध प्रतीत हुआ और रैपिडएसएसएल सर्टिफिकेट प्राधिकरण द्वारा साइन करने के लिए प्रस्तुत किया गया। दूसरे संस्करण में, जिसमें समान एमडी5 हैश था, इसमें फ्लैग सम्मिलित थे जो वेब ब्राउज़र को अर्बिट्रेरिली अन्य सर्टिफिकेट जारी करने के लिए इसे वैध अथॉरिटी के रूप में स्वीकार करने का संकेत देते थे। <ref>{{cite conference |url=http://www.win.tue.nl/hashclash/rogue-ca/ |author=Alexander Sotirov |author2=Marc Stevens |author3=Jacob Appelbaum |author4=Arjen Lenstra |author5=David Molnar |author6=Dag Arne Osvik |author7=Benne de Weger |date=30 December 2008 |title=MD5 considered harmful today |conference=[[Chaos Communication Congress]] 2008 }}</ref> | |||
===हैश फ्लडिंग=== | ===हैश फ्लडिंग=== | ||
हैश फ्लडिंग (जिसे | हैश फ्लडिंग (जिसे हैशडोएस के नाम से भी जाना जाता है <ref>{{cite book |last1=Falkenberg |first1=Andreas |last2=Mainka |first2=Christian |last3=Somorovsky |first3=Juraj |last4=Schwenk |first4=Jörg |title=2013 IEEE 20th International Conference on Web Services |chapter=A New Approach towards DoS Penetration Testing on Web Services |year=2013 |pages=491–498 |doi=10.1109/ICWS.2013.72|isbn=978-0-7695-5025-1 |s2cid=17805370 }}</ref>) डिनायल ऑफ़ सर्विस से इनकार है जो[[ हैश तालिका | हैश टेबल]] लुकअप के वर्स्ट-केस (रैखिक जांच) रनटाइम का लाभ उठाने के लिए हैश कोलाइसन का उपयोग करता है। <ref name=v8>{{cite web |title=About that hash flooding vulnerability in Node.js... · V8 |url=https://v8.dev/blog/hash-flooding |website=v8.dev}}</ref> इसे मूल रूप से 2003 में डिस्क्राइब किया गया था। इस तरह के अटैक को अंजाम देने के लिए, अटैकर सर्वर को डेटा के कई पीस भेजता है जो समान मूल्य पर हैश होता है और फिर सर्वर को धीमी गति से लुकअप करने का प्रयास करता है। चूंकि हैश तालिकाओं में उपयोग किए जाने वाले हैश फ़ंक्शन का मुख्य फोकस सिक्योरिटी के स्थान पर स्पीड पर था, इसलिए अधिकांश प्रमुख प्रोग्रामिंग भाषाएं प्रभावित हुईं,<ref>Scott A. Crosby and Dan S. Wallach. 2003. Denial of service via algorithmic complexity attacks. In Proceedings of the 12th conference on USENIX Security Symposium - Volume 12 (SSYM'03), Vol. 12. USENIX Association, Berkeley, CA, USA, 3-3.</ref> इस वर्ग की नई वुलनेराबिलिटीज़ मूल प्रस्तुति के एक दशक बाद भी दिखाई दे रही हैं। <ref name=v8/> | ||
हैश फ़ंक्शन को अत्यधिक जटिल बनाए बिना हैश | हैश फ़ंक्शन को अत्यधिक जटिल बनाए बिना हैश फ्लडिंग को रोकने के लिए, नए कुंजी वाले हैश फ़ंक्शन प्रस्तुत किए गए हैं, सिक्योरिटी ऑब्जेक्टिव के साथ जब तक की अननोन है तब तक कोलाइसन ढूंढना कठिन है। वे पिछले हैश की तुलना में धीमे हो सकते हैं, लेकिन क्रिप्टोग्राफ़िक हैश की तुलना में काउंट करना अभी भी बहुत आसान है। 2021 तक, डेनियल जे. बर्नस्टीन सिपहैश (2012) इस वर्ग में सबसे व्यापक रूप से उपयोग किया जाने वाला हैश फ़ंक्शन है। <ref name="SipHash">{{cite web | ||
|url=https://131002.net/siphash/siphash.pdf | |url=https://131002.net/siphash/siphash.pdf | ||
|title=SipHash: a fast short-input PRF | |title=SipHash: a fast short-input PRF | ||
Line 57: | Line 62: | ||
|name-list-style=amp | |name-list-style=amp | ||
|date=2012-09-18 | |date=2012-09-18 | ||
}}</ref> (गैर-कुंजी वाले सरल हैश तब तक उपयोग के लिए सुरक्षित रहते हैं जब तक एप्लिकेशन की हैश तालिका बाहर से | }}</ref> (गैर-कुंजी वाले सरल हैश तब तक उपयोग के लिए सुरक्षित रहते हैं जब तक एप्लिकेशन की हैश तालिका बाहर से कंट्रोल नहीं होती है।) | ||
(आंशिक) प्रीइमेज | (आंशिक) प्रीइमेज अटैक का उपयोग करके [[ब्लूम फिल्टर]] को भरने के लिए एक समान अटैक करना संभव है। <ref>{{cite thesis |last1=Gerbet |first1=Thomas |last2=Kumar |first2=Amrit |last3=Lauradoux |first3=Cédric |title=ब्लूम फिल्टर्स में दुष्ट विकल्पों की शक्ति|url=https://hal.inria.fr/hal-01082158v2 |publisher=INRIA Grenoble |language=en |date=12 November 2014|type=report }}</ref> | ||
Line 68: | Line 73: | ||
==बाहरी संबंध== | ==बाहरी संबंध== | ||
* [https://web.archive.org/web/20151222161723/http://www.iaik.tugraz.at/content/research/krypto/sha1/MeaningfulCollisions.php "Meaningful Collisions", attack scenarios for exploiting cryptographic hash collisions] | * [https://web.archive.org/web/20151222161723/http://www.iaik.tugraz.at/content/research/krypto/sha1/MeaningfulCollisions.php "Meaningful Collisions", attack scenarios for exploiting cryptographic hash collisions] | ||
* [http://www.bishopfox.com/resources/tools/other-free-tools/md4md5-collision-code/ Fast | * [http://www.bishopfox.com/resources/tools/other-free-tools/md4md5-collision-code/ Fast एमडी5 and एमडी4 Collision Generators] - Bishop Fox (formerly Stach & Liu). Create एमडी4 and एमडी5 hash collisions using groundbreaking new code that improves upon the techniques originally developed by Xiaoyun Wang. Using a 1.6 GHz Pentium 4, एमडी5 collisions can be generated in an average of 45 minutes, and एमडी4 collisions can be generated in an average of 5 seconds. Originally released on 22Jun2006. | ||
{{Cryptography navbox|hash}} | {{Cryptography navbox|hash}} |
Revision as of 12:01, 6 August 2023
क्रिप्टोग्राफी में, क्रिप्टोग्राफ़िक हैश पर कोलाइसन अटैक समान हैश वैल्यू उत्पन्न करने वाले दो इनपुट को खोजने का प्रयास करता है, अर्थात हैश कोलाइसन। यह प्रीइमेज अटैक के विपरीत है जहां एक स्पेसिफिक टारगेट हैश वैल्यू निर्दिष्ट किया जाता है।
कोलाइसन के अटैक रफ़ली दो प्रकार के होते हैं:
- क्लासिकल कोलाइसन अटैक
- दो अलग-अलग मैसेज m1 औरm2 इस प्रकार ढूंढें कि hash(m1) = hash(m2)।
अधिक सामान्यतः:
- चूजेन-प्रीफिक्स कोलाइसन अटैक
- दो अलग-अलग प्रीफिक्स p1 और p2 दिए गए, दो उपांग m1 और m2 इस प्रकार खोजें कि hash(p1 ∥ m1) = hash(p2 ∥ m2), जहां ∥ कॉनकाटीनेशन को दर्शाता है।
क्लासिकल कोलाइसन अटैक
गणितीय रूप से कहा गया है, एक कोलाइसन के अटैक में दो अलग-अलग मैसेज m1 और m2 मिलते हैं, जैसे कि हैश hash(m1) = hash(m2)। क्लासिकल कोलाइसन के अटैक में, अटैकर का किसी भी मैसेज कंटेंट पर कोई कंट्रोल नहीं होता है, लेकिन उन्हें एल्गोरिदम द्वारा अर्बिट्रेरिली चुना जाता है।
जैसे सिमेट्रिक-की साइफर ब्रूट फोर्स अटैक के प्रति वल्नरेबल होते हैं, वैसे ही प्रत्येक क्रिप्टोग्राफ़िक हैश फ़ंक्शन बर्थडे अटैक का उपयोग करके कोलाइसन के लिए स्वाभाविक रूप से वल्नरेबल होता है। बर्थडे प्रॉब्लम के कारण, ये अटैक किसी ब्रूट फोर्स की तुलना में कहीं अधिक तीव्र होते हैं। n बिट्स का एक हैश 2n/2 समय चरण (हैश फ़ंक्शन का मूल्यांकन) में तोड़ा जा सकता है।
स्पेसिफिक हैश फ़ंक्शंस में क्रिप्टएनालिसिस को नियोजित करके अधिक कुशल अटैक संभव हैं। जब कोलाइसन अटैक का पता चलता है और बर्थडे अटैक की तुलना में तीव्र पाया जाता है, तो हैश फ़ंक्शन को प्रायः टूटा हुआ घोषित किया जाता है। एनआईएसटी हैश फ़ंक्शन कॉम्पीटीशन मुख्य रूप से दो बहुत ही सामान्य रूप से उपयोग किए जाने वाले हैश फ़ंक्शन, एमडी5 और एसएचए-1 के विरुद्ध प्रकाशित कोलाइसन अटैक से प्रेरित थी। [1] एमडी5 के विरुद्ध कोलाइसन अटैक में इतना सुधार हुआ है कि, 2007 तक, एक रेगुलर कंप्यूटर पर इसमें केवल कुछ सेकंड लगते हैं। [2] इस तरह से बनाए गए हैश कोलाइसन सामान्यतः कांस्टेंट लेंथ के होते हैं और काफी हद तक अनस्ट्रक्चर्ड होते हैं, इसलिए इन्हें व्यापक डॉक्यूमेंट फॉर्मेट या प्रोटोकॉल पर अटैक करने के लिए सीधे लागू नहीं किया जा सकता है।
हालाँकि, कई प्रारूपों में उपस्थित डायनामिक कंस्ट्रस्ट्स का दुरुपयोग करके वर्कअराउंड संभव है। इस तरह, दो डॉक्यूमेंट बनाए जाएंगे जो समान हैश वैल्यू रखने के लिए यथासंभव समान होंगे। एक डॉक्यूमेंट पर साइन करने के लिए अथॉरिटी को दिखाया जाएगा, और फिर साइन को दूसरी फ़ाइल में कॉपी किया जा सकता है। ऐसे मालिशियस डॉक्यूमेंट में एक ही डॉक्यूमेंट में दो अलग-अलग मैसेज होंगे, लेकिन फ़ाइल में सटल चेंज के माध्यम से कन्डीशनली एक या दूसरे को डिस्प्ले किया जाएगा:
- कुछ डॉक्यूमेंट प्रारूप जैसे पोस्टस्क्रिप्ट, या माइक्रोसॉफ्ट वर्ड में मैक्रो (कंप्यूटर विज्ञान) में कंडीशनल कंस्ट्रस्ट्स होती हैं। [3][4] (यदि-तब-अन्यथा) जो यह परीक्षण करने की अनुमति देता है कि क्या डिस्प्ले होने को कंट्रोल करने के लिए फ़ाइल में किसी लोकेशन का एक या दूसरा वैल्यू है।
- टीआईएफएफ फाइलों में क्रॉप की गई इमेज हो सकती हैं, जिसमें हैश वैल्यू को प्रभावित किए बिना इमेज का एक अलग हिस्सा डिस्प्ले किया जा सकता है। [4]
- पीडीएफ फाइलें कलर वैल्यू का उपयोग करके कोलाइसन अटैक के प्रति वल्नरेबल होती हैं (जैसे कि एक मैसेज का टेक्स्ट सफेद कलर के साथ डिस्प्ले होता है जो बैकग्राउंड में ब्लेंड होता है, और दूसरे मैसेज का टेक्स्ट डार्क कलर के साथ डिस्प्ले होता है) साइन्ड डॉक्यूमेंट की सामग्री बदलने की लिए जिसे बाद में अल्टर जा सकता है। [4]
चूज़न-प्रीफिक्स कोलाइसन अटैक
कोलाइसन अटैक का एक एक्सटेंशन चूज़न-प्रीफिक्स कोलाइसन अटैक है, जो मर्कल-डैमगार्ड हैश फ़ंक्शन के लिए स्पेसिफिक है। इस केस में, अटैकर दो अर्बिट्रेरिली अलग-अलग डॉक्यूमेंट चुन सकता है, और फिर अलग-अलग काउंट किए गए वैल्यू जोड़ सकता है जिसके परिणामस्वरूप पूरे डॉक्यूमेंट में एक समान हैश वैल्यू होता है। यह अटैक क्लासिकल कोलाइसन अटैक से कहीं अधिक शक्तिशाली है।
गणितीय रूप से कहा गया है, दो अलग-अलग प्रीफिक्स p1, p2 दिए गए हैं, अटैक में दो उपांग m1 और m2 इस प्रकार मिलते हैं कि hash(p1 ∥ m1) = hash(p2 ∥ m2) (जहाँ ∥ कॉनकाटीनेशन है)।
2007 में, एमडी5 के विरुद्ध एक चूज़न-प्रीफिक्स कोलाइसन अटैक पाया गया, जिसके लिए एमडी5 फ़ंक्शन के लगभग 250 इवैल्यूएशन की आवश्यकता थी। पेपर अलग-अलग डोमेन नेम के लिए कोलाइडिंग हैश वैल्यू के साथ दो X.509 सर्टिफिकेट भी डिस्प्ले करता है। इसका अर्थ यह है कि एक सर्टिफिकेट अथॉरिटी को एक डोमेन के लिए सर्टिफिकेट पर साइन करने के लिए कहा जा सकता है, और फिर उस सर्टिफिकेट (विशेष रूप से उसके साइन) का उपयोग किसी अन्य डोमेन को इमपरसोनेट करने के लिए एक नया रॉग सर्टिफिकेट बनाने के लिए किया जा सकता है।[5]
एक रियल-वर्ल्ड कोलाइसन अटैक दिसंबर 2008 में प्रकाशित हुआ था जब सिक्योरिटी रिसर्चर के एक समूह ने एक फ़ोर्ज़ड X.509 साइन सर्टिफिकेट प्रकाशित किया था जिसका उपयोग एमडी 5 हैश फ़ंक्शन के विरूद्व प्रीफिक्स कोलाइसन अटैक का लाभ उठाते हुए, सर्टिफिकेट अथॉरिटी को इमपरसोनेट करने के लिए किया जा सकता था। इसका अर्थ यह था कि एक अटैकर किसी भी ट्रांसपोर्ट लेयर सिक्योरिटी - सिक्योर्ड वेबसाइट को मिडिल-मैन के रूप में प्रस्तुत कर सकता है, जिससे इलेक्ट्रॉनिक कॉमर्स की सिक्योरिटी के लिए प्रत्येक वेब ब्राउज़र में निर्मित सर्टिफिकेट वेलिडेशन को नष्ट कर दिया जा सकता है। गलत सर्टिफिकेट वास्तविक अधिकारियों द्वारा रीवोकेबल नहीं किया जा सकता है, और इसमें अर्बिट्रेरिली फ़ोर्ज़ड एक्सपायरी टाइम भी हो सकता है। हालाँकि 2004 में एमडी5 को बहुत वीक माना जाता था,[1] सर्टिफिकेट अथॉरिटी अभी भी दिसंबर 2008 में एमडी5-वेरिफाइड सर्टिफिकेटों पर साइन करने के इच्छुक थे, [6] और कम से कम एक माइक्रोसॉफ्ट कोड-साइन सर्टिफिकेट मई 2012 में अभी भी एमडी5 का उपयोग कर रहा था।
फ़्लेम (मैलवेयर) मैलवेयर ने माइक्रोसॉफ्ट रूट सर्टिफिकेट द्वारा अपने घटकों के कोड साइन को धोखा देने के लिए चुने हुए-प्रीफिक्स कोलाइसन अटैक के एक नए वेरिएशन का सफलतापूर्वक उपयोग किया जो अभी भी कम्प्रोमाइस्ड एमडी5 एल्गोरिदम का उपयोग करता है। [7][8]
2019 में, रिसर्चर ने 266.9और 269.4 के बीच और लागत 100,000 अमेरिकी डॉलर से कम कंप्यूटिंग कॉम्पलेक्सिटी के साथ एसएचए-1 के विरुद्ध एक चूज़न-प्रीफिक्स कोलाइसन अटैक पाया। [9][10] 2020 में, रिसर्चर ने एसएचए-1 के विरुद्ध चुने गए-प्रीफिक्स कोलाइसन अटैक की कॉम्पलेक्सिटी को कम करके 263.4 कर दिया। [11]
अटैक सिनेरियो
क्रिप्टोग्राफ़िक हैश फ़ंक्शंस के कई एप्लीकेशन कोलाइसन रेजिस्टेंस पर निर्भर नहीं होते हैं, इस प्रकार कोलाइसन अटैक उनकी सिक्योरिटी को प्रभावित नहीं करते हैं। उदाहरण के लिए, एचएमएसी वल्नरेबल नहीं हैं। [12] अटैक के उपयोगी होने के लिए, अटैकर के पास हैश फ़ंक्शन के इनपुट का कंट्रोल होना चाहिए।
डिजिटल साइन
क्योंकि डिजिटल साइन एल्गोरिदम बड़ी मात्रा में डेटा पर एफिशिऐंटली साइन नहीं कर सकते हैं, अधिकांश इम्प्लीमेंटेशन डेटा की मात्रा को कम करने (संपीड़ित) के लिए हैश फ़ंक्शन का उपयोग करते हैं जिन्हें कांस्टेंट साइज में साइन डाउन करने की आवश्यकता होती है। जैसे ही अंडरलाइंग हैश फ़ंक्शन प्रक्टिकली टूट जाता है, डिजिटल साइन स्कीम प्रायः हैश कोलाइसन के प्रति वल्नरेबल हो जाती हैं; अंडरलाइंग हैशिंग जैसी तकनीकें कठिन प्रीइमेज अटैक की आवश्यकता के कारण अतिरिक्त समय खरीद लेंगी। [13]
सामान्य अटैक सिनेरियो इस प्रकार होता है:
- मैलोरी दो अलग-अलग डॉक्यूमेंट A और B बनाता है जिनका हैश वैल्यू समान होता है, यानी कोलाइसन। मैलोरी बॉब को डॉक्यूमेंट बी स्वीकार करने के लिए ओसटेन्सीब्ली ऐलिस से धोखा देना चाहता है।
- मैलोरी डॉक्यूमेंट ए को ऐलिस को भेजता है, जो डॉक्यूमेंट में कही गई बातों से सहमत होती है, उसके हैश पर साइन करती है, और मैलोरी को साइन भेजती है।
- मैलोरी डॉक्यूमेंट ए से डॉक्यूमेंट बी में साइन जोड़ता है।
- मैलोरी फिर बॉब को साइन और डॉक्यूमेंट बी भेजता है, यह दावा करते हुए कि ऐलिस ने बी पर साइन किए हैं। क्योंकि डिजिटल साइन डॉक्यूमेंट बी के हैश से मेल खाता है, बॉब का सॉफ़्टवेयर सब्स्टिट्यूशन का पता लगाने में असमर्थ है।
2008 में, रिसर्चर ने इस सिनेरियो का उपयोग करते हुए, एक रॉग सर्टिफिकेट अथॉरिटी सर्टिफिकेट तैयार करने के लिए, एमडी5 के विरुद्ध एक चुने हुए-प्रीफिक्स कोलाइसन अटैक का उपयोग किया। उन्होंने ट्रांसपोर्ट लेयर सिक्योरिटी पब्लिक की सर्टिफिकेट के दो संस्करण बनाए, जिनमें से एक वैध प्रतीत हुआ और रैपिडएसएसएल सर्टिफिकेट प्राधिकरण द्वारा साइन करने के लिए प्रस्तुत किया गया। दूसरे संस्करण में, जिसमें समान एमडी5 हैश था, इसमें फ्लैग सम्मिलित थे जो वेब ब्राउज़र को अर्बिट्रेरिली अन्य सर्टिफिकेट जारी करने के लिए इसे वैध अथॉरिटी के रूप में स्वीकार करने का संकेत देते थे। [14]
हैश फ्लडिंग
हैश फ्लडिंग (जिसे हैशडोएस के नाम से भी जाना जाता है [15]) डिनायल ऑफ़ सर्विस से इनकार है जो हैश टेबल लुकअप के वर्स्ट-केस (रैखिक जांच) रनटाइम का लाभ उठाने के लिए हैश कोलाइसन का उपयोग करता है। [16] इसे मूल रूप से 2003 में डिस्क्राइब किया गया था। इस तरह के अटैक को अंजाम देने के लिए, अटैकर सर्वर को डेटा के कई पीस भेजता है जो समान मूल्य पर हैश होता है और फिर सर्वर को धीमी गति से लुकअप करने का प्रयास करता है। चूंकि हैश तालिकाओं में उपयोग किए जाने वाले हैश फ़ंक्शन का मुख्य फोकस सिक्योरिटी के स्थान पर स्पीड पर था, इसलिए अधिकांश प्रमुख प्रोग्रामिंग भाषाएं प्रभावित हुईं,[17] इस वर्ग की नई वुलनेराबिलिटीज़ मूल प्रस्तुति के एक दशक बाद भी दिखाई दे रही हैं। [16]
हैश फ़ंक्शन को अत्यधिक जटिल बनाए बिना हैश फ्लडिंग को रोकने के लिए, नए कुंजी वाले हैश फ़ंक्शन प्रस्तुत किए गए हैं, सिक्योरिटी ऑब्जेक्टिव के साथ जब तक की अननोन है तब तक कोलाइसन ढूंढना कठिन है। वे पिछले हैश की तुलना में धीमे हो सकते हैं, लेकिन क्रिप्टोग्राफ़िक हैश की तुलना में काउंट करना अभी भी बहुत आसान है। 2021 तक, डेनियल जे. बर्नस्टीन सिपहैश (2012) इस वर्ग में सबसे व्यापक रूप से उपयोग किया जाने वाला हैश फ़ंक्शन है। [18] (गैर-कुंजी वाले सरल हैश तब तक उपयोग के लिए सुरक्षित रहते हैं जब तक एप्लिकेशन की हैश तालिका बाहर से कंट्रोल नहीं होती है।)
(आंशिक) प्रीइमेज अटैक का उपयोग करके ब्लूम फिल्टर को भरने के लिए एक समान अटैक करना संभव है। [19]
संदर्भ
- ↑ 1.0 1.1 Xiaoyun Wang, Dengguo Feng, Xuejia Lai, Hongbo Yu: Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD, Cryptology ePrint Archive Report 2004/199, 16 Aug 2004, revised 17 Aug 2004. Retrieved July 27, 2008.
- ↑ M.M.J. Stevens (June 2007). "On Collisions for MD5" (PDF).
[...] we are able to find collisions for MD5 in about 224.1 compressions for recommended IHVs which takes approx. 6 seconds on a 2.6GHz Pentium 4.
{{cite journal}}
: Cite journal requires|journal=
(help) - ↑ Magnus Daum; Stefan Lucks. "हैश टकराव (जहरीला संदेश हमला)". Eurocrypt 2005 rump session. Archived from the original on 2010-03-27.
- ↑ 4.0 4.1 4.2 Max Gebhardt; Georg Illies; Werner Schindler (4 January 2017). "विशेष फ़ाइल प्रारूपों के लिए एकल हैश टकराव के व्यावहारिक मूल्य पर एक नोट" (PDF).
{{cite journal}}
: Cite journal requires|journal=
(help) - ↑ Marc Stevens; Arjen Lenstra; Benne de Weger (2007-11-30). "Chosen-prefix Collisions for MD5 and Colliding X.509 Certificates for Different Identities". Lecture Notes in Computer Science. 4515: 1. Bibcode:2007LNCS.4515....1S. doi:10.1007/978-3-540-72540-4_1. ISBN 978-3-540-72539-8.
- ↑ Alexander Sotirov; et al. (2008-12-30). "एक दुष्ट सीए प्रमाणपत्र बनाना". Archived from the original on 2012-04-18. Retrieved 2009-10-07.
- ↑ "Microsoft releases Security Advisory 2718704". Microsoft. 3 June 2012. Archived from the original on 7 June 2012. Retrieved 4 June 2012.
- ↑ Marc Stevens (7 June 2012). "सीडब्ल्यूआई क्रिप्टैनालिस्ट ने फ़्लेम स्पाई मैलवेयर में नए क्रिप्टोग्राफ़िक अटैक वेरिएंट की खोज की". Centrum Wiskunde & Informatica. Retrieved 9 June 2012.
- ↑ Catalin Cimpanu (2019-05-13). "SHA-1 टकराव के हमले अब वास्तव में व्यावहारिक हैं और एक खतरा मंडरा रहा है". ZDNet (in English).
- ↑ Gaëtan Leurent; Thomas Peyrin (2019-05-06). "टकरावों से लेकर चयनित-उपसर्ग टकरावों के अनुप्रयोग से लेकर पूर्ण SHA-1 तक" (PDF).
- ↑ Gaëtan Leurent; Thomas Peyrin (2020-01-05). "SHA-1 एक जर्जर स्थिति है - SHA-1 पर पहला चुना-उपसर्ग टकराव और ट्रस्ट के पीजीपी वेब पर अनुप्रयोग" (PDF).
- ↑ "हैश टकराव प्रश्नोत्तर". Cryptography Research Inc. 2005-02-15. Archived from the original on 2008-07-17.
जिस तरह से एचएमएसी निर्माण में हैश फ़ंक्शन का उपयोग किया जाता है, इन हालिया हमलों में उपयोग की जाने वाली तकनीकें लागू नहीं होती हैं
- ↑ Shai Halevi and Hugo Krawczyk, Randomized Hashing and Digital Signatures
- ↑ Alexander Sotirov; Marc Stevens; Jacob Appelbaum; Arjen Lenstra; David Molnar; Dag Arne Osvik; Benne de Weger (30 December 2008). MD5 considered harmful today. Chaos Communication Congress 2008.
- ↑ Falkenberg, Andreas; Mainka, Christian; Somorovsky, Juraj; Schwenk, Jörg (2013). "A New Approach towards DoS Penetration Testing on Web Services". 2013 IEEE 20th International Conference on Web Services. pp. 491–498. doi:10.1109/ICWS.2013.72. ISBN 978-0-7695-5025-1. S2CID 17805370.
- ↑ 16.0 16.1 "About that hash flooding vulnerability in Node.js... · V8". v8.dev.
- ↑ Scott A. Crosby and Dan S. Wallach. 2003. Denial of service via algorithmic complexity attacks. In Proceedings of the 12th conference on USENIX Security Symposium - Volume 12 (SSYM'03), Vol. 12. USENIX Association, Berkeley, CA, USA, 3-3.
- ↑ Jean-Philippe Aumasson & Daniel J. Bernstein (2012-09-18). "SipHash: a fast short-input PRF" (PDF).
- ↑ Gerbet, Thomas; Kumar, Amrit; Lauradoux, Cédric (12 November 2014). ब्लूम फिल्टर्स में दुष्ट विकल्पों की शक्ति (report) (in English). INRIA Grenoble.
बाहरी संबंध
- "Meaningful Collisions", attack scenarios for exploiting cryptographic hash collisions
- Fast एमडी5 and एमडी4 Collision Generators - Bishop Fox (formerly Stach & Liu). Create एमडी4 and एमडी5 hash collisions using groundbreaking new code that improves upon the techniques originally developed by Xiaoyun Wang. Using a 1.6 GHz Pentium 4, एमडी5 collisions can be generated in an average of 45 minutes, and एमडी4 collisions can be generated in an average of 5 seconds. Originally released on 22Jun2006.