मैसेज ऑथेंटिकेशन कोड (MAC) की परिभाषा
मैसेज ऑथेंटिकेशन कोड (MAC) एक क्रिप्टोग्राफिक चेकसम है जो संदेश की अखंडता (इंटीग्रिटी) और प्रामाणिकता (ऑथेंटिसिटी) सुनिश्चित करता है। यह साझा गुप्त कुंजी का उपयोग करके जनरेट किया जाता है और संदेश के साथ भेजा जाता है।
MAC कैसे काम करता है?
- भेजने वाला और प्राप्तकर्ता एक गुप्त कुंजी (K) साझा करते हैं
- भेजने वाला MAC एल्गोरिदम (जैसे HMAC-SHA256) का उपयोग करके संदेश + कुंजी से MAC जनरेट करता है
- संदेश और MAC दोनों भेजे जाते हैं
- प्राप्तकर्ता वही कुंजी और एल्गोरिदम उपयोग करके MAC की गणना करता है
- अगर दोनों MAC मेल खाते हैं → संदेश अपरिवर्तित है और प्रामाणिक प्रेषक से आया है
MAC के प्रकार
| प्रकार | विवरण | उदाहरण |
| HMAC | हैश-आधारित MAC (सबसे आम) | HMAC-SHA256, HMAC-SHA1 |
| CMAC | सिफर-आधारित MAC | AES-CMAC |
| GMAC | गैलोइस मोड MAC (GCM का हिस्सा) | AES-GCM |
| Poly1305 | आधुनिक, तेज़ MAC | ChaCha20-Poly1305 |
MAC vs डिजिटल सिग्नेचर vs हैश
| विशेषता | MAC | डिजिटल सिग्नेचर | हैश |
| कुंजी प्रकार | सिमेट्रिक (साझा) | असिमेट्रिक (निजी/सार्वजनिक) | कोई कुंजी नहीं |
| नॉन-रिप्यूडिएशन | नहीं | हाँ | नहीं |
| गति | बहुत तेज़ | धीमा | तेज़ |
| उपयोग | डेटा इंटीग्रिटी + ऑथेंटिसिटी | नॉन-रिप्यूडिएशन + ऑथेंटिसिटी | केवल इंटीग्रिटी |
MAC पर संभावित हमले
- रीप्ले अटैक: पुराना वैध संदेश+MAC दोबारा भेजना → काउंटरमेजर: टाइमस्टैम्प, सीक्वेंस नंबर, नॉन्स
- लेंथ एक्सटेंशन अटैक: कुछ हैश फंक्शन (MD5, SHA1) पर लागू → HMAC उपयोग करके रोका जाता है
- की रिकवरी अटैक: कमजोर कुंजी या एल्गोरिदम से कुंजी निकालना
MAC के सुरक्षा आवश्यकताएं
- अनफोर्जेबिलिटी: कुंजी के बिना वैध MAC बनाना असंभव होना चाहिए
- कुंजी गोपनीयता: कुंजी केवल अधिकृत पक्षों को पता होनी चाहिए
- यादृच्छिकता: MAC आउटपुट अप्रत्याशित होना चाहिए
व्यावहारिक उपयोग
- TLS/SSL में HMAC (रिकॉर्ड लेयर इंटीग्रिटी)
- IPsec, SSH में डेटा इंटीग्रिटी
- API ऑथेंटिकेशन (AWS Signature, JWT में HS256)
- बैंकिंग ट्रांजैक्शन, IoT डिवाइस कम्युनिकेशन