HMAC जेनरेटर ऑनलाइन
आपके ब्राउज़र में SHA-256, SHA-1, SHA-384, या SHA-512 के साथ एक संदेश और सीक्रेट की से एक HMAC हस्ताक्षर जेनरेट करें। आपकी की स्थानीय रहती है।
HMAC जेनरेटर Web Crypto API का उपयोग करके पूरी तरह आपके ब्राउज़र में चलता है। आपका साइन किया गया संदेश और आपकी दर्ज की गई सीक्रेट की कभी आपके डिवाइस से बाहर नहीं जाते और ArrayKit पर अपलोड नहीं होते।
Hash जेनरेटर खोलें
HMAC जेनरेटर के बारे में
HMAC जेनरेटर एक संदेश को एक सीक्रेट की से साइन करके एक keyed हैश बनाता है — वही प्रमाणीकरण कोड जो आपका API या वेबहुक यह साबित करने के लिए उपयोग करता है कि एक पेलोड के साथ छेड़छाड़ नहीं हुई। संदेश और सीक्रेट टाइप या पेस्ट करें, SHA-256, SHA-1, SHA-384, या SHA-512 चुनें, और हस्ताक्षर को HEX तथा Base64 दोनों के रूप में वापस पढ़ें। की सादा UTF-8 टेक्स्ट या एक HEX-एन्कोडेड बाइट स्ट्रिंग हो सकती है, इसलिए यह आपके सर्वर की अपेक्षा से मेल खाती है। यह वेबहुक हस्ताक्षर सत्यापित करने, साइन किए गए अनुरोध हेडर जोड़ने, एक API की HMAC स्कीम का परीक्षण करने, या एक मान को लाइब्रेरी आउटपुट के विरुद्ध जाँचने वाले डेवलपर्स के लिए बनाया गया है। सब कुछ Web Crypto API के साथ आपके डिवाइस पर गणना होता है — संदेश और सीक्रेट की कभी आपके ब्राउज़र से बाहर नहीं जाते।
विशेषताएँ
- किसी भी संदेश को एक सीक्रेट की से साइन करें और HMAC तुरंत पढ़ें
- SHA-256, SHA-1, SHA-384, और SHA-512 हैश फ़ंक्शन के बीच टॉगल करें
- हस्ताक्षर को लोअरकेस HEX और मानक Base64 के रूप में साथ-साथ देखें
- सीक्रेट की को UTF-8 टेक्स्ट या एक HEX-एन्कोडेड बाइट स्ट्रिंग के रूप में दर्ज करें
- सर्वर-साइड और लाइब्रेरी HMAC आउटपुट से बाइट-दर-बाइट मेल खाता है
- HEX या Base64 हस्ताक्षर एक क्लिक में कॉपी करें
- जब एक HEX की की लंबाई विषम हो या ग़ैर-HEX वर्ण हों तो स्पष्ट त्रुटि
- Web Crypto API के माध्यम से आपके डिवाइस पर चलता है, कुछ भी अपलोड नहीं होता
HMAC जेनरेटर का उपयोग कैसे करें
- वह हैश एल्गोरिदम चुनें जिसका आपकी सेवा उपयोग करती है (SHA-256 सबसे आम है)
- वह संदेश टाइप या पेस्ट करें जिसे आप प्रमाणित करना चाहते हैं
- सीक्रेट की दर्ज करें और इसके प्रारूप से मेल खाने के लिए UTF-8 या Hex चुनें
- HMAC को HEX या Base64 के रूप में पढ़ें और जिस मान की आपको ज़रूरत है उसे कॉपी करें
उदाहरण
इनपुट
message: The quick brown fox jumps over the lazy dog
key: key (UTF-8)
algorithm: SHA-256
आउटपुट
hex: f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
base64: 97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=
क्लासिक fox वाक्य का HMAC-SHA256, "key" से keyed।
सामान्य त्रुटियाँ और समस्या निवारण
- हस्ताक्षर मेरे सर्वर द्वारा बनाए गए से मेल नहीं खाता। — पुष्टि करें कि आपने वही हैश (SHA-256 बनाम SHA-1) और वही की प्रारूप चुना। a0b1c2 जैसी की कच्चे UTF-8 टेक्स्ट के रूप में HEX बाइट से भिन्न है — सर्वर इसे कैसे पढ़ता है उससे मेल खाने के लिए Hex टॉगल स्विच करें।
- त्रुटि: HEX की में अंकों की सम संख्या होनी चाहिए। — HEX की मोड में हर बाइट दो HEX वर्ण है, इसलिए की की लंबाई सम होनी चाहिए। कोई भी भटका हुआ वर्ण हटाएँ या छूटा अंक जोड़ें, या यदि की वास्तव में टेक्स्ट है तो UTF-8 मोड पर स्विच करें।
- API हस्ताक्षर Base64 के रूप में चाहता है लेकिन मेरे पास केवल HEX है। — आपको कुछ भी बदलने की ज़रूरत नहीं — यह टूल वही हस्ताक्षर HEX और Base64 दोनों के रूप में दिखाता है। दूसरी पंक्ति से Base64 मान सीधे कॉपी करें।
- अंतिम न्यूलाइन या खाली जगहें परिणाम बदल देती हैं। — HMAC संदेश की हर बाइट को कवर करता है, इसलिए एक अंतिम न्यूलाइन या खाली जगह एक अलग कोड बनाती है। बिना जोड़ी गई खाली जगह के, आपकी सेवा जो ठीक-ठीक बाइट भेजती है उन्हें साइन करें।
अक्सर पूछे जाने वाले प्रश्न
- यह HMAC जेनरेटर क्या गणना करता है?
- यह एक keyed-hash message authentication code गणना करता है: यह आपके संदेश को एक हैश फ़ंक्शन (SHA-256, SHA-1, SHA-384, या SHA-512) के तहत एक सीक्रेट की के साथ जोड़ता है और परिणामी हस्ताक्षर को HEX तथा Base64 के रूप में लौटाता है। वही की वाला कोई भी व्यक्ति संदेश सत्यापित करने के लिए इसकी पुनर्गणना कर सकता है।
- क्या मुझे अपनी की को UTF-8 या HEX के रूप में दर्ज करना चाहिए?
- आपकी सेवा की को कैसे संग्रहीत करती है उससे मेल खाएँ। यदि सीक्रेट एक सामान्य स्ट्रिंग या पासफ़्रेज़ है, तो UTF-8 का उपयोग करें। यदि यह HEX बाइट का एक क्रम है (बेतरतीब जनरेट की गई की के लिए आम), तो Hex पर स्विच करें ताकि ठीक-ठीक वही बाइट उपयोग हों — दोनों अलग हस्ताक्षर बनाते हैं।
- मुझे कौन सा HMAC एल्गोरिदम चुनना चाहिए?
- HMAC-SHA256 अधिकांश API और वेबहुक के लिए डिफ़ॉल्ट है। एक लंबे हस्ताक्षर के लिए SHA-384 या SHA-512 चुनें, या SHA-1 केवल तब जब आपको एक पुराने सिस्टम से मेल खाना हो, क्योंकि SHA-1 नए डिज़ाइन के लिए कमज़ोर माना जाता है।
- मैं इससे एक वेबहुक हस्ताक्षर कैसे सत्यापित करूँ?
- कच्चा वेबहुक पेलोड संदेश के रूप में पेस्ट करें, साझा साइनिंग सीक्रेट को की के रूप में दर्ज करें, प्रदाता द्वारा प्रलेखित एल्गोरिदम चुनें, और HEX या Base64 आउटपुट की उनके भेजे गए हस्ताक्षर हेडर से तुलना करें। एक मैच पुष्टि करता है कि पेलोड प्रामाणिक और अपरिवर्तित है।
- क्या मेरा संदेश या सीक्रेट की कहीं अपलोड होते हैं?
- नहीं। HMAC Web Crypto API के साथ आपके ब्राउज़र में गणना होता है। आपका साइन किया गया संदेश और आपकी दर्ज की गई सीक्रेट की कभी आपके डिवाइस से बाहर नहीं जाते और ArrayKit या किसी सर्वर पर नहीं भेजे जाते।
- आउटपुट HEX और Base64 दोनों में क्यों है?
- अलग-अलग सेवाएँ वही HMAC बाइट को अलग-अलग एन्कोड करती हैं — कुछ हेडर लोअरकेस HEX उपयोग करते हैं, अन्य Base64। यह टूल समान हस्ताक्षर की दोनों एन्कोडिंग दिखाता है ताकि आप बिना हाथ से बदले जो भी प्रारूप आपका API अपेक्षित करता है वह कॉपी कर सकें।
संबंधित टूल
- हैश जेनरेटर — Web Crypto API के माध्यम से SHA-256 / SHA-1 / SHA-384 / SHA-512।
- JWT साइनर — पेलोड और सीक्रेट से JWT (HS256/384/512) बनाएँ और साइन करें — Web Crypto।
- JWT डिकोडर — JWT के हेडर और पेलोड को डिकोड करें और exp/iat का निरीक्षण करें (बिना सत्यापन)।
- Bcrypt जेनरेटर — चुनी हुई लागत पर एक पासवर्ड bcrypt से हैश और सत्यापित करें।
- TOTP / 2FA जेनरेटर — base32 सीक्रेट से समय-आधारित वन-टाइम पासवर्ड (2FA कोड) जेनरेट करें।
- Base64 एन्कोड / डिकोड — UTF-8-सुरक्षित Base64 एन्कोडिंग और डिकोडिंग।
सभी ArrayKit टूल