एचएमएसी जनरेटर
HMAC-SHA256 Hash Generator
डेटा अखंडता और प्रामाणिकता के लिए एक गुप्त कुंजी का उपयोग करके संदेश प्रमाणीकरण कोड उत्पन्न करें।
क्या है
HMAC (हैश-आधारित संदेश प्रमाणीकरण कोड) एक गुप्तचरण तंत्र है जो एक गुप्त कुंजी को एक हैश फ़ंक्शन के साथ संयोजित करके एक संदेश प्रमाणीकरण कोड उत्पन्न करता है, जो अखंडता और प्रामाणिकता दोनों की पुष्टि प्रदान करता है। एक साधारण हैश के विपरीत, HMAC में संदेश को सत्यापित करने के लिए सत्यापक के पास वही गुप्त कुंजी होनी आवश्यक है, जिससे कुंजी रहित पक्षों द्वारा हेरफेर रोका जा सकता है।RFC 2104 में परिभाषित, HMAC को कुंजी (ब्लॉक आकार तक पैड की गई) को आंतरिक एवं बाहरी पैडिंग स्थिरांकों के साथ XOR करके हैश करके तथा फिर संदेश के साथ संयोजित करके निर्मित किया जाता है। यह विधि यह सुनिश्चित करती है कि भले ही आधारभूत हैश फ़ंक्शन में कमजोरियाँ हों (जैसे MD5 या SHA-1), HMAC फिर भी सुरक्षित बना रहता है। HMAC-SHA256 का व्यापक रूप से API प्रमाणीकरण (AWS Signature, JWT), संदेश हस्ताक्षरण, CSRF टोकन उत्पादन और सुरक्षित कुकी सत्यापन में उपयोग किया जाता है।हमारा टूल सभी प्रमुख हैश एल्गोरिदम के साथ HMAC का समर्थन करता है, जिससे आप अपने उपयोग-केस के लिए उपयुक्त सुरक्षा स्तर चुन सकते हैं।
कैसे उपयोग करें
- अपने ब्राउज़र में HMAC जनरेटर खोलें—इंस्टॉलेशन या पंजीकरण की कोई आवश्यकता नहीं है।
- ड्रॉपडाउन से अपनी पसंदीदा हैश एल्गोरिदम चुनें (अधिकांश अनुप्रयोगों के लिए HMAC-SHA256 की सिफारिश की जाती है)।
- कुंजी क्षेत्र में अपनी गुप्त कुंजी दर्ज करें — यह कुंजी उत्पादन एवं सत्यापन दोनों हेतु उपयोग की जाती है।
- अपना संदेश उस इनपुट क्षेत्र में टाइप या पेस्ट करें जिसे आप प्रमाणीकृत करना चाहते हैं।
- HMAC तुरंत गणना किया जाता है और आउटपुट क्षेत्र में एक हेक्साडेसिमल स्ट्रिंग के रूप में प्रदर्शित किया जाता है।
- API अनुरोधों, संदेश हेडरों या सत्यापन प्रक्रियाओं में उपयोग के लिए HMAC मान की कॉपी बनाएँ।
उदाहरण
इनपुट: संदेश: "hello", कुंजी: "secret"
प्रक्रिया:
HMAC-SHA256("hello", "secret")परिणाम: 88aab3ede8d3adf94d26ab90d3bafd4a2083070c3bcce9c014ee04a443847c0b
इनपुट: संदेश: "world", कुंजी: "key123"
प्रक्रिया:
HMAC-SHA1("world", "key123")परिणाम: 0aca9adecdb9e148c37510688729d52c95fe3455
संबंधित खोजें
लोग यह भी खोजते हैं: एचएमएसी, एचएमएसी-शा-256, संदेश प्रमाणीकरण, एमएसी कोड, कीयुक्त हैश, API प्रमाणीकरण।
एचएमएसीएचएमएसी-शा-256संदेश प्रमाणीकरणएमएसी कोडकीयुक्त हैशAPI प्रमाणीकरण
अक्सर पूछे जाने वाले प्रश्न
HMAC और एक सामान्य हैश में क्या अंतर है?
एक सामान्य हैश (जैसे SHA-256) केवल डेटा की अखंडता सुनिश्चित करता है—कोई भी व्यक्ति किसी संदेश का हैश गणना कर सकता है। HMAC हैशिंग प्रक्रिया में एक गुप्त कुंजी जोड़ता है, जिससे अखंडता और प्रामाणिकता दोनों प्राप्त होती हैं। HMAC के साथ, केवल वे ही पक्ष जिनके पास यह गुप्त कुंजी है, प्रमाणीकरण कोड उत्पन्न या सत्यापित कर सकते हैं। इसका अर्थ है कि एक हमलावर, भले ही वह उपयोग किए जा रहे हैश एल्गोरिदम को जानता हो, लेकिन बिना कुंजी के संदेश में परिवर्तन करके एक वैध HMAC उत्पन्न नहीं कर सकता।यह HMAC को API प्रमाणीकरण, संदेश हस्ताक्षरण और उन सभी परिस्थितियों के लिए उपयुक्त बनाता है जहाँ आपको यह सत्यापित करने की आवश्यकता हो कि संदेश एक विश्वसनीय स्रोत से आया है और इसमें हेरफेर नहीं किया गया है।
HMAC के साथ मैं कौन सा हैश एल्गोरिदम उपयोग करूँ?
HMAC-SHA256 अधिकांश अनुप्रयोगों के लिए अनुशंसित विकल्प है, जो 256-बिट सुरक्षा और व्यापक संगतता प्रदान करता है। इसका उपयोग AWS सिग्नेचर संस्करण 4, JSON वेब टोकन (JWT) और अधिकांश आधुनिक API प्रमाणीकरण प्रणालियों में किया जाता है। HMAC-SHA512 दीर्घकालिक सुरक्षा या वर्गीकृत डेटा के लिए उच्च सुरक्षा स्तर प्रदान करता है। HMAC-SHA1 को HMAC उद्देश्यों के लिए अभी भी सुरक्षित माना जाता है (क्योंकि HMAC सुरक्षा हैश टकराव प्रतिरोध पर निर्भर नहीं है), लेकिन इसे SHA-256 के पक्ष में धीरे-धीरे बंद किया जा रहा है।नई अनुप्रयोगों में HMAC-MD5 से बचा जाना चाहिए, क्योंकि हालाँकि HMAC-MD5 सैद्धांतिक रूप से सुरक्षित है, पुरानी हैश फ़ंक्शन का उपयोग विश्वास को कम करता है और अनुपालन आवश्यकताओं को पूरा नहीं कर पाता।
मैं HMAC गुप्त कुंजियों का प्रबंधन कैसे करूँ?
HMAC गुप्त कुंजियों को कम से कम 256 बिट एंट्रॉपी (32 बाइट) वाले क्रिप्टोग्राफिक रूप से सुरक्षित यादृच्छिक संख्या जनरेटर का उपयोग करके उत्पन्न किया जाना चाहिए। कुंजियों को पर्यावरण चरों, हार्डवेयर सुरक्षा मॉड्यूल (HSMs), या AWS Secrets Manager, HashiCorp Vault या Azure Key Vault जैसी समर्पित गुप्त प्रबंधन सेवाओं का उपयोग करके सुरक्षित रूप से संग्रहीत किया जाना चाहिए। स्रोत कोड में कुंजियों को कभी भी हार्डकोड न किया जाए और उन्हें संस्करण नियंत्रण में भी शामिल न किया जाए। कुंजियों को नियमित रूप से घुमाएँ तथा ऐसी कुंजी घूर्णन रणनीति अपनाएँ जो सुचारु संक्रमण सुनिश्चित करे।कुंजी को एन्क्रिप्टेड चैनलों का उपयोग करके पक्षों के बीच सुरक्षित रूप से साझा किया जाना चाहिए, और कुंजी तक पहुँच का लॉग एवं ऑडिट किया जाना चाहिए।
क्या HMAC एन्क्रिप्टेड है? क्या इसे उलटा जा सकता है?
HMAC एन्क्रिप्शन नहीं है—यह एक संदेश प्रमाणीकरण कोड है। HMAC आउटपुट से मूल संदेश या गुप्त कुंजी को पुनः प्राप्त करना संभव नहीं है। HMAC का उद्देश्य यह सत्यापित करना है कि संदेश में हेरफेर नहीं किया गया है और यह उस पक्ष से आया है जिसके पास गुप्त कुंजी है। HMAC की पुष्टि करने के लिए, आप प्राप्त संदेश और अपनी गुप्त कुंजी की प्रति का उपयोग करके इसे पुनः गणना करते हैं, फिर परिणाम की तुलना प्राप्त HMAC से करते हैं। यदि दोनों मेल खाते हैं, तो संदेश प्रामाणिक है।यह मूल रूप से एन्क्रिप्शन से भिन्न है, क्योंकि एन्क्रिप्शन को मूल डेटा को पुनः प्राप्त करने हेतु (कुंजी के साथ) उलटने योग्य बनाया गया है।