संदेश प्रमाणीकरण कोड (मैसेज ऑथेंटिकेशन कोड): Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 29: Line 29:


==सुरक्षा==
==सुरक्षा==
जबकि मैक फ़ंक्शन [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन]] के समान हैं, उनके पास अलग-अलग सुरक्षा आवश्यकताएं हैं। सुरक्षित माने जाने के लिए, एक मैक फ़ंक्शन को डिजिटल हस्ताक्षर जालसाजी|चयनित-संदेश हमलों के तहत अस्तित्वगत जालसाजी का विरोध करना चाहिए। इसका मतलब यह है कि भले ही एक हमलावर के पास एक ओरेकल मशीन तक पहुंच हो, जिसके पास गुप्त कुंजी हो और हमलावर के चयन के संदेशों के लिए मैक उत्पन्न करता हो, हमलावर अन्य संदेशों के लिए मैक का अनुमान नहीं लगा सकता है (जो कि ओरेकल को क्वेरी करने के लिए इस्तेमाल नहीं किया गया था) अव्यवहार्य प्रदर्शन किए बिना गणना की मात्रा।
जबकि MAC फ़ंक्शन [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन|कूटलेखन हैश फ़ंक्शन]] के समान हैं, उनके पास अलग-अलग सुरक्षा आवश्यकताएं हैं। सुरक्षित माने जाने के लिए, एक MAC फ़ंक्शन को चुने हुए संदेश हमलों के तहत अस्तित्व संबंधी जालसाजी का विरोध करना चाहिए। इसका मतलब यह है कि भले ही एक हमलावर के पास एक ऑरेकल तक पहुंच हो, जिसके पास गुप्त कुंजी है और मैकर के लिए MAC उत्पन्न करता है, अन्य संदेशों के लिए MAC का अनुमान नहीं लगा सकता है (जो ऑरेकल को क्वेरी करने के लिए उपयोग नहीं किया गया था) संगणना की असंभव मात्रा का प्रदर्शन किए बिना।


एमएसीएस डिजिटल हस्ताक्षर से भिन्न होते हैं क्योंकि मैक मूल्य एक ही गुप्त कुंजी का उपयोग करके उत्पन्न और सत्यापित दोनों होते हैं। इसका तात्पर्य यह है कि संदेश के प्रेषक और प्राप्तकर्ता को संचार शुरू करने से पहले एक ही कुंजी पर सहमत होना चाहिए, जैसा कि सममित एन्क्रिप्शन के मामले में होता है। इसी कारण से, MAC विशेष रूप से नेटवर्क-व्यापी साझा गुप्त कुंजी के मामले में हस्ताक्षर द्वारा प्रस्तावित गैर-अस्वीकृति की संपत्ति प्रदान नहीं करते हैं: कोई भी उपयोगकर्ता जो MAC को सत्यापित कर सकता है, वह अन्य संदेशों के लिए MACs उत्पन्न करने में भी सक्षम है। इसके विपरीत, एक कुंजी जोड़ी की निजी कुंजी का उपयोग करके एक डिजिटल हस्ताक्षर उत्पन्न किया जाता है, जो कि सार्वजनिक कुंजी क्रिप्टोग्राफी है।<ref name=":1" />चूंकि यह निजी कुंजी केवल उसके धारक के लिए सुलभ है, एक डिजिटल हस्ताक्षर यह साबित करता है कि दस्तावेज़ पर उस धारक के अलावा किसी और ने हस्ताक्षर नहीं किए थे। इस प्रकार, डिजिटल हस्ताक्षर गैर-अस्वीकृति प्रदान करते हैं। हालांकि, गैर-अस्वीकार सिस्टम द्वारा प्रदान किया जा सकता है जो मैक कुंजी के लिए महत्वपूर्ण उपयोग जानकारी को सुरक्षित रूप से बांधता है; एक ही कुंजी दो लोगों के कब्जे में है, लेकिन एक के पास कुंजी की एक प्रति है जिसका उपयोग मैक पीढ़ी के लिए किया जा सकता है जबकि दूसरे के पास हार्डवेयर सुरक्षा मॉड्यूल में कुंजी की एक प्रति है जो केवल मैक सत्यापन की अनुमति देती है। यह आमतौर पर वित्त उद्योग में किया जाता है।{{citation needed|date=February 2013}}
एमएसीएस अंकीय हस्ताक्षर से भिन्न होते हैं क्योंकि MAC मूल्य एक ही गुप्त कुंजी का उपयोग करके उत्पन्न और सत्यापित दोनों होते हैं। इसका तात्पर्य यह है कि संदेश के प्रेषक और प्राप्तकर्ता को संचार शुरू करने से पहले एक ही कुंजी पर सहमत होना चाहिए, जैसा कि सममित कूटलेखन मामले में होता है। इसी कारण से, MAC विशेष रूप से नेटवर्क-व्यापी साझा गुप्त कुंजी के मामले में हस्ताक्षर द्वारा प्रस्तावित गैर-अस्वीकृति की संपत्ति प्रदान नहीं करते हैं: कोई भी उपयोगकर्ता जो MAC को सत्यापित कर सकता है, वह अन्य संदेशों के लिए MACs उत्पन्न करने में भी सक्षम है। इसके विपरीत, एक कुंजी जोड़ी की निजी कुंजी का उपयोग करके एक अंकीय हस्ताक्षर उत्पन्न किया जाता है, जो कि सार्वजनिक कुंजी कूटलेखन है।<ref name=":1" />चूंकि यह निजी कुंजी केवल उसके धारक के लिए सुलभ है, एक अंकीय हस्ताक्षर साबित करता है कि दस्तावेज़ पर उस धारक के अलावा किसी और ने हस्ताक्षर नहीं किए थे। इस प्रकार, अंकीय हस्ताक्षर गैर-अस्वीकृति प्रदान करते हैं।। हालांकि, गैर-अस्वीकार प्रणाली द्वारा प्रदान किया जा सकता है जो MAC कुंजी के लिए महत्वपूर्ण उपयोग जानकारी को सुरक्षित रूप से बांधता है; एक ही कुंजी दो लोगों के कब्जे में है, लेकिन एक के पास कुंजी की एक प्रति है जिसका उपयोग MAC पीढ़ी के लिए किया जा सकता है जबकि दूसरे के पास यंत्र सामाग्री रक्षा मॉड्यूल में कुंजी की एक प्रति है जो केवल MAC सत्यापन की अनुमति देती है। यह आमतौर पर वित्त उद्योग में किया जाता है।{{citation needed|date=February 2013}}




==कार्यान्वयन==
==कार्यान्वयन==
MAC एल्गोरिदम को अन्य क्रिप्टोग्राफ़िक प्रिमिटिव से बनाया जा सकता है, जैसे क्रिप्टोग्राफ़िक हैश फ़ंक्शंस ([[HMAC]] के मामले में) या [[ब्लॉक सिफर]] एल्गोरिदम (OMAC (क्रिप्टोग्राफी), CCM मोड, गैलोज़/काउंटर मोड और PMAC (क्रिप्टोग्राफी)) से। हालांकि [[यूएमएसी]]-[[वीएमएसी]] और पॉली1305-एईएस जैसे कई सबसे तेज मैक एल्गोरिदम सार्वभौमिक हैशिंग के आधार पर बनाए गए हैं।<ref>{{cite journal |url=http://www.fastcrypto.org/vmac/draft-krovetz-vmac-01.txt|title=वीएमएसी: यूनिवर्सल हैशिंग का उपयोग कर संदेश प्रमाणीकरण कोड|access-date=16 March 2010 |journal=CFRG Working Group }}</ref>
MAC एल्गोरिदम को अन्य कूटलेखन आदिम से बनाया जा सकता है, जैसे कूटलेखन हैश फ़ंक्शंस ([[HMAC]] के मामले में) या [[ब्लॉक सिफर|बंद संकेताक्षर]] एल्गोरिदम (OMAC (कूटलेखन), CCM मोड, गैलोज़/काउंटर मोड और PMAC (कूटलेखन)) से। हालांकि [[यूएमएसी]]-[[वीएमएसी]] और पॉली1305-एईएस जैसे कई सबसे तेज मैक एल्गोरिदम सार्वभौमिक हैशिंग के आधार पर बनाए गए हैं।<ref>{{cite journal |url=http://www.fastcrypto.org/vmac/draft-krovetz-vmac-01.txt|title=वीएमएसी: यूनिवर्सल हैशिंग का उपयोग कर संदेश प्रमाणीकरण कोड|access-date=16 March 2010 |journal=CFRG Working Group }}</ref>
आंतरिक रूप से बंद हैश एल्गोरिदम जैसे कि [[SipHash]] परिभाषा MAC द्वारा भी हैं; वे यूनिवर्सल-हैशिंग आधारित एमएसीएस से भी तेज हो सकते हैं।<ref name="SipHash">{{cite web
आंतरिक रूप से बंद हैश एल्गोरिदम जैसे कि [[SipHash]] परिभाषा MAC द्वारा भी हैं; वे सार्वभौमिक-हैशिंग आधारित एमएसीएस से भी तेज हो सकते हैं।<ref name="SipHash">{{cite web
  |url=https://131002.net/siphash/siphash.pdf
  |url=https://131002.net/siphash/siphash.pdf
  |title=SipHash: एक तेज़ शॉर्ट-इनपुट PRF|author1=Jean-Philippe Aumasson
  |title=SipHash: एक तेज़ शॉर्ट-इनपुट PRF|author1=Jean-Philippe Aumasson
Line 43: Line 43:
  |date=2012-09-18
  |date=2012-09-18
}}</ref>
}}</ref>
इसके अतिरिक्त, मैक एल्गोरिथ्म जानबूझकर दो या दो से अधिक क्रिप्टोग्राफ़िक आदिम को जोड़ सकता है, ताकि सुरक्षा को बनाए रखा जा सके, भले ही बाद में उनमें से एक को असुरक्षित पाया गया हो। उदाहरण के लिए, ट्रांसपोर्ट लेयर सिक्योरिटी (TLS) में, इनपुट डेटा को आधे हिस्सों में विभाजित किया जाता है, जिनमें से प्रत्येक को एक अलग हैशिंग प्रिमिटिव ([[SHA-1]] और [[SHA-2]]) के साथ संसाधित किया जाता है, फिर मैक को आउटपुट करने के लिए अनन्य या एक साथ।
इसके अतिरिक्त, MAC एल्गोरिथ्म जानबूझकर दो या दो से अधिक कूटलेखन आदिम को जोड़ सकता है, ताकि सुरक्षा को बनाए रखा जा सके, भले ही बाद में उनमें से एक को असुरक्षित पाया गया हो। उदाहरण के लिए, ट्रांसपोर्ट लेयर सिक्योरिटी (TLS) में, निविष्ट डेटा को हिस्सों में विभाजित किया जाता है, जिनमें से प्रत्येक को एक अलग हैशिंग आदिम (SHA-1 और SHA-2) के साथ संसाधित किया जाता है, फिर MAC को निर्गत करने के लिए एक साथ XORed किया जाता है।


===एक बार का मैक===
===एक बार का MAC===
यूनिवर्सल हैशिंग और विशेष रूप से जोड़ीदार स्वतंत्र हैश फ़ंक्शंस एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं जब तक कि कुंजी का उपयोग एक बार किया जाता है। इसे प्रमाणीकरण के लिए वन-टाइम पैड के रूप में देखा जा सकता है।<ref name=":0">{{cite book |author-link=Gustavus Simmons |first=Gustavus |last=Simmons |chapter=Authentication theory/coding theory |title=क्रिप्टोलॉजी में अग्रिम: क्रिप्टो 84 की कार्यवाही|pages=411–431 |year=1985 |location=Berlin |publisher=Springer |isbn= }}</ref>
सार्वभौमिक द्रुतान्वेषण और विशेष रूप से जोड़ीदार स्वतंत्र हैश फलन एक सुरक्षित संदेश प्रमाणीकरण संहिता प्रदान करते हैं जब तक कि कुंजी का उपयोग एक बार किया जाता है। इसे प्रमाणीकरण के लिए वन-टाइम पैड के रूप में देखा जा सकता है।<ref name=":0">{{cite book |author-link=Gustavus Simmons |first=Gustavus |last=Simmons |chapter=Authentication theory/coding theory |title=क्रिप्टोलॉजी में अग्रिम: क्रिप्टो 84 की कार्यवाही|pages=411–431 |year=1985 |location=Berlin |publisher=Springer |isbn= }}</ref>
सरलतम ऐसे जोड़ीदार स्वतंत्र हैश फ़ंक्शन को यादृच्छिक कुंजी द्वारा परिभाषित किया गया है, {{nowrap|''key'' {{=}} (''a'', ''b'')}}, और संदेश m के लिए MAC टैग की गणना इस रूप में की जाती है {{nowrap|''tag'' {{=}} (''am'' + ''b'') mod ''p''}}, जहां पी प्रमुख है।
सरलतम ऐसे जोड़ीदार स्वतंत्र हैश फलन को यादृच्छिक कुंजी द्वारा परिभाषित किया गया है, {{nowrap|''key'' {{=}} (''a'', ''b'')}}, और संदेश m के लिए MAC उपनाम की गणना इस रूप में की जाती है {{nowrap|''tag'' {{=}} (''am'' + ''b'') mod ''p''}}, जहां p प्रमुख है।


अधिक आम तौर पर, के-स्वतंत्र हैशिंग | के-स्वतंत्र हैशिंग फ़ंक्शन एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं, जब तक कि के-तरीकों के स्वतंत्र हैशिंग कार्यों के लिए कुंजी का उपयोग के-बार से कम किया जाता है।
आमतौर पर, k-स्वतंत्र द्रुतान्वेषण फलन एक सुरक्षित संदेश प्रमाणीकरण संकेत प्रदान करते हैं, जब तक कि K-वे स्वतंत्र द्रुतान्वेषण कार्यों के लिए कुंजी का उपयोग के-बार से कम किया जाता है।


क्वांटम क्रिप्टोग्राफी के ढांचे में संदेश प्रमाणीकरण कोड और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य क्रिप्टोग्राफिक कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस के एक व्यापक वर्ग के लिए यह दिखाया गया है कि क्वांटम संसाधन बिना शर्त सुरक्षित एक बार शास्त्रीय एमएसीएस पर कोई लाभ नहीं देते हैं।<ref>{{Cite journal|last1=Nikolopoulos|first1=Georgios M.|last2=Fischlin|first2=Marc|date=2020|title=सूचना-सैद्धांतिक रूप से सुरक्षित डेटा उत्पत्ति प्रमाणीकरण क्वांटम और शास्त्रीय संसाधनों के साथ|journal=Cryptography|language=en|volume=4|issue=4|pages=31|doi=10.3390/cryptography4040031|arxiv=2011.06849|s2cid=226956062|doi-access=free}}</ref>
क्वांटम कूटलेखन के ढांचे में संदेश प्रमाणीकरण संकेत और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य कूटलेखन कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस के एक व्यापक वर्ग के लिए यह दिखाया गया है कि क्वांटम संसाधन बिना शर्त सुरक्षित एक बार शास्त्रीय एमएसीएस पर कोई लाभ नहीं देते हैं।<ref>{{Cite journal|last1=Nikolopoulos|first1=Georgios M.|last2=Fischlin|first2=Marc|date=2020|title=सूचना-सैद्धांतिक रूप से सुरक्षित डेटा उत्पत्ति प्रमाणीकरण क्वांटम और शास्त्रीय संसाधनों के साथ|journal=Cryptography|language=en|volume=4|issue=4|pages=31|doi=10.3390/cryptography4040031|arxiv=2011.06849|s2cid=226956062|doi-access=free}}</ref>




==मानक==
==मानक==
विभिन्न मानक मौजूद हैं जो मैक एल्गोरिदम को परिभाषित करते हैं। इसमे शामिल है:
विभिन्न मानक मौजूद हैं जो MAC एल्गोरिदम को परिभाषित करते हैं। इसमे शामिल है:
*FIPS पब 113 कंप्यूटर डेटा प्रमाणीकरण,<ref>{{Cite web |url=http://www.itl.nist.gov/fipspubs/fip113.htm |title=FIPS पब 113 ''कंप्यूटर डेटा प्रमाणीकरण''|access-date=2010-10-10 |archive-url=https://web.archive.org/web/20110927022556/http://www.itl.nist.gov/fipspubs/fip113.htm |archive-date=2011-09-27 |url-status=dead }}</ref> 2002 में वापस ले लिया,<ref>{{Cite web |url=http://www.itl.nist.gov/fipspubs/withdraw.htm |title=संघीय सूचना प्रसंस्करण मानक प्रकाशन, संख्या द्वारा सूचीबद्ध वापस लिए गए FIPS|access-date=2010-10-10 |archive-url=https://web.archive.org/web/20100801020458/http://www.itl.nist.gov/fipspubs/withdraw.htm |archive-date=2010-08-01 |url-status=dead }}</ref> डेटा एन्क्रिप्शन मानक के आधार पर एक एल्गोरिथ्म को परिभाषित करता है।
*FIPS पब 113 कंप्यूटर डेटा प्रमाणीकरण,<ref>{{Cite web |url=http://www.itl.nist.gov/fipspubs/fip113.htm |title=FIPS पब 113 ''कंप्यूटर डेटा प्रमाणीकरण''|access-date=2010-10-10 |archive-url=https://web.archive.org/web/20110927022556/http://www.itl.nist.gov/fipspubs/fip113.htm |archive-date=2011-09-27 |url-status=dead }}</ref> 2002 में वापस ले लिया,<ref>{{Cite web |url=http://www.itl.nist.gov/fipspubs/withdraw.htm |title=संघीय सूचना प्रसंस्करण मानक प्रकाशन, संख्या द्वारा सूचीबद्ध वापस लिए गए FIPS|access-date=2010-10-10 |archive-url=https://web.archive.org/web/20100801020458/http://www.itl.nist.gov/fipspubs/withdraw.htm |archive-date=2010-08-01 |url-status=dead }}</ref> डेटा प्रमाणीकरण मानक के आधार पर एक एल्गोरिथ्म को परिभाषित करता है।
*FIPS PUB 198-1 की-हैश संदेश प्रमाणीकरण कोड (HMAC)<ref>[http://csrc.nist.gov/publications/fips/fips198-1/FIPS-198-1_final.pdf ''The Keyed-Hash Message Authentication Code (HMAC)'']</ref>
*FIPS PUB 198-1 की-हैश संदेश प्रमाणीकरण संकेत (HMAC)<ref>[http://csrc.nist.gov/publications/fips/fips198-1/FIPS-198-1_final.pdf ''The Keyed-Hash Message Authentication Code (HMAC)'']</ref>
*NIST SP800-185 SHA-3 व्युत्पन्न कार्य: cSHAKE, KMAC, TupleHash, और ParallelHash <ref>https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-185.pdf {{Bare URL PDF|date=May 2022}}</ref>
*NIST SP800-185 SHA-3 व्युत्पन्न कार्य: cSHAKE, KMAC, TupleHash, और ParallelHash <ref>https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-185.pdf {{Bare URL PDF|date=May 2022}}</ref>
*ISO/IEC 9797-1 तंत्र एक ब्लॉक सिफर का उपयोग कर<ref>[https://www.iso.org/standard/50375.html ISO/IEC 9797-1 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 1: Mechanisms using a block cipher'']</ref>
* ISO/IEC 9797-1 तंत्र एक [[ब्लॉक सिफर|बंद संकेताक्षर]] का उपयोग कर<ref>[https://www.iso.org/standard/50375.html ISO/IEC 9797-1 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 1: Mechanisms using a block cipher'']</ref>
* समर्पित हैश-फ़ंक्शन का उपयोग करके मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-2 तंत्र<ref>[https://www.iso.org/standard/51618.html ISO/IEC 9797-2 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 2: Mechanisms using a dedicated hash-function'']</ref>
*समर्पित हैश-फलन का उपयोग करके मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-2 तंत्र<ref>[https://www.iso.org/standard/51618.html ISO/IEC 9797-2 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 2: Mechanisms using a dedicated hash-function'']</ref>
*मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-3 तंत्र एक सार्वभौमिक हैश-फ़ंक्शन का उपयोग कर<ref>[https://www.iso.org/standard/51619.html ISO/IEC 9797-3 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 3: Mechanisms using a universal hash-function'']</ref>
*मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-3 तंत्र एक सार्वभौमिक हैश-फलन का उपयोग कर<ref>[https://www.iso.org/standard/51619.html ISO/IEC 9797-3 ''Information technology — Security techniques — Message Authentication Codes (MACs) — Part 3: Mechanisms using a universal hash-function'']</ref>
*मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/आईईसी 29192-6 लाइटवेट क्रिप्टोग्राफी - संदेश प्रमाणीकरण कोड<ref>[https://www.iso.org/standard/71116.html ISO/IEC 29192-6 ''Information technology — Lightweight cryptography — Part 6: Message authentication codes (MACs)'']</ref>
*मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/आईईसी 29192-6 प्रभावहीन कूटलेखन - संदेश प्रमाणीकरण संकेत<ref>[https://www.iso.org/standard/71116.html ISO/IEC 29192-6 ''Information technology — Lightweight cryptography — Part 6: Message authentication codes (MACs)'']</ref>
ISO/IEC 9797-1 और -2 सामान्य मॉडल और एल्गोरिदम को परिभाषित करते हैं जिनका उपयोग किसी भी ब्लॉक सिफर या हैश फ़ंक्शन और विभिन्न प्रकार के विभिन्न मापदंडों के साथ किया जा सकता है। ये मॉडल और पैरामीटर मापदंडों को नामांकित करके अधिक विशिष्ट एल्गोरिदम को परिभाषित करने की अनुमति देते हैं। उदाहरण के लिए, FIPS PUB 113 एल्गोरिथम कार्यात्मक रूप से ISO/IEC 9797-1 MAC एल्गोरिथम 1 के समतुल्य है जिसमें पैडिंग विधि 1 और DES का एक ब्लॉक सिफर एल्गोरिथम है।
ISO/IEC 9797-1 और -2 सामान्य मॉडल और एल्गोरिदम को परिभाषित करते हैं जिनका उपयोग किसी भी बंद संकेतक्षर या हैश फलन और विभिन्न प्रकार के विभिन्न मापदंडों के साथ किया जा सकता है। ये प्रतिरूप और मापदंड को नामांकित करके अधिक विशिष्ट एल्गोरिदम को परिभाषित करने की अनुमति देते हैं। उदाहरण के लिए, FIPS PUB 113 एल्गोरिथम कार्यात्मक रूप से ISO/IEC 9797-1 MAC एल्गोरिथम 1 के समतुल्य है जिसमें प्रसेचन विधि 1 और DES का बंद संकेताक्षर एल्गोरिथम है ।                                                              MAC के उपयोग का एक उदहारण [[Image:MAC.svg|center]]


==मैक उपयोग का एक उदाहरण==
<ref><!--<ref group="SJVKJJLSGVHS">-->{{Citation|title=Mac® Security Bible|date=2011-11-01|pages=1–26|chapter=Mac Security Overview|publisher=Wiley Publishing, Inc.|doi=10.1002/9781118257739.ch1|isbn=9781118257739}}</ref> इस उदाहरण में, एक संदेश का प्रेषक MAC डेटा उपनाम बनाने के लिए इसे MAC एल्गोरिथम के माध्यम से चलाता है। संदेश और MAC उपनाम तब प्राप्तकर्ता को भेजे जाते हैं। प्राप्तकर्ता बदले में एक ही कुंजी का उपयोग करके उसी MAC एल्गोरिदम के माध्यम से प्रसारण के संदेश भाग को चलाता है, दूसरा MAC डेटा उपनाम तैयार करता है। प्राप्तकर्ता तब प्रसारण में प्राप्त पहले MAC उपनाम की तुलना दूसरे उत्पन्न MAC उपनाम से करता है। यदि वे समान हैं, तो प्राप्तकर्ता सुरक्षित रूप से मान सकता है कि प्रसारण (डेटा अखंडता) के दौरान संदेश को बदला या छेड़छाड़ नहीं किया गया था।
[[Image:MAC.svg|center]]


<ref><!--<ref group="SJVKJJLSGVHS">-->{{Citation|title=Mac® Security Bible|date=2011-11-01|pages=1–26|chapter=Mac Security Overview|publisher=Wiley Publishing, Inc.|doi=10.1002/9781118257739.ch1|isbn=9781118257739}}</ref> इस उदाहरण में, एक संदेश का प्रेषक मैक डेटा टैग बनाने के लिए इसे मैक एल्गोरिथम के माध्यम से चलाता है। संदेश और मैक टैग तब रिसीवर को भेजे जाते हैं। रिसीवर बदले में एक ही कुंजी का उपयोग करके उसी मैक एल्गोरिदम के माध्यम से ट्रांसमिशन के संदेश भाग को चलाता है, दूसरा मैक डेटा टैग तैयार करता है। रिसीवर तब ट्रांसमिशन में प्राप्त पहले मैक टैग की तुलना दूसरे उत्पन्न मैक टैग से करता है। यदि वे समान हैं, तो रिसीवर सुरक्षित रूप से मान सकता है कि ट्रांसमिशन (डेटा अखंडता) के दौरान संदेश को बदला या छेड़छाड़ नहीं किया गया था।
हालांकि, प्राप्तकर्ता को पुनर्पृदर्शन हमलों का पता लगाने में सक्षम होने की अनुमति देने के लिए, संदेश में डेटा होना चाहिए जो आश्वासन देता है कि यह वही संदेश केवल एक बार भेजा जा सकता है (उदाहरण के लिए समय मुहर, अनुक्रम संख्या या एक बार MAC का उपयोग)। अन्यथा एक हमलावर - इसकी सामग्री को समझे बिना - इस संदेश को रिकॉर्ड कर सकता है और बाद में इसे वापस चला सकता है, मूल प्रेषक के समान परिणाम उत्पन्न कर सकता है।
 
हालांकि, रिसीवर को रीप्ले हमलों का पता लगाने में सक्षम होने की अनुमति देने के लिए, संदेश में डेटा होना चाहिए जो आश्वासन देता है कि यह संदेश केवल एक बार भेजा जा सकता है (उदाहरण के लिए टाइम स्टैम्प, [[क्रिप्टोग्राफ़िक अस्थायी]] या #वन-टाइम_मैक|वन-टाइम का उपयोग) MAC)। अन्यथा एक हमलावर - इसकी सामग्री को समझे बिना - इस संदेश को रिकॉर्ड कर सकता है और बाद में इसे वापस चला सकता है, मूल प्रेषक के समान परिणाम उत्पन्न कर सकता है।


==यह भी देखें==
==यह भी देखें==
*चेकसम
*चेकसम
*सीएमएसी
* सीएमएसी
*HMAC (हैश-आधारित संदेश प्रमाणीकरण कोड)
*HMAC (हैश-आधारित संदेश प्रमाणीकरण कोड)
*संदेश प्रमाणक एल्गोरिथम
*संदेश प्रमाणक एल्गोरिथम

Revision as of 19:28, 29 December 2022

क्रिप्टोग्राफी में, एक संदेश प्रमाणीकरण कोड (मैक), जिसे कभी-कभी उपनाम के रूप में जाना जाता है, संदेश प्रमाणीकरण के लिए उपयोग की जाने वाली जानकारी का एक छोटा टुकड़ा है। दूसरे शब्दों में, यह पुष्टि करने के लिए कि संदेश निर्दिष्ट प्रेषक (इसकी प्रामाणिकता) से आया है और इसे बदला नहीं गया है। MAC मान संदेश सामग्री में किसी भी परिवर्तन का पता लगाने के लिए सत्यापनकर्ताओं (जिनके पास गुप्त कुंजी भी है) को अनुमति देकर संदेश की डेटा अखंडता, साथ ही इसके संदेश प्रमाणीकरण की सुरक्षा करता है।

शब्दावली

शब्द संदेश अखंडता कोड (MIC) को अक्सर 'MAC' शब्द के लिए प्रतिस्थापित किया जाता है, विशेष रूप से संचार में[1] मीडिया एक्सेस कंट्रोल एड्रेस (मैक एड्रेस) के रूप में बाद के उपयोग से इसे अलग करने के लिए। हालाँकि, कुछ लेखक[2] संदेश संग्रह को संदर्भित करने के लिए MIC का उपयोग करें, जिसका उद्देश्य केवल विशिष्ट रूप से लेकिन अपारदर्शी रूप से एकल संदेश की पहचान करना है। आरएफसी 4949 शब्द संदेश अखंडता कोड (एमआईसी) से बचने की सिफारिश करता है, और इसके बजाय चेकसम, त्रुटि पहचान कोड, हैश, कुंजी हैश, संदेश प्रमाणीकरण कोड या संरक्षित चेकसम का उपयोग करता है।

परिभाषाएँ

अनौपचारिक रूप से, एक संदेश प्रमाणीकरण कोड प्रणाली में तीन एल्गोरिदम होते हैं:

  • एक प्रमुख पीढ़ी एल्गोरिथ्म प्रमुख स्थान से यादृच्छिक रूप से समान रूप से एक कुंजी का चयन करता है।
  • एक हस्ताक्षर एल्गोरिथ्म कुंजी और संदेश दिए गए उपनाम को कुशलतापूर्वक लौटाता है।
  • एक सत्यापन एल्गोरिदम कुंजी और उपनाम दिए गए संदेश की प्रामाणिकता को कुशलतापूर्वक सत्यापित करता है। यही है, जब संदेश और उपनाम के साथ छेड़छाड़ या जाली नहीं किया जाता है, और अन्यथा वापस अस्वीकार कर दिया जाता है, तो वापसी स्वीकार कर ली जाती है।

एक सुरक्षित संदेश प्रमाणीकरण कोड को ज्ञात-या चुने-संदेश की शर्तों के तहत मनमाने ढंग से, चयन या सभी संदेशों के लिए जाली उपनाम के लिए एक विरोधी द्वारा प्रयासों का विरोध करना चाहिए। कुंजी के ज्ञान के बिना दिए गए संदेश के वैध उपनाम की गणना करने के लिए संगणनात्मक रूप से अक्षम होना चाहिए, भले ही सबसे खराब स्थिति के लिए, हम मानते हैं कि विरोधी किसी भी संदेश के उपनाम को जानता है लेकिन प्रश्न में एक है।[3] औपचारिक रूप से, एक संदेश प्रमाणीकरण कोड (मैक) प्रणाली कुशल का एक तिहाई है[4] एल्गोरिदम (जी, एस, वी) संतोषजनक:

  • जी (कुंजी-जनित्र) निविष्ट यूनरी अंक प्रणाली पर कुंजी के देता है। 1n, जहाँ n सुरक्षा मापदंड है।
  • एस (हस्ताक्षर) कुंजी के और निविष्ट श्रृंखला एक्स पर एक उपनाम टी निर्गत करता है।
  • वी (सत्यापन) निविष्ट पर स्वीकृत या अस्वीकृत निर्गत : कुंजी k, श्रृंखला x और उपनाम t।

S और V को निम्नलिखित को पूरा करना चाहिए:

पीआर [के ← जी (1एन), वी (के, एक्स, एस (के, एक्स)) = स्वीकृत] = 1।[5]

एक मैक अक्षम्य है अगर हर कुशल विरोधी के लिए

पीआर ['केजी(1एन), (एक्स, टी) ← एएस(के, ·)(1n), x ∉ क्वेरी (एएस(के, ·)</सुप>, 1n), वी (के, एक्स, टी) = स्वीकृत] < उपेक्षा (एन),

जहाँ एकS(k, · ) दर्शाता है कि A की ऑरेकल S(k, · ), और क्वेरी (A) तक पहुंच है।एस(के, ·)</सुप>, 1n) S पर A द्वारा किए गए प्रश्नों की स्थिति को दर्शाता है, जो n जानता है। स्पष्ट रूप से हमें आवश्यकता है कि कोई भी विरोधी सीधे श्रृंखला x को S पर क्वेरी नहीं कर सकता है, अन्यथा उस विरोधी द्वारा एक वैध उपनाम आसानी से प्राप्त किया जा सकता है।[6]


सुरक्षा

जबकि MAC फ़ंक्शन कूटलेखन हैश फ़ंक्शन के समान हैं, उनके पास अलग-अलग सुरक्षा आवश्यकताएं हैं। सुरक्षित माने जाने के लिए, एक MAC फ़ंक्शन को चुने हुए संदेश हमलों के तहत अस्तित्व संबंधी जालसाजी का विरोध करना चाहिए। इसका मतलब यह है कि भले ही एक हमलावर के पास एक ऑरेकल तक पहुंच हो, जिसके पास गुप्त कुंजी है और मैकर के लिए MAC उत्पन्न करता है, अन्य संदेशों के लिए MAC का अनुमान नहीं लगा सकता है (जो ऑरेकल को क्वेरी करने के लिए उपयोग नहीं किया गया था) संगणना की असंभव मात्रा का प्रदर्शन किए बिना।

एमएसीएस अंकीय हस्ताक्षर से भिन्न होते हैं क्योंकि MAC मूल्य एक ही गुप्त कुंजी का उपयोग करके उत्पन्न और सत्यापित दोनों होते हैं। इसका तात्पर्य यह है कि संदेश के प्रेषक और प्राप्तकर्ता को संचार शुरू करने से पहले एक ही कुंजी पर सहमत होना चाहिए, जैसा कि सममित कूटलेखन मामले में होता है। इसी कारण से, MAC विशेष रूप से नेटवर्क-व्यापी साझा गुप्त कुंजी के मामले में हस्ताक्षर द्वारा प्रस्तावित गैर-अस्वीकृति की संपत्ति प्रदान नहीं करते हैं: कोई भी उपयोगकर्ता जो MAC को सत्यापित कर सकता है, वह अन्य संदेशों के लिए MACs उत्पन्न करने में भी सक्षम है। इसके विपरीत, एक कुंजी जोड़ी की निजी कुंजी का उपयोग करके एक अंकीय हस्ताक्षर उत्पन्न किया जाता है, जो कि सार्वजनिक कुंजी कूटलेखन है।[4]चूंकि यह निजी कुंजी केवल उसके धारक के लिए सुलभ है, एक अंकीय हस्ताक्षर साबित करता है कि दस्तावेज़ पर उस धारक के अलावा किसी और ने हस्ताक्षर नहीं किए थे। इस प्रकार, अंकीय हस्ताक्षर गैर-अस्वीकृति प्रदान करते हैं।। हालांकि, गैर-अस्वीकार प्रणाली द्वारा प्रदान किया जा सकता है जो MAC कुंजी के लिए महत्वपूर्ण उपयोग जानकारी को सुरक्षित रूप से बांधता है; एक ही कुंजी दो लोगों के कब्जे में है, लेकिन एक के पास कुंजी की एक प्रति है जिसका उपयोग MAC पीढ़ी के लिए किया जा सकता है जबकि दूसरे के पास यंत्र सामाग्री रक्षा मॉड्यूल में कुंजी की एक प्रति है जो केवल MAC सत्यापन की अनुमति देती है। यह आमतौर पर वित्त उद्योग में किया जाता है।[citation needed]


कार्यान्वयन

MAC एल्गोरिदम को अन्य कूटलेखन आदिम से बनाया जा सकता है, जैसे कूटलेखन हैश फ़ंक्शंस (HMAC के मामले में) या बंद संकेताक्षर एल्गोरिदम (OMAC (कूटलेखन), CCM मोड, गैलोज़/काउंटर मोड और PMAC (कूटलेखन)) से। हालांकि यूएमएसी-वीएमएसी और पॉली1305-एईएस जैसे कई सबसे तेज मैक एल्गोरिदम सार्वभौमिक हैशिंग के आधार पर बनाए गए हैं।[7] आंतरिक रूप से बंद हैश एल्गोरिदम जैसे कि SipHash परिभाषा MAC द्वारा भी हैं; वे सार्वभौमिक-हैशिंग आधारित एमएसीएस से भी तेज हो सकते हैं।[8] इसके अतिरिक्त, MAC एल्गोरिथ्म जानबूझकर दो या दो से अधिक कूटलेखन आदिम को जोड़ सकता है, ताकि सुरक्षा को बनाए रखा जा सके, भले ही बाद में उनमें से एक को असुरक्षित पाया गया हो। उदाहरण के लिए, ट्रांसपोर्ट लेयर सिक्योरिटी (TLS) में, निविष्ट डेटा को हिस्सों में विभाजित किया जाता है, जिनमें से प्रत्येक को एक अलग हैशिंग आदिम (SHA-1 और SHA-2) के साथ संसाधित किया जाता है, फिर MAC को निर्गत करने के लिए एक साथ XORed किया जाता है।

एक बार का MAC

सार्वभौमिक द्रुतान्वेषण और विशेष रूप से जोड़ीदार स्वतंत्र हैश फलन एक सुरक्षित संदेश प्रमाणीकरण संहिता प्रदान करते हैं जब तक कि कुंजी का उपयोग एक बार किया जाता है। इसे प्रमाणीकरण के लिए वन-टाइम पैड के रूप में देखा जा सकता है।[9] सरलतम ऐसे जोड़ीदार स्वतंत्र हैश फलन को यादृच्छिक कुंजी द्वारा परिभाषित किया गया है, key = (a, b), और संदेश m के लिए MAC उपनाम की गणना इस रूप में की जाती है tag = (am + b) mod p, जहां p प्रमुख है।

आमतौर पर, k-स्वतंत्र द्रुतान्वेषण फलन एक सुरक्षित संदेश प्रमाणीकरण संकेत प्रदान करते हैं, जब तक कि K-वे स्वतंत्र द्रुतान्वेषण कार्यों के लिए कुंजी का उपयोग के-बार से कम किया जाता है।

क्वांटम कूटलेखन के ढांचे में संदेश प्रमाणीकरण संकेत और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य कूटलेखन कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस के एक व्यापक वर्ग के लिए यह दिखाया गया है कि क्वांटम संसाधन बिना शर्त सुरक्षित एक बार शास्त्रीय एमएसीएस पर कोई लाभ नहीं देते हैं।[10]


मानक

विभिन्न मानक मौजूद हैं जो MAC एल्गोरिदम को परिभाषित करते हैं। इसमे शामिल है:

  • FIPS पब 113 कंप्यूटर डेटा प्रमाणीकरण,[11] 2002 में वापस ले लिया,[12] डेटा प्रमाणीकरण मानक के आधार पर एक एल्गोरिथ्म को परिभाषित करता है।
  • FIPS PUB 198-1 की-हैश संदेश प्रमाणीकरण संकेत (HMAC)[13]
  • NIST SP800-185 SHA-3 व्युत्पन्न कार्य: cSHAKE, KMAC, TupleHash, और ParallelHash [14]
  • ISO/IEC 9797-1 तंत्र एक बंद संकेताक्षर का उपयोग कर[15]
  • समर्पित हैश-फलन का उपयोग करके मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-2 तंत्र[16]
  • मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/IEC 9797-3 तंत्र एक सार्वभौमिक हैश-फलन का उपयोग कर[17]
  • मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/आईईसी 29192-6 प्रभावहीन कूटलेखन - संदेश प्रमाणीकरण संकेत[18]

ISO/IEC 9797-1 और -2 सामान्य मॉडल और एल्गोरिदम को परिभाषित करते हैं जिनका उपयोग किसी भी बंद संकेतक्षर या हैश फलन और विभिन्न प्रकार के विभिन्न मापदंडों के साथ किया जा सकता है। ये प्रतिरूप और मापदंड को नामांकित करके अधिक विशिष्ट एल्गोरिदम को परिभाषित करने की अनुमति देते हैं। उदाहरण के लिए, FIPS PUB 113 एल्गोरिथम कार्यात्मक रूप से ISO/IEC 9797-1 MAC एल्गोरिथम 1 के समतुल्य है जिसमें प्रसेचन विधि 1 और DES का बंद संकेताक्षर एल्गोरिथम है । MAC के उपयोग का एक उदहारण

MAC.svg

[19] इस उदाहरण में, एक संदेश का प्रेषक MAC डेटा उपनाम बनाने के लिए इसे MAC एल्गोरिथम के माध्यम से चलाता है। संदेश और MAC उपनाम तब प्राप्तकर्ता को भेजे जाते हैं। प्राप्तकर्ता बदले में एक ही कुंजी का उपयोग करके उसी MAC एल्गोरिदम के माध्यम से प्रसारण के संदेश भाग को चलाता है, दूसरा MAC डेटा उपनाम तैयार करता है। प्राप्तकर्ता तब प्रसारण में प्राप्त पहले MAC उपनाम की तुलना दूसरे उत्पन्न MAC उपनाम से करता है। यदि वे समान हैं, तो प्राप्तकर्ता सुरक्षित रूप से मान सकता है कि प्रसारण (डेटा अखंडता) के दौरान संदेश को बदला या छेड़छाड़ नहीं किया गया था।

हालांकि, प्राप्तकर्ता को पुनर्पृदर्शन हमलों का पता लगाने में सक्षम होने की अनुमति देने के लिए, संदेश में डेटा होना चाहिए जो आश्वासन देता है कि यह वही संदेश केवल एक बार भेजा जा सकता है (उदाहरण के लिए समय मुहर, अनुक्रम संख्या या एक बार MAC का उपयोग)। अन्यथा एक हमलावर - इसकी सामग्री को समझे बिना - इस संदेश को रिकॉर्ड कर सकता है और बाद में इसे वापस चला सकता है, मूल प्रेषक के समान परिणाम उत्पन्न कर सकता है।

यह भी देखें

  • चेकसम
  • सीएमएसी
  • HMAC (हैश-आधारित संदेश प्रमाणीकरण कोड)
  • संदेश प्रमाणक एल्गोरिथम
  • एमएमएच-बेजर मैक
  • पाली1305
  • प्रमाणित एन्क्रिप्शन
  • यूएमएसी
  • वीएमएसी
  • सिपहैश
  • SHA-3#अतिरिक्त उदाहरण

टिप्पणियाँ

  1. IEEE 802.11: वायरलेस LAN मीडियम एक्सेस कंट्रोल (MAC) और फिजिकल लेयर (PHY) विनिर्देश (PDF). (2007 revision). IEEE-SA. 12 June 2007. doi:10.1109/IEEESTD.2007.373646. ISBN 978-0-7381-5656-9.
  2. Fred B Schneider, Hashes and Message Digests, Cornell University
  3. The strongest adversary is assumed to have access to the signing algorithm without knowing the key. However, her final forged message must be different from any message she chose to query the signing algorithm before. See Pass's discussions before def 134.2.
  4. 4.0 4.1 Theoretically, an efficient algorithm runs within probabilistic polynomial time.
  5. Pass, def 134.1
  6. Pass, def 134.2
  7. "वीएमएसी: यूनिवर्सल हैशिंग का उपयोग कर संदेश प्रमाणीकरण कोड". CFRG Working Group. Retrieved 16 March 2010.
  8. Jean-Philippe Aumasson & Daniel J. Bernstein (2012-09-18). "SipHash: एक तेज़ शॉर्ट-इनपुट PRF" (PDF).
  9. Simmons, Gustavus (1985). "Authentication theory/coding theory". क्रिप्टोलॉजी में अग्रिम: क्रिप्टो 84 की कार्यवाही. Berlin: Springer. pp. 411–431.
  10. Nikolopoulos, Georgios M.; Fischlin, Marc (2020). "सूचना-सैद्धांतिक रूप से सुरक्षित डेटा उत्पत्ति प्रमाणीकरण क्वांटम और शास्त्रीय संसाधनों के साथ". Cryptography (in English). 4 (4): 31. arXiv:2011.06849. doi:10.3390/cryptography4040031. S2CID 226956062.
  11. "FIPS पब 113 कंप्यूटर डेटा प्रमाणीकरण". Archived from the original on 2011-09-27. Retrieved 2010-10-10.
  12. "संघीय सूचना प्रसंस्करण मानक प्रकाशन, संख्या द्वारा सूचीबद्ध वापस लिए गए FIPS". Archived from the original on 2010-08-01. Retrieved 2010-10-10.
  13. The Keyed-Hash Message Authentication Code (HMAC)
  14. https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-185.pdf[bare URL PDF]
  15. ISO/IEC 9797-1 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 1: Mechanisms using a block cipher
  16. ISO/IEC 9797-2 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 2: Mechanisms using a dedicated hash-function
  17. ISO/IEC 9797-3 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 3: Mechanisms using a universal hash-function
  18. ISO/IEC 29192-6 Information technology — Lightweight cryptography — Part 6: Message authentication codes (MACs)
  19. "Mac Security Overview", Mac® Security Bible, Wiley Publishing, Inc., 2011-11-01, pp. 1–26, doi:10.1002/9781118257739.ch1, ISBN 9781118257739


संदर्भ

  • Goldreich, Oded (2001), Foundations of cryptography I: Basic Tools, Cambridge: Cambridge University Press, ISBN 978-0-511-54689-1
  • Goldreich, Oded (2004), Foundations of cryptography II: Basic Applications (1. publ. ed.), Cambridge [u.a.]: Cambridge Univ. Press, ISBN 978-0-521-83084-3
  • Pass, Rafael, A Course in Cryptography (PDF), retrieved 31 December 2015[1]


इस पेज में लापता आंतरिक लिंक की सूची

  • साझा रहस्य
  • गैर परित्याग
  • अंगुली का हस्ताक्षर
  • पीएमएसी (क्रिप्टोग्राफी)
  • सीसीएम मोड

बाहरी संबंध

  1. 11-12-20C8