मैं एक एंड्रॉइड एप्लिकेशन लिख रहा हूं जिसका उद्देश्य एईएस 256 का उपयोग करके फ़ाइलों को एन्क्रिप्ट और डिक्रिप्ट करना है। मैं उपयोगकर्ता द्वारा दर्ज पासवर्ड से एईएस कुंजी प्राप्त करने के लिए एईएस-सीबीसी मोड और पीबीकेडीएफ 2 का उपयोग कर रहा हूं। इसके अलावा, मैं प्रत्येक फ़ाइल की एन्क्रिप्शन कुंजी के लिए एक सुरक्षित, छद्म यादृच्छिक नमक उत्पन्न कर रहा हूं। मैं एन्क्रिप्टेड फ़ाइल के साथ चतुर्थ और नमक भंडारित कर रहा हूं, इसलिए मैं उन्हें फिर से पढ़ सकता हूं और फ़ाइल को डिक्रिप्ट करने में सक्षम होने के बाद बाद में पुन: उत्पन्न कर सकता हूं।एन्क्रिप्टेड फ़ाइल ब्रेक सुरक्षा के साथ नमक भंडारण करता है?
मेरा प्रश्न: एन्क्रिप्टेड फ़ाइल को तोड़ने सुरक्षा और नमक के ही किसी भी अर्थ के साथ-साथ नमक के संचय करता है? एन्क्रिप्शन कुंजी को खोजने के लिए एन्क्रिप्टेड फ़ाइल के खिलाफ नमक और चतुर्थ को ऑफ़लाइन ब्रूट फोर्स हमला करने वाला हमलावर नहीं हो सकता है?
लेकिन क्या होगा अगर हमलावर एक वैध नमक के साथ एक इंद्रधनुष तालिका का निर्माण करेगा जिसे वह फ़ाइल से cleartext में पढ़ सकते हैं? –
@AlexAmiryan एक इंद्रधनुष तालिका का निर्माण कम से कम एक क्रूर बल हमले के रूप में महंगा है। तो यदि आप तालिका का पुन: उपयोग नहीं कर सकते (और यही वह लवण रोकता है), तो तालिका बनाने के लिए बेकार है। बस एक ब्रूट-फोर्स हमले को सीधे निष्पादित करें। – CodesInChaos