0

HMAC जनरेटर और सत्यापक

एक गुप्त कुंजी का उपयोग करके SHA-256, SHA-384, SHA-512, या SHA-1 के साथ HMAC संदेश प्रमाणीकरण कोड जनरेट करें और सत्यापित करें, पूरी तरह से आपके ब्राउज़र में।

🔒 पूरी तरह से आपके ब्राउज़र में संसाधित - आपके द्वारा यहां दर्ज की गई कोई भी चीज़ कभी भी अपलोड नहीं की जाती है।

प्रोसेस हो रहा है... 0%
कुंजी आयात हो रही है
HMAC की गणना हो रही है
पूर्ण

परिणाम

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

यह एक सादे डाइजेस्ट से मूलभूत अंतर है: हमारा अपना हैश जनरेटर उपकरण MD5 या SHA-256 जैसे बिना-कुंजी वाले हैश की गणना करता है, जो आकस्मिक भ्रष्टाचार का पता लगाने के लिए तो बढ़िया हैं, लेकिन डेटा किसने उत्पन्न किया, इसके बारे में कुछ साबित नहीं करते, क्योंकि कोई भी वही हैश उत्पन्न कर सकता है। एक HMAC अखंडता (संदेश बदला नहीं गया था) और प्रामाणिकता (हस्ताक्षरकर्ता को साझा रहस्य पता था) दोनों साबित करता है, यही कारण है कि HMAC API अनुरोध हस्ताक्षर, JWT के HS256/HS384/HS512 एल्गोरिदम और TLS रिकॉर्ड प्रमाणीकरण के पीछे मानक बिल्डिंग ब्लॉक है।

सबसे आम वास्तविक-दुनिया उपयोग का मामला वेबहुक हस्ताक्षरों का सत्यापन है। स्ट्राइप, गिटहब और शॉपिफ़ाई जैसी सेवाएँ प्रत्येक वेबहुक पेलोड पर HMAC-SHA256 के साथ हस्ताक्षर करती हैं, एक ऐसे रहस्य का उपयोग करके जिसे आप कॉन्फ़िगर करते हैं, और परिणामी हस्ताक्षर एक अनुरोध हेडर में भेजती हैं। आपके सर्वर से अपेक्षा की जाती है कि वह कच्चे पेलोड पर उसी रहस्य के साथ HMAC की पुनर्गणना करे और हेडर मान से तुलना करे — यदि वे मिलते हैं, तो आप जानते हैं कि अनुरोध वास्तव में उस सेवा से आया था और पारगमन में उसके साथ छेड़छाड़ नहीं की गई थी। इस उपकरण का सत्यापन मोड ठीक उसी जाँच को पुनरुत्पादित करता है: पेलोड, साझा रहस्य और प्राप्त हस्ताक्षर पेस्ट करें, और तुरंत मिलान या बेमेल प्राप्त करें।

सब कुछ ब्राउज़र के मूल वेब क्रिप्टो API (crypto.subtle.importKey और crypto.subtle.sign) के माध्यम से स्थानीय रूप से चलता है, इसलिए गुप्त कुंजी, संदेश का मुख्य भाग और परिणामी हस्ताक्षर कभी भी आपकी मशीन नहीं छोड़ते — किसी भी सर्वर पर कुछ भी अपलोड नहीं किया जाता है, जो महत्वपूर्ण है क्योंकि HMAC रहस्य ठीक उसी प्रकार के मान हैं जिन्हें आपको कभी भी किसी यादृच्छिक ऑनलाइन उपकरण में पेस्ट नहीं करना चाहिए जो इसे लॉग कर सकता है।