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

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

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

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

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

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

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

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

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

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

जैसा कि सरकारी एएसआईसी समाधानों के वाणिज्यिक उत्तराधिकारी उपलब्ध हो गए हैं, जिन्हें कस्टम हार्डवेयर हमला के रूप में भी जाना जाता है, दो उभरती प्रौद्योगिकियों ने कुछ सिफर के क्रूर-बल हमले में अपनी क्षमता साबित कर दी है। आधुनिक ग्राफिक्स प्रोसेसिंग यूनिट (जीपीयू) तकनीक है, दूसरी क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला (एफपीजीए) तकनीक है। जीपीयू उनकी व्यापक उपलब्धता और मूल्य-प्रदर्शन लाभ से लाभान्वित होते हैं, एफपीजीए प्रति क्रिप्टोग्राफिक ऑपरेशन में उनकी ऊर्जा दक्षता से लाभान्वित होते हैं। दोनों प्रौद्योगिकियां समानांतर प्रसंस्करण के लाभों को क्रूर-बल के हमलों तक पहुंचाने का प्रयास करती हैं। जीपीयू के मामले में कुछ सैकड़ों, एफपीजीए के मामले में कुछ हजार प्रसंस्करण इकाइयां पारंपरिक प्रोसेसर की तुलना में पासवर्ड को क्रैक करने के लिए बेहतर अनुकूल बनाती हैं। क्रिप्टोग्राफ़िक विश्लेषण के क्षेत्र में विभिन्न प्रकाशनों ने आज की एफपीजीए तकनीक की ऊर्जा दक्षता को साबित कर दिया है, उदाहरण के लिए, कोपाकोबाना एफपीजीए क्लस्टर कंप्यूटर पीसी (600 W) के समान ऊर्जा की खपत करता है, किन्तु कुछ एल्गोरिदम के लिए 2,500 पीसी की तरह प्रदर्शन करता है। कई कंपनियां समर्पित एफपीजीए कंप्यूटरों तक एकल एफपीजीए पीसीआई एक्सप्रेस कार्ड से हार्डवेयर आधारित एफपीजीए क्रिप्टोग्राफिक विश्लेषण समाधान प्रदान करती हैं। वाई-फाई संरक्षित पहुंच और डब्लूपीए2 एन्क्रिप्शन पारंपरिक सीपीयू और एफपीजीए के मामले में कुछ सौ की तुलना में कार्यभार को 50 के कारक से कम करके सफलतापूर्वक क्रूर-बल पर हमला किया गया है। उन्नत एन्क्रिप्शन मानक (एईएस) 256-बिट कुंजियों के उपयोग की अनुमति देता है। क्रूर बल द्वारा सममित 256-बिट कुंजी को तोड़ने के लिए 128-बिट कुंजी की तुलना में 2128 गुना अधिक कम्प्यूटेशनल शक्ति की आवश्यकता होती है। 2019 के सबसे तेज़ सुपर कंप्यूटरों में से की गति 100 पेटाफ्लॉप है जो सैद्धांतिक रूप से प्रति सेकंड 100 मिलियन (1014) एईएस कुंजियों की जाँच कर सकता है (प्रति जाँच में 1000 संचालन मानते हुए) लेकिन फिर भी 256-बिट कुंजी स्थान को समाप्त करने के लिए 3.67×1055 वर्ष की आवश्यकता होगी। ब्रूट-बल हमले की अंतर्निहित धारणा यह है कि कुंजी उत्पन्न करने के लिए पूर्ण कुंजी स्थान का उपयोग किया गया था, कुछ ऐसा जो प्रभावी यादृच्छिक संख्या पीढ़ी पर निर्भर करता है, और यह कि एल्गोरिथम या इसके कार्यान्वयन में कोई दोष नहीं हैं। उदाहरण के लिए, कई प्रणालियाँ जिन्हें मूल रूप से क्रूर बल द्वारा क्रैक करना असंभव माना जाता था, फिर भी क्रैक हो गए हैं क्योंकि उनके छद्म यादृच्छिक संख्या जनरेटर में एंट्रॉपी की कमी के कारण खोज करने के लिए कुंजी स्थान (क्रिप्टोग्राफी) मूल रूप से सोचा जाने से बहुत छोटा पाया गया था। इनमें नेटस्केप का सुरक्षित सॉकेट लेयर का कार्यान्वयन (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