2010-04-02 8 views
5

मैं सोच रहा था कि कोई विस्तार से समझा सकता है, इंद्रधनुष तालिकाओं में चेन कैसे काम करते हैं, क्योंकि आप एक पूर्ण नौसिखिया के रूप में काम करते हैं, लेकिन प्रोग्रामिंग के लिए प्रासंगिकता के साथ।इंद्रधनुष तालिकाओं में चेन कैसे काम करते हैं?

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

आपकी सहायता की बहुत सराहना की जाती है।

धन्यवाद।

पीएस .: मैंने संबंधित कागजात पढ़े हैं और इस विषय को काफी हद तक गुमराह किया है। मुझे लगता है कि मैं इन गियर्स को चालू करने के लिए बस कुछ महत्वपूर्ण याद कर रहा हूं।

+0

क्या आप पासवर्ड क्रैक करने में मदद चाहते हैं? – bmargulies

+0

नहीं, मैं समझना चाहता हूं कि स्पष्ट ग्रंथों और हैंश उत्पन्न करने के लिए प्रारंभ और अंत बिंदुओं का उपयोग कैसे किया जाता है। जोड़ना मैं यह भी समझता हूं कि कैसे 64-बिट int स्ट्रिंग में परिवर्तित हो जाता है। बस समझना चाहता था कि 2400 हैश कहाँ से आते हैं। –

उत्तर

3

हैश श्रृंखला के लिए प्रारंभ बिंदु को जानना, आप हैश-एंड-कम फ़ंक्शन को बार-बार लागू करके सभी मध्यवर्ती और अंत-बिंदु की गणना कर सकते हैं।

अंत बिंदु तब होता है जब आप एक हैश पासवर्ड के लिए श्रृंखला खोजना चाहते हैं। श्रृंखला-लंबाई की संख्या तक हैश-और-कम करें; प्रत्येक चरण में, यह देखने के लिए देखें कि क्या आपका इंटरमीडिएट आपके द्वारा गणना की गई किसी भी श्रृंखला के अंतराल से मेल खाता है या नहीं। यदि ऐसा है, तो आपको वह श्रृंखला मिली है जिसमें पासवर्ड शामिल है। तब आप जानते हैं कि श्रृंखला कहां से शुरू होती है क्योंकि आपने अपना प्रारंभ बिंदु संग्रहीत किया है, और इसलिए आप उस समय से श्रृंखला के माध्यम से आगे बढ़ सकते हैं, जब पासवर्ड धोने के लिए, हैश मान उत्पन्न करता है।

पूर्ण इंद्रधनुष तालिका प्रक्रिया इस तरह की खोज लागू करती है लेकिन हैश टकराव से बचने के लिए विभिन्न कमी कार्यों के परिवार के साथ; मैं विवरण में अच्छी तरह से नहीं जानता हूँ।

+0

क्या इसका मतलब यह है कि हैश की श्रृंखला के अंत बिंदु के लिए कभी गणना नहीं की जाती है? मेरी समझ यह है: जैसा कि यह समाप्त होता है, चेन हैश फ़ंक्शन कभी भी इसके लिए लागू नहीं होता है, जैसा कि [चित्रण] (https://upload.wikimedia.org/wikipedia/commons/thumb/7/78/Rainbow_table1.svg/1200px-Rainbow_table1 .svg.png) [विकिपीडिया लेख] से (https://en.wikipedia.org/wiki/Rainbow_table)। या मैं यहाँ कुछ याद कर रहा हूँ? –

+0

यहां एक अच्छा [crypto.stackexchange] पर जवाब है (https://crypto.stackexchange.com/a/5901/53497), समझाते हुए, बिल्कुल, चेन की गणना कैसे की जाती है। –

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