फ़ाइल एन्क्रिप्शन के लिए एईएस बनाम ब्लोफिश


106

मैं एक बाइनरी फ़ाइल एन्क्रिप्ट करना चाहता हूं। मेरा लक्ष्य यह है कि जिस व्यक्ति के पास पासवर्ड नहीं है, उसे पढ़ने के लिए किसी को भी रोका जा सके।

एक ही कुंजी लंबाई के साथ बेहतर समाधान, एईएस या ब्लोफिश कौन सा है? हम मान सकते हैं कि फ़ाइल को क्रैक करने के लिए हमलावर के पास महान संसाधन (सॉफ्टवेयर्स, नॉलेज, मनी) हैं।


4
ब्लोफिश, एक दशक से ज्यादा पुराना है मैं आपको लगता है मतलब एईएस Twofish बनाम ...
किश्ती

आप सही हैं, मैं यह पूछ सकता था। Fortunatly जैरी ने इस विषय को मेरे लिए महान बताया।
mimrock

@Rook पुराने बेहतर सुरक्षा एल्गोरिदम के लिए अंगूठे का नियम है। नए एल्गोरिदम उन लोगों के लिए हैं, जो सुरक्षा की तुलना में प्रदर्शन के बारे में अधिक चिंतित हैं।
छत

जवाबों:


187

शायद एईएस। ब्लोफिश ट्वोफिश का प्रत्यक्ष पूर्ववर्ती था। ट्वोफिश ब्रूस श्नीयर की प्रतियोगिता में प्रवेश था जिसने एईएस का उत्पादन किया। इसे रिजेंडेल नामक एक प्रविष्टि के रूप में देखा गया था, जो एईएस बन गया था।

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

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

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


11
मुझे लगता है कि अन्य एल्गोरिदम को रिजंडेल की तुलना में धर्मनिरपेक्ष माना जाता था, लेकिन इसने बहुत अच्छे प्रदर्शन की पेशकश की, जबकि इसकी सुरक्षा को काफी अच्छा माना गया। एक साइबर एल्गोरिथ्म को डिजाइन करना सुरक्षा और प्रदर्शन के बीच हमेशा एक व्यापार है।
19In में कोडइंचौस

10
@ कोडकोड: अपने दृष्टिकोण के आधार पर, यह कम से कम सच है - सर्प संभवतः सबसे रूढ़िवादी डिजाइन था। विशेष रूप से, उन्हें लगा कि एक 16-राउंड संस्करण पर्याप्त होगा - इसलिए उन्होंने इसे दोगुना करके 32 राउंड कर दिया। वर्तमान में ज्ञात सबसे अच्छा हमला केवल 11 राउंड के खिलाफ प्रभावी है। यदि मूल प्रश्न ने एईएस और ब्लोफिश के विकल्प को विशेष रूप से प्रतिबंधित नहीं किया था, और बस सबसे सुरक्षित, यथोचित रूप से ज्ञात सिफर के लिए कहा था, तो मैंने शायद सर्प कहा होगा ...
जेरी कॉफिन

इसके अलावा, जब "कॉम्पिटिया सिक्योरिटी + एग्जाम + की पढ़ाई के लिए कई सवाल और स्रोत सामने आए हैं।" छोटी चीजें इतनी बेकार नहीं हो सकती हैं!
एवरलाइट

Blowfishसबसे तेज है
user924

22

यह एक बार-बार स्वीकार किया जाने वाला तथ्य है कि ब्लॉक सिफर का ब्लॉक आकार भी एक महत्वपूर्ण सुरक्षा विचार है (हालांकि कुंजी के आकार के रूप में कहीं भी महत्वपूर्ण नहीं है)।

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

दूसरी ओर, एईएस में 128 बिट ब्लॉक का आकार होता है। अकेले इस विचार को ब्लोफिश के बजाय एईएस का उपयोग करने का औचित्य है।


2
64-बिट ब्लॉकेज का लाभ यह है कि नए एल्गोरिथम को पुराने एप्लिकेशन में (3-) डेस के प्रतिस्थापन के रूप में छोड़ना आसान बनाता है।
dajames

ब्लॉक का आकार एक दिलचस्प तर्क है। मैंने लिखा है, कई महीने पहले, एक लेख जो यह बताता है
CubicleSoft

16

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

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


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

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

8

एईएस।

(मैं यह भी मान रहा हूं कि दोमट का मतलब बहुत पुराना और कमजोर ब्लोफिश नहीं है)

दोनों (AES & twofish) अच्छे एल्गोरिदम हैं। हालांकि, भले ही वे समान या दुगनी तकनीकी योग्यता पर थोड़ा आगे थे, मैं अभी भी एईएस को चुनूंगा।

क्यों? प्रचार। एईएस सरकारी एन्क्रिप्शन के लिए मानक है और इस प्रकार लाखों अन्य संस्थाएं भी इसका उपयोग करती हैं। एक प्रतिभाशाली क्रिप्टानालिस्ट बस एईएस में दोष खोजने के लिए "हिरन के लिए अधिक धमाकेदार" हो जाता है, फिर यह बहुत कम जानता है और उपयोग किए गए ट्वीफिश के लिए करता है।

अस्पष्टता एन्क्रिप्शन में कोई सुरक्षा प्रदान नहीं करती है। एल्गोरिथ्म देखने, अध्ययन करने, जांच करने, अधिक शरीर हमेशा बेहतर होता है। आप सबसे "संभव" एल्गोरिथ्म चाहते हैं और अभी वह एईएस है। यदि एल्गोरिथ्म गहन और निरंतर जांच के अधीन नहीं है, तो आपको इसकी ताकत के बारे में कम विश्वास रखना चाहिए। यकीन है कि दोहा समझौता नहीं किया गया है। क्या यह सिफर की ताकत के कारण या केवल इसलिए कि पर्याप्त लोगों ने करीबी रूप नहीं लिया है ..... YET


5

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

यदि आप तेज़ रैंडम एक्सेस चाहते हैं, तो आप प्रेरणा के लिए TrueCrypt प्रारूप विनिर्देश पर एक नज़र डालना चाहते हैं। यदि आपको XTS की तुलना में यादृच्छिक अभिगम की आवश्यकता नहीं है, तो यह इष्टतम मोड नहीं है, क्योंकि इसमें अन्य मोड नहीं हैं। और आप कुछ प्रकार की अखंडता जांच (या संदेश प्रमाणीकरण कोड) भी जोड़ना चाह सकते हैं।


1
बिल्कुल - यह एक महत्वपूर्ण कुंजी व्युत्पत्ति समारोह, जैसे PBKDF2 का उपयोग करने के लिए महत्वपूर्ण है।
कैफे

3

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


7
मैं सहमत नहीं हो सकता। आईबीएम के लूसिफ़ेर सिफर (डेस के पूर्ववर्ती) का उपयोग 128-बिट कुंजी के रूप में किया जाता है - लेकिन डीईएस (केवल 56-बिट कुंजी के साथ) एक बार अंतर क्रिप्टैनालिसिस होने के बाद फिर से सुरक्षित हो गया था।
जेरी कॉफिन

3
बस की लंबाई को देखते हुए एक बहुत गरीब मीट्रिक है।
गेराल्ड डेविस

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

2
यह इस सवाल में कहा गया है कि कुंजी पासवर्ड से ली जाएगी। ब्रूट-फोर्सिंग द्वारा सिस्टम को तोड़ना यहाँ वर्णित किसी भी एल्गोरिदम पर हमला करने की तुलना में बहुत आसान होने की संभावना है। जब कोई पासवर्ड पासवर्ड से निकाला जाता है, तो Keylength लगभग पूरी तरह से अपूर्ण होती है।
dajames

आप मेरे जवाब को नीचे चिह्नित करते हैं, इस तथ्य के बावजूद कि आपने ठीक वही काम किया है जो मैंने किया था? मैंने कहा कि लंबाई महत्वपूर्ण है और वास्तव में अच्छी कुंजी चुनें। "अच्छा" की परिभाषा से यदि आप कुंजी के सभी बिट्स को नहीं भरते हैं, तो क्या आप एक अच्छे पर विचार करेंगे?
माइक जोन्स

3

दोनों एल्गोरिदम (एईएस और ट्वोफिश) को बहुत सुरक्षित माना जाता है। यह अन्य उत्तरों में व्यापक रूप से शामिल किया गया है।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.