डिक्शनरी अटैक

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

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

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

प्री-कंप्यूटेड डिक्शनरी अटैक, या रेनबो टेबल अटैक, नमक (क्रिप्टोग्राफी)  के इस्तेमाल से रोका जा सकता है, एक ऐसी तकनीक जो हैश डिक्शनरी को प्रत्येक पासवर्ड के लिए फिर से कंप्यूट करने के लिए मजबूर करती है, जिससे पूर्वगणना संभव हो जाता है, बशर्ते कि संभावित नमक मूल्यों की संख्या काफी बड़ा है।

डिक्शनरी अटैक सॉफ्टवेयर

 * कैन एंड एबेल (सॉफ्टवेयर)
 * क्रैक (पासवर्ड सॉफ्टवेयर)
 * Aircrack- एनजी
 * जॉन द रिपर
 * L0phtCrack
 * मेटास्प्लोइट प्रोजेक्ट
 * ओफक्रैक
 * क्रिप्टोल

यह भी देखें

 * पशुबल का आक्रमण
 * ई-मेल एड्रेस हार्वेस्टिंग
 * अंतरमहाद्वीपीय शब्दकोश श्रृंखला, एक ऑनलाइन भाषाई डेटाबेस
 * कुंजी व्युत्पत्ति समारोह
 * चाबी खींचना
 * पासवर्ड क्रैकिंग
 * पासवर्ड की मजबूती

बाहरी संबंध

 * – Internet Security Glossary
 * – Internet Security Glossary, Version 2
 * US Secret Service use a distributed dictionary attack on suspect's password protecting encryption keys
 * Testing for Brute Force (OWASP-AT-004)