2010-07-12 15 views
6

के साथ एईएस/सीबीसी को डिक्रिप्ट कैसे करें मेरे पास क्लाइंट से भेजे गए एईएस/सीबीसी एन्क्रिप्टेड डेटा पैकेट को डिक्रिप्ट करने का असंभव कार्य है। मैंने बहुत सारे शोध किए हैं जो मुझे विश्वास करते हैं कि अगर IV स्थिर है तो एन्क्रिप्शन असुरक्षित है। विशेष रूप से इस कार्य के लिए, चतुर्थ हमेशा स्थिर रूप से 0 पर सेट होता है। क्या ऐसा कोई तरीका है?ज्ञात IV

संपादित करें: सादा पाठ हेमलेट की लिपि से स्निपेट है। ग्राहक उन्हें यादृच्छिक हिस्सों में भेजता है ताकि लंबाई भी सुसंगत न हो। अंततः पैकेट दोहरा सकते हैं लेकिन मैं 100% निश्चित नहीं हूं।

+0

क्या सादा पाठ में पैटर्न/पुनरावृत्ति ज्ञात हैं? मैं पूरी तरह यादृच्छिक सादे पाठ के लिए एक दृष्टिकोण नहीं जानता। –

उत्तर

3

कुंजी के बिना नहीं।

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

0

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

1

बस नोटेशन के लिए, "डिक्रिप्टिंग" शब्द का उपयोग कुंजी का उपयोग करके सामान्य ऑपरेशन है। यदि आपके पास कुंजी नहीं है, तो इसे सामान्यतः "ब्रेकिंग", "क्रैकिंग" या "क्रिप्टैनालिसिस" कहा जाता है।

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

यह संदेश आसान है जब संदेश कुछ निश्चित प्रारूप का है, और निराशाजनक है यदि संदेश में दिलचस्प भाग से पहले पर्याप्त यादृच्छिक डेटा है (यह "गरीब व्यक्ति का प्रारंभिक वेक्टर" है)।

अन्य सीबीसी कमजोरियां जो चयनित सिफरटेक्स्ट हमलों पर निर्भर करती हैं जहां आपने प्रारंभिक वेक्टर चुना है और इसके डिक्रिप्शन के कुछ सत्यापन को भी लागू किया जा सकता है (आप पहले सिफरटेक्स्ट ब्लॉक को सेट करेंगे और देखेंगे कि दूसरे ब्लॉक में वैध पैडिंग है या नहीं)।

0

गैर-यादृच्छिक चतुर्थ के साथ मुख्य समस्या यह है कि एक ही कुंजी के साथ एन्क्रिप्ट किए गए दो समान प्रारंभिक ब्लॉक समान आउटपुट उत्पन्न करेंगे। तो, हेमलेट से बाहर टुकड़े के अपने विवरण दिया, जानते हुए भी कि आप एक ही चतुर्थ बार-बार उपयोग कर रहे हैं, मैं क्या करना होगा निम्नलिखित:

  • मैं के लिए सिफर परिकलित किया जाएगा "है या करने के लिए नहीं करने के लिए" (16 बाइट्स) संभावित पासवर्ड की एक विस्तृत विविधता के लिए (जैसा कि जॉन द रिपर द्वारा उत्पन्न किया जा सकता है)।
  • मैं इन 16 बाइट्स के साथ शुरू होने वाले आधार पर सभी संदेशों के विरुद्ध परिणामस्वरूप कैपरटेक्स्ट की तुलना करूंगा।
  • यदि कोई मेल खाता है, तो मुझे पासवर्ड पता है। किया हुआ।

मैं कई अन्य प्रसिद्ध वाक्यांशों के साथ ऐसा ही करूंगा। यह एक ऑपरेशन है जिसे मैं डेटाबेस में अपनी फ़ाइल और कैश कैप्चर करने से पहले भी समानांतर में बड़े पैमाने पर कर सकता हूं। इस दृष्टिकोण के लिए सामान्य शब्द rainbow table है।

यदि मुझे आपके संदेशों के पहले 16 बाइट्स (जैसे कि वे एक ज्ञात व्यक्ति को ईमेल संदेश हैं, या ज्ञात शीर्षलेखों या HTTP के साथ HTTP अनुरोध) हैं, तो मेरा काम बहुत आसान हो जाता है।

लेकिन यदि आप यादृच्छिक कुंजी (या पीबीकेडीएफ 2 की तरह उचित केडीएफ) का उपयोग करते हैं तो क्या होगा? खैर, मान लें कि मेरे पास आपके कुछ संदेश हैं, और कम से कम उनमें से कुछ पहले 16 बाइट्स हैं (फिर से, प्रोटोकॉल में शीर्षलेख मुझे बहुत मदद करते हैं)। खैर, एक कदम यह है कि मुझे पता है कि इन संदेशों में पहले 16 बाइट हैं। यह बहुत उपयोगी जानकारी है। और अब मेरे पास आपके संदेशों पर हमला करने के लिए crib है।

सीबीसी में एक IV + कुंजी का पुन: उपयोग करने से इसकी सुरक्षा पूरी तरह से नष्ट नहीं होती है (सीटीआर मोड में एक गैर + कुंजी का पुन: उपयोग करने के रूप में)। लेकिन यह हमलावर को हमले को सरल बनाने में बहुत उपयोगी उपकरण देता है।

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

संबंधित मुद्दे