ब्रूट बल आक्रमण

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

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

पासवर्ड-अनुमान लगाते समय, जब सभी छोटे पासवर्डों की जांच करने के लिए उपयोग किया जाता है, तो यह विधि बहुत तेज़ होती है, लेकिन लंबे पासवर्ड के लिए डिक्शनरी हमले जैसे अन्य तरीकों का उपयोग किया जाता है क्योंकि एक क्रूर-बल खोज में बहुत अधिक समय लगता है। लंबे पासवर्ड, पासफ़्रेज़ और कुंजियों में अधिक संभावित मान होते हैं, जिससे उन्हें छोटे लोगों की तुलना में क्रैक करना अधिक कठिन हो जाता है। ब्रूट-फोर्स के हमलों को ऑबफसकेशन (सॉफ्टवेयर) द्वारा कम प्रभावी बनाया जा सकता है, जिससे डेटा को एन्कोड किया जा सकता है, जिससे हमलावर के लिए यह पहचानना अधिक कठिन हो जाता है कि कब कोड क्रैक किया गया है या हमलावर को प्रत्येक अनुमान का परीक्षण करने के लिए और अधिक काम करना है। एक एन्क्रिप्शन प्रणाली की ताकत के उपायों में से एक यह है कि सैद्धांतिक रूप से एक हमलावर को इसके खिलाफ एक सफल क्रूर-बल हमले को माउंट करने में कितना समय लगेगा। ब्रूट-फोर्स अटैक, ब्रूट-फोर्स सर्च का एक अनुप्रयोग है, जो सभी उम्मीदवारों की गणना करने और प्रत्येक की जांच करने की सामान्य समस्या-समाधान तकनीक है। शब्द 'हथौड़ा' का प्रयोग कभी-कभी क्रूर-बल के हमले का वर्णन करने के लिए किया जाता है, काउंटरमेशर्स के लिए 'एंटी-हैमरिंग' के साथ।

मूल अवधारणा
ब्रूट-फोर्स अटैक हर संभव संयोजन की गणना करके काम करता है जो एक पासवर्ड बना सकता है और यह देखने के लिए परीक्षण करता है कि यह सही पासवर्ड है या नहीं। जैसे-जैसे पासवर्ड की लंबाई बढ़ती है, सही पासवर्ड खोजने के लिए औसतन समय की मात्रा तेजी से बढ़ती है।

सैद्धांतिक सीमा
ब्रूट-फोर्स अटैक के लिए आवश्यक संसाधन बढ़ते हुए प्रमुख आकार कुंजी आकार घातीय वृद्धि को बढ़ाते हैं, रैखिक रूप से नहीं। हालांकि यू.एस. निर्यात नियमों ने ऐतिहासिक रूप से प्रमुख लंबाई को 56-बिट सममित कुंजियों (जैसे डेटा एन्क्रिप्शन मानक) तक सीमित कर दिया है, ये प्रतिबंध अब लागू नहीं हैं, इसलिए आधुनिक सममित एल्गोरिदम आमतौर पर कम्प्यूटेशनल रूप से मजबूत 128- से 256-बिट कुंजियों का उपयोग करते हैं।

एक भौतिक तर्क है कि 128-बिट सममित कुंजी कम्प्यूटेशनल रूप से ब्रूट-फोर्स अटैक के खिलाफ सुरक्षित है। भौतिकी के नियमों द्वारा निहित लैंडौअर सीमा की गणना करने के लिए आवश्यक ऊर्जा पर एक निचली सीमा निर्धारित करती है $kT · ln 2$ एक संगणना में मिटाए गए प्रति बिट, जहां T केल्विन में कंप्यूटिंग डिवाइस का तापमान है, k बोल्ट्ज़मैन स्थिरांक है, और 2 का प्राकृतिक लघुगणक लगभग 0.693 (0.6931471805599453) है। कोई भी अपरिवर्तनीय कंप्यूटिंग डिवाइस सिद्धांत रूप में भी इससे कम ऊर्जा का उपयोग नहीं कर सकता है। इस प्रकार, 128-बिट सममित कुंजी के लिए संभावित मानों के माध्यम से फ़्लिप करने के लिए (इसे जांचने के लिए वास्तविक कंप्यूटिंग करने की उपेक्षा करना), सैद्धांतिक रूप से, 2 की आवश्यकता होगी128 - पारंपरिक प्रोसेसर पर 1 बिट फ़्लिप करता है। यदि यह माना जाता है कि गणना कमरे के तापमान (≈300 K) के पास होती है, तो वॉन न्यूमैन-लैंडॉयर सीमा को ≈10 के रूप में आवश्यक ऊर्जा का अनुमान लगाने के लिए लागू किया जा सकता है।18 जूल, जो एक वर्ष के लिए परिमाण (शक्ति) #गीगावाट (109 वाट) के 30 ऑर्डर की खपत के बराबर है। यह 30×10 के बराबर है9 W×365×24×3600 s = 9.46×1017 J या 262.7 TWh (विश्व ऊर्जा आपूर्ति और खपत का लगभग 0.1%)। पूर्ण वास्तविक संगणना - यह देखने के लिए कि क्या कोई समाधान मिल गया है, प्रत्येक कुंजी की जाँच करना - इस राशि का कई गुना उपभोग करेगा। इसके अलावा, यह कुंजी स्थान के माध्यम से साइकिल चलाने के लिए केवल ऊर्जा की आवश्यकता है; प्रत्येक बिट को पलटने में लगने वाले वास्तविक समय पर विचार नहीं किया जाता है, जो निश्चित रूप से 0 से अधिक है (ब्रेमरमैन की सीमा देखें)।

हालाँकि, यह तर्क मानता है कि पारंपरिक सेट और स्पष्ट संचालन का उपयोग करके रजिस्टर मान बदल दिए जाते हैं जो अनिवार्य रूप से एंट्रॉपी (कंप्यूटिंग) उत्पन्न करते हैं। यह दिखाया गया है कि कम्प्यूटेशनल हार्डवेयर को इस सैद्धांतिक बाधा (प्रतिवर्ती कंप्यूटिंग देखें) का सामना नहीं करने के लिए डिज़ाइन किया जा सकता है, हालांकि ऐसा कोई कंप्यूटर नहीं बनाया गया है।

जैसा कि सरकारी एएसआईसी समाधानों के वाणिज्यिक उत्तराधिकारी उपलब्ध हो गए हैं, जिन्हें कस्टम हार्डवेयर हमला के रूप में भी जाना जाता है, दो उभरती प्रौद्योगिकियों ने कुछ सिफर के क्रूर-बल हमले में अपनी क्षमता साबित कर दी है। एक आधुनिक ग्राफिक्स प्रोसेसिंग यूनिट (जीपीयू) तकनीक है, दूसरी क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला (FPGA) तकनीक है। जीपीयू उनकी व्यापक उपलब्धता और मूल्य-प्रदर्शन लाभ से लाभान्वित होते हैं, एफपीजीए प्रति क्रिप्टोग्राफिक ऑपरेशन में उनकी ऊर्जा दक्षता से लाभान्वित होते हैं। दोनों प्रौद्योगिकियां समानांतर प्रसंस्करण के लाभों को क्रूर-बल के हमलों तक पहुंचाने का प्रयास करती हैं। जीपीयू के मामले में कुछ सैकड़ों, एफपीजीए के मामले में कुछ हजार प्रसंस्करण इकाइयां पारंपरिक प्रोसेसर की तुलना में पासवर्ड को क्रैक करने के लिए बेहतर अनुकूल बनाती हैं। क्रिप्टोग्राफ़िक विश्लेषण के क्षेत्र में विभिन्न प्रकाशनों ने आज की FPGA तकनीक की ऊर्जा दक्षता को साबित कर दिया है, उदाहरण के लिए, COPACOBANA FPGA क्लस्टर कंप्यूटर एक पीसी (600 W) के समान ऊर्जा की खपत करता है, लेकिन कुछ एल्गोरिदम के लिए 2,500 PC की तरह प्रदर्शन करता है। कई कंपनियां समर्पित एफपीजीए कंप्यूटरों तक एक एकल एफपीजीए पीसीआई एक्सप्रेस कार्ड से हार्डवेयर आधारित एफपीजीए क्रिप्टोग्राफिक विश्लेषण समाधान प्रदान करती हैं। वाई-फाई संरक्षित पहुंच और WPA2 एन्क्रिप्शन पारंपरिक सीपीयू की तुलना में वर्कलोड को 50 के कारक से कम करके सफलतापूर्वक क्रूर-बल पर हमला किया गया है और कुछ सौ FPGAs के मामले में। उन्नत एन्क्रिप्शन मानक (एईएस) 256-बिट कुंजियों के उपयोग की अनुमति देता है। क्रूर बल द्वारा एक सममित 256-बिट कुंजी को तोड़ने के लिए 2 की आवश्यकता होती है128-बिट कुंजी की तुलना में 128 गुना अधिक कम्प्यूटेशनल शक्ति। 2019 के सबसे तेज़ सुपर कंप्यूटरों में से एक की गति 100 petaFLOPS है जो सैद्धांतिक रूप से 100 मिलियन मिलियन (10 मिलियन) की जाँच कर सकता है 14) एईएस कुंजियां प्रति सेकंड (यह मानते हुए कि प्रति जांच 1000 ऑपरेशन हैं), लेकिन इसके लिए अभी भी 3.67×10 की आवश्यकता होगी256-बिट कुंजी स्थान को समाप्त करने के लिए 55 वर्ष। ब्रूट-फोर्स हमले की एक अंतर्निहित धारणा यह है कि कुंजी उत्पन्न करने के लिए पूर्ण कुंजी स्थान का उपयोग किया गया था, कुछ ऐसा जो एक प्रभावी यादृच्छिक संख्या पीढ़ी पर निर्भर करता है, और यह कि एल्गोरिथम या इसके कार्यान्वयन में कोई दोष नहीं हैं। उदाहरण के लिए, कई प्रणालियाँ जिन्हें मूल रूप से क्रूर बल द्वारा क्रैक करना असंभव माना जाता था, फिर भी यादृच्छिक संख्या जनरेटर का हमला किया गया है क्योंकि खोज करने के लिए कुंजी स्थान (क्रिप्टोग्राफी) मूल रूप से सोचा जाने की तुलना में बहुत छोटा पाया गया था, एक कमी के कारण उनके छद्म आयामी संख्या जनरेटर में एन्ट्रापी की। इनमें नेटस्केप का सुरक्षित सॉकेट लेयर  का कार्यान्वयन (1995 में इयान गोल्डबर्ग और डेविड ए. वैगनर द्वारा विख्यात क्रैक किया गया) और 2008 में खोजे गए ओपनएसएसएल के एक डेबियन/उबंटू (ऑपरेटिंग सिस्टम) संस्करण में त्रुटिपूर्ण होना शामिल है। कार्यान्वित एन्ट्रापी की इसी तरह की कमी के कारण एनिग्मा मशीन | एनिग्मा का कोड टूट गया।

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

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

प्रतिउपाय
एक ऑफ़लाइन हमले के मामले में जहां हमलावर ने एन्क्रिप्टेड सामग्री तक पहुंच प्राप्त की है, कोई खोज या हस्तक्षेप के जोखिम के बिना प्रमुख संयोजनों की कोशिश कर सकता है। ऑनलाइन हमलों के मामले में, डेटाबेस और डायरेक्टरी एडमिनिस्ट्रेटर प्रत्युपायों को तैनात कर सकते हैं जैसे कि एक पासवर्ड को आजमाने के प्रयासों की संख्या को सीमित करना, लगातार प्रयासों के बीच समय की देरी शुरू करना, उत्तर की जटिलता को बढ़ाना (जैसे, कॅप्चा  उत्तर की आवश्यकता या मल्टी-फैक्टर को नियोजित करना) प्रमाणीकरण), और/या असफल लॉगिन प्रयासों के बाद खातों को लॉक करना। वेबसाइट व्यवस्थापक किसी विशेष IP पते को साइट पर किसी खाते के विरुद्ध पूर्व निर्धारित संख्या से अधिक पासवर्ड प्रयास करने से रोक सकते हैं।

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

यह भी देखें

 * बिटकॉइन खनन
 * क्रिप्टोग्राफ़िक कुंजी लंबाई
 * डिस्ट्रीब्यूटेड.नेट
 * कुंजी व्युत्पत्ति समारोह
 * MD5CRK
 * मेटास्प्लोइट प्रोजेक्ट
 * साइड-चैनल हमला
 * ट्विंकल और घुमाव
 * एकता दूरी
 * आरएसए फैक्टरिंग चैलेंज
 * सुरक्षित खोल

बाहरी संबंध

 * RSA-sponsored DES-III cracking contest
 * Demonstration of a brute-force device designed to guess the passcode of locked iPhones running iOS 10.3.3
 * How We Cracked the Code Book Ciphers – Essay by the winning team of the challenge in The Code Book