CRC-32C ह्यास कोड क्याल्कुलेटर
प्रकाशित: २०२५ फेब्रुअरी १७: १८:४८:१९ UTC
ह्यास कोड क्याल्कुलेटर जसले पाठ इनपुट वा फाइल अपलोडको आधारमा ह्यास कोड गणना गर्न CRC-32C (साइक्लिक रिडन्डन्सी चेक ३२ बिट, C भेरियन्ट) ह्यास प्रकार्य प्रयोग गर्दछ।CRC-32C Hash Code Calculator
चक्रीय रिडन्डन्सी चेक (CRC) एक त्रुटि पत्ता लगाउने कोड हो जुन सामान्यतया कच्चा डेटामा आकस्मिक परिवर्तनहरू पत्ता लगाउन प्रयोग गरिन्छ। प्राविधिक रूपमा क्रिप्टोग्राफिक ह्यास प्रकार्य नभए पनि, चर-लम्बाइ इनपुटबाट निश्चित-आकार आउटपुट (32 बिट) उत्पादन गर्ने क्षमताको कारणले गर्दा CRC-32 लाई प्रायः ह्यास भनिन्छ। यस पृष्ठमा प्रस्तुत गरिएको संस्करण CRC-32C संस्करण हो, जुन एक नयाँ, "स्मार्टर" (राम्रो त्रुटि पत्ता लगाउने) संस्करण हो जुन प्रायः आधुनिक CPU हरूमा (SSE 4.2 मार्फत) हार्डवेयर द्रुत हुन्छ।
पूर्ण खुलासा: मैले यस पृष्ठमा प्रयोग गरिएको ह्यास प्रकार्यको विशिष्ट कार्यान्वयन लेखेको छैन। यो PHP प्रोग्रामिङ भाषासँग समावेश गरिएको एक मानक प्रकार्य हो। मैले सुविधाको लागि यहाँ सार्वजनिक रूपमा उपलब्ध गराउन वेब इन्टरफेस मात्र बनाएको छु।
CRC-32C ह्यास एल्गोरिथ्मको बारेमा
म गणितज्ञ होइन, तर म यो ह्यास प्रकार्यलाई एउटा साधारण उपमा दिएर व्याख्या गर्ने प्रयास गर्नेछु। धेरै क्रिप्टोग्राफिक ह्यास प्रकार्यहरू भन्दा फरक, यो विशेष जटिल एल्गोरिथ्म होइन, त्यसैले यो सम्भवतः ठीक हुनेछ ;-)
कल्पना गर्नुहोस् कि तपाईं हुलाकमा एउटा पत्र पठाउँदै हुनुहुन्छ, तर प्राप्तकर्ताकहाँ पुग्नु अघि नै यो बिग्रन सक्छ कि भनेर चिन्तित हुनुहुन्छ। पत्रको सामग्रीको आधारमा, तपाईंले CRC-32 चेकसम गणना गर्नुहुन्छ र त्यसलाई खाममा लेख्नुहुन्छ। जब प्राप्तकर्ताले पत्र प्राप्त गर्दछ, उसले चेकसम पनि गणना गर्न सक्छ र तपाईंले लेखेको कुरासँग मेल खान्छ कि भनेर हेर्न सक्छ। यदि त्यसो भयो भने, पत्र बिग्रिएको थिएन वा बाटोमा परिवर्तन गरिएको थिएन।
CRC-32 ले यो गर्ने तरिका चार चरणको प्रक्रिया हो:
चरण १: केही अतिरिक्त ठाउँ थप्नुहोस् (प्याडिङ)
- CRC ले सन्देशको अन्त्यमा थोरै अतिरिक्त ठाउँ थप्छ (जस्तै बदामलाई बक्समा प्याक गर्ने)।
- यसले त्रुटिहरू सजिलै पत्ता लगाउन मद्दत गर्छ।
चरण २: जादुई शासक (बहुपद)
- CRC-32 ले डेटा मापन गर्न विशेष "जादुई रुलर" प्रयोग गर्दछ।
- यो रुलरलाई बम्प र ग्रूभको ढाँचाको रूपमा सोच्नुहोस् (यो बहुपद हो, तर त्यो शब्दको बारेमा चिन्ता नगर्नुहोस्)।
- CRC-32 को लागि सबैभन्दा सामान्य "रूलर" एक निश्चित ढाँचा हो।
चरण ३: रुलर स्लाइड गर्दै (विभाजन प्रक्रिया)
- अब CRC ले सन्देशभरि रुलर स्लाइड गर्छ।
- प्रत्येक ठाउँमा, यसले बम्प र खाडलहरू लाइनमा छन् कि छैनन् भनेर जाँच गर्छ।
- यदि तिनीहरू लाइनमा आएनन् भने, CRC ले एउटा नोट बनाउँछ (यो साधारण XOR प्रयोग गरेर गरिन्छ, जस्तै स्विचहरू खोल्ने वा बन्द गर्ने)।
- यो अन्त्यमा नपुगुन्जेल स्लाइडिङ र स्विचहरू पल्टाइरहन्छ।
चरण ४: अन्तिम नतिजा (चेकसम)
- सम्पूर्ण सन्देशमा रुलर स्लाइड गरेपछि, तपाईंसँग एउटा सानो संख्या (३२ बिट लामो) बाँकी रहन्छ जसले मूल डेटालाई प्रतिनिधित्व गर्दछ।
- यो नम्बर सन्देशको लागि एक अद्वितीय औंठाछाप जस्तै हो।
- यो CRC-32 चेकसम हो।
पृष्ठमा प्रस्तुत गरिएको संस्करण CRC-32C भेरियन्ट हो, जुन रुचाइएको भेरियन्ट हुनुपर्छ, विशेष गरी यदि तपाईं हार्डवेयर एक्सेलेरेटेड (SSE 4.2 र पछिको) भएको CPU प्रयोग गर्दै हुनुहुन्छ र तपाईंलाई अन्य भेरियन्टहरूसँग अनुकूलता आवश्यक पर्दैन भने।
मसँग अन्य भेरियन्टहरूको लागि पनि क्याल्कुलेटरहरू छन्: