माइक्रोकंट्रोलर के लिए एमडी 5 कार्यान्वयन


11

क्या किसी के पास माइक्रोकंट्रोलर के लिए एमडी 5 एल्गोरिदम का कोई उदाहरण है (अधिमानतः 8-बिट एक)? हमारी परियोजना एक माइक्रोचिप PIC18 श्रृंखला डिवाइस का उपयोग करने जा रही है।

जवाबों:


11

यदि आप सी कार्यान्वयन की तलाश कर रहे हैं, तो माइक्रोचिप टीसीपी / आईपी स्टैक में Hashes.c फ़ाइल में MD5 का कार्यान्वयन है।


मुझे ठीक इसी की आवश्यकता थी।
जे। पोलर


4

मैं एमडी 5 के एक ज्ञात सम्मानित कार्यान्वयन के साथ रहना चाहता हूं, और उन पुस्तकालयों से दूर रहूंगा जिन्हें आप तृतीय-पक्ष विक्रेताओं से पाते हैं। मूल RFC 1321 जिसमें MD5 का वर्णन किया गया है, नमूना C कार्यान्वयन है।

अनुस्मारक: एमडी 5 के लिए ज्ञात कमजोरियां टकराव के हमले हैं, कि पूर्व- आक्रमण के हमले , इसलिए यह कुछ क्रिप्टोग्राफ़िक अनुप्रयोगों के लिए उपयुक्त है, लेकिन अन्य नहीं। यदि आप उस अंतर को नहीं जानते हैं जो आपको इसका उपयोग नहीं करना चाहिए, लेकिन इसे पूरी तरह से न छोड़ें। Http://www.vpnc.org/hash.html देखें ।


1
क्रिप्टोग्राफी के लिए, मैं MD5 ऑल्टोग्थर के बारे में स्पष्ट करूंगा ...
टोबी जाफी

1
@ जॉबी: विचार की सराहना करते हैं, लेकिन एमडी 5 में इसके पहलू हैं जो क्रिप्टोग्राफी के लिए ठीक हैं। आपको बस इसकी खूबियों और खामियों को जानना होगा।
जेसन एस

मूल RFC में C स्रोत कोड से लिंक करने के लिए +1। भले ही मैं शायद माइक्रोचिप से स्रोत कोड के साथ जाऊंगा, वही लोग जो इस चिप को बनाते हैं, वह चलने वाला है।
दाविदरी

3

आप MD5 एल्गोरिथ्म विकिपीडिया पर एक अच्छा विवरण और कुछ छद्मकोड पा सकते हैं http://en.wikipedia.org/wiki/MD5

तुम भी पर इस प्रश्न पोस्ट करने पर विचार हो सकता stackoverflow के बाद से यह सवाल प्रोग्रामिंग की दिशा में अधिक सक्षम है।


3

MD5 पर विकिपीडिया पृष्ठ से :

... यह दिखाया गया है कि एमडी 5 टक्कर प्रतिरोधी नहीं है, एमडी 5 एसएसएल प्रमाणपत्र या डिजिटल हस्ताक्षर जैसे अनुप्रयोगों के लिए उपयुक्त नहीं है जो इस संपत्ति पर निर्भर हैं।

और उसी पृष्ठ पर SSL शोधकर्ताओं से:

हमें यह भी उम्मीद है कि अन्य अनुप्रयोगों में एमडी 5 का उपयोग भी पुनर्विचार किया जाएगा।

मैं समझता हूं कि आप शायद यह नहीं सुनना चाहते, लेकिन क्या आपको वास्तव में एमडी 5 की आवश्यकता है? इसे क्रिप्टोग्राफिक प्रयोजनों के लिए उपयोग नहीं किया जाना चाहिए क्योंकि यह बहुत असुरक्षित है (और उपलब्ध इंद्रधनुष तालिकाओं के नाव लोड हैं)। यदि आप डेटा को केवल मान्य करने के लिए कुछ ढूंढ रहे हैं, तो सीआरसी ( यहां कोड ) देखें जो कम्प्यूटेशनल रूप से सस्ता है। यदि आप इसे क्रिप्टोग्राफिक प्रयोजनों के लिए उपयोग कर रहे हैं , तो क्या मैं SHA में जाने का सुझाव दे सकता हूं ? एकमात्र समस्या यह है कि अधिकांश क्रिप्टोग्राफिक रूप से सुरक्षित एल्गोरिदम विशेष रूप से माइक्रोकंट्रोलर पर अच्छी तरह से नहीं चलते हैं। मुझे पता है कि ऐसा लग सकता है कि एमडी 5 "काफी अच्छा" है, लेकिन इंजीनियरिंग का तरीका सावधानी बरतने का है।


1
MD5 को पूरी तरह से नियंत्रित न करें: "यह क्रिप्टोग्राफ़िक उद्देश्यों के लिए उपयोग नहीं किया जाना चाहिए क्योंकि यह बहुत असुरक्षित है" बहुत अधिक है।
जेसन एस

1
इस तथ्य का उपयोग न करें कि एक हैश एल्गोरिथ्म में इंद्रधनुष टेबल है या नहीं इसका उपयोग करने के लिए एक विचार के रूप में। अगर SHA के पास अब कई इंद्रधनुष टेबल नहीं हैं, तो यह होगा। उस समस्या के बारे में जानने के लिए एक संदेश में एक गुप्त "नमक" संलग्न करें।
जेसन एस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.