एमडी 5 और एसएचए -1 हैश की टक्कर के हमलों के खिलाफ कमजोरियां हैं। SHA256 नहीं है लेकिन यह 256 बिट्स आउटपुट करता है। क्या मैं सुरक्षित रूप से पहली या आखिरी 128 बिट्स ले सकता हूं और हैश के रूप में इसका उपयोग कर सकता हूं? मुझे पता है कि यह कमजोर होगा (क्योंकि इसमें कम बिट्स हैं) लेकिन अन्यथा यह काम करेगा?क्या SHA256 हैश को 128 बिट्स में छीनना ठीक है?
मूल रूप से मैं इसे फ़ाइल सिस्टम में फ़ाइलों की विशिष्ट पहचान करने के लिए उपयोग करना चाहता हूं, जिसमें एक दिन में एक ट्रिलियन फाइलें हो सकती हैं। मुझे जन्मदिन की समस्या से अवगत है और एक 128 बिट हैश को ट्रिलियन फाइलों पर ट्रिलियन मौके में 1 के बारे में 1 मिलना चाहिए, जिसमें एक ही हैश के साथ दो अलग-अलग फाइलें होंगी। मैं उन बाधाओं के साथ रह सकता हूं।
मैं जो नहीं रह सकता वह यह है कि अगर कोई आसानी से, जानबूझ कर, एक ही हैश के साथ एक नई फ़ाइल डालें और फ़ाइल के शुरुआती अक्षर के साथ एक नई फ़ाइल डालें। मैं एमडी 5 और एसएचए 1 में विश्वास करता हूं यह संभव है।
मैंने सोचा था जन्मदिन विरोधाभास है कि तुलना में कम अंतर देना होगा, लेकिन विकिपीडिया आप के साथ सहमत हैं: http: //en.wikipedia।संगठन/विकी/जन्मदिन_परडॉक्स # संभाव्यता_टेबल –
संबंधित प्रश्न: http://stackoverflow.com/questions/2256423/truncating-an-md5-hash-how-do-i-calculate-the-odds-of-a-collision-occuring – Shadok
यह भी देखें: http://security.stackexchange.com/questions/18385/does-truncating-the-cryptographic-hash-make-it-impossible-to-crack – Luc