संदेश प्रमाणीकरण कोड (मैसेज ऑथेंटिकेशन कोड): Difference between revisions
(→मानक) |
No edit summary |
||
(28 intermediate revisions by 4 users not shown) | |||
Line 4: | Line 4: | ||
==शब्दावली== | ==शब्दावली== | ||
शब्द संदेश अखंडता कोड (एमआईसी) को अक्सर 'मैक' शब्द के लिए प्रतिस्थापित किया जाता है, विशेष रूप से संचार <ref>{{cite book |publisher=[[IEEE-SA]] |title=IEEE 802.11: वायरलेस LAN मीडियम एक्सेस कंट्रोल (MAC) और फिजिकल लेयर (PHY) विनिर्देश|date=12 June 2007 |doi=10.1109/IEEESTD.2007.373646 |url=http://standards.ieee.org/getieee802/download/802.11-2007.pdf | version=(2007 revision)|isbn=978-0-7381-5656-9 }}</ref> में मीडिया एक्सेस कंट्रोल एड्रेस (मैक एड्रेस) के रूप में बाद के उपयोग से इसे अलग करने के लिए प्रयोग किया जाता है। हालाँकि, कुछ लेखक<ref>[http://www.cs.cornell.edu/courses/cs513/2005fa/NL20.hashing.html Fred B Schneider, Hashes and Message Digests, Cornell University]</ref> संदेश संग्रह को संदर्भित करने के लिए एमआईसी का उपयोग करें, जिसका उद्देश्य केवल विशिष्ट रूप से लेकिन | शब्द संदेश अखंडता कोड (एमआईसी) को अक्सर 'मैक' शब्द के लिए प्रतिस्थापित किया जाता है, विशेष रूप से संचार <ref>{{cite book |publisher=[[IEEE-SA]] |title=IEEE 802.11: वायरलेस LAN मीडियम एक्सेस कंट्रोल (MAC) और फिजिकल लेयर (PHY) विनिर्देश|date=12 June 2007 |doi=10.1109/IEEESTD.2007.373646 |url=http://standards.ieee.org/getieee802/download/802.11-2007.pdf | version=(2007 revision)|isbn=978-0-7381-5656-9 }}</ref> में [[क्रिप्टोग्राफी|मीडिया]] [[क्रिप्टोग्राफी|एक्सेस]] [[क्रिप्टोग्राफी|कंट्रोल]] [[क्रिप्टोग्राफी|एड्रेस]] (मैक एड्रेस) के रूप में बाद के उपयोग से इसे अलग करने के लिए प्रयोग किया जाता है। हालाँकि, कुछ लेखक<ref>[http://www.cs.cornell.edu/courses/cs513/2005fa/NL20.hashing.html Fred B Schneider, Hashes and Message Digests, Cornell University]</ref> संदेश संग्रह को संदर्भित करने के लिए एमआईसी का उपयोग करें, जिसका उद्देश्य केवल विशिष्ट रूप से लेकिन गैर-पारदर्शी रूप से एक संदेश की पहचान करना है। आरएफसी 4949 शब्द संदेश अखंडता कोड (एमआईसी) से बचने की सिफारिश करता है, और इसके बजाय [[क्रिप्टोग्राफी|चेकसम, त्रुटि पहचान कोड, हैश,]] कुंजी हैश, संदेश प्रमाणीकरण कोड या संरक्षित चेकसम का उपयोग करता है। | ||
==परिभाषाएँ== | ==परिभाषाएँ== | ||
अनौपचारिक रूप से, एक संदेश प्रमाणीकरण कोड प्रणाली में तीन एल्गोरिथ्म होते हैं: | अनौपचारिक रूप से, एक संदेश प्रमाणीकरण कोड प्रणाली में तीन एल्गोरिथ्म होते हैं: | ||
*एक प्रमुख पीढ़ी एल्गोरिथ्म यादृच्छिक रूप से समान रूप से प्रमुख स्थान एक कुंजी का चयन करता है। | *एक प्रमुख पीढ़ी एल्गोरिथ्म यादृच्छिक रूप से समान रूप से प्रमुख स्थान एक कुंजी का चयन करता है। | ||
*एक हस्ताक्षर एल्गोरिथ्म कुंजी और संदेश | *एक हस्ताक्षर एल्गोरिथ्म कुंजी और संदेश उपनाम को कुशलतापूर्वक लौटाता है। | ||
*एक सत्यापन एल्गोरिथ्म कुंजी और उपनाम दिए गए संदेश की प्रामाणिकता को | *एक सत्यापन एल्गोरिथ्म कुंजी और उपनाम दिए गए संदेश की प्रामाणिकता को कुशलतापूर्वक सत्यापित करता है। यानी, जब संदेश और उपनाम के साथ छेड़छाड़ या जाली नहीं किया गया है, और अन्यथा खारिज कर दिया गया है, तो वापसी स्वीकार की जाती है। | ||
एक सुरक्षित संदेश प्रमाणीकरण कोड को [[क्रिप्टोग्राफी|ज्ञात-या | एक सुरक्षित संदेश प्रमाणीकरण कोड को [[क्रिप्टोग्राफी|ज्ञात-या चयनित संदेश]] शर्तों के तहत [[क्रिप्टोग्राफी|मनमाना, चयनित या सभी संदेशों]] के लिए [[क्रिप्टोग्राफी|उपनाम]] बनाने के प्रयासों का विरोध करना चाहिए। कुंजी के ज्ञान के बिना किसी दिए गए संदेश के वैध उपनाम की गणना करने के लिए संगणनात्मक रूप से अक्षम होना चाहिए, भले ही सबसे खराब स्थिति के लिए, हम मानते हैं कि विरोधी किसी भी संदेश के उपनाम को जानता है लेकिन प्रश्न में एक है।<ref>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.</ref> | ||
औपचारिक रूप से, एक संदेश प्रमाणीकरण कोड (मैक) प्रणाली कुशल<ref name=":1">Theoretically, an efficient algorithm runs within probabilistic polynomial time.</ref> एल्गोरिथ्म (जी, एस, वी) | औपचारिक रूप से, एक संदेश प्रमाणीकरण कोड (मैक) प्रणाली कुशल<ref name=":1">Theoretically, an efficient algorithm runs within probabilistic polynomial time.</ref> एल्गोरिथ्म (जी, एस, वी) का एक तिहाई संतोषजनक है: | ||
*G (कुंजी-जनित्र) निविष्ट 1<sup>n</sup> पर कुंजी k देता है। जहाँ n सुरक्षा मापदंड है। | *G (कुंजी-जनित्र) निविष्ट 1<sup>n</sup> पर कुंजी k देता है। जहाँ n सुरक्षा मापदंड है। | ||
*S (हस्ताक्षर) कुंजी k और निविष्ट श्रृंखला x पर एक उपनाम t निर्गत करता है। | *S (हस्ताक्षर) कुंजी k और निविष्ट श्रृंखला x पर एक उपनाम t निर्गत करता है। | ||
Line 26: | Line 26: | ||
:Pr ['k'' ← G(1<sup>n</sup>), (x, t) ← , A<sup>S(k, · )</sup>(1<sup>n</sup>) x∉ प्रश्नचिह्न A<sup>S(k, · )</sup>(1<sup>n</sup>) V(k, x, t) = स्वीकृत] < उपेक्षा (n),'' | :Pr ['k'' ← G(1<sup>n</sup>), (x, t) ← , A<sup>S(k, · )</sup>(1<sup>n</sup>) x∉ प्रश्नचिह्न A<sup>S(k, · )</sup>(1<sup>n</sup>) V(k, x, t) = स्वीकृत] < उपेक्षा (n),'' | ||
जहाँ एक<sup>S(k, · )</sup> दर्शाता है कि A की भविष्यवाणी S(k, · ),तक पहुँच है, और प्रश्नचिह्न(A<sup>S(k,.)</sup>, (1<sup>n</sup>) A द्वारा S पर किए गए प्रश्नों की स्थिति को दर्शाता है, जो n जानता है। स्पष्ट रूप से हमे आवश्यकता है कि कोई भी विरोधी सीधे श्रृंखला x को S पर प्रश्नचिह्न नहीं कर सकता है, अन्यथा उस विरोधी द्वारा एक वैध उपनाम आसानी प्राप्त किया जा सकता है। | जहाँ एक<sup>S(k, · )</sup> दर्शाता है कि A की भविष्यवाणी S(k,·), तक पहुँच है, और प्रश्नचिह्न(A<sup>S(k,.)</sup>, (1<sup>n</sup>) A द्वारा S पर किए गए प्रश्नों की स्थिति को दर्शाता है, जो n जानता है। स्पष्ट रूप से हमे आवश्यकता है कि कोई भी विरोधी सीधे श्रृंखला x को S पर प्रश्नचिह्न नहीं कर सकता है, अन्यथा उस विरोधी द्वारा एक वैध उपनाम आसानी प्राप्त किया जा सकता है। | ||
<sup><ref>Pass, def 134.2</ref> | <sup><ref>Pass, def 134.2</ref> | ||
Line 33: | Line 33: | ||
==सुरक्षा == | ==सुरक्षा == | ||
जबकि मैक फंक्शन [[क्रिप्टोग्राफी|कूटलेखन]] [[क्रिप्टोग्राफी|हैश]] [[क्रिप्टोग्राफी|फंक्शन]] के समान हैं, | जबकि मैक फंक्शन [[क्रिप्टोग्राफी|कूटलेखन]] [[क्रिप्टोग्राफी|हैश]] [[क्रिप्टोग्राफी|फंक्शन]] के समान हैं, उनकी अलग-अलग सुरक्षा आवश्यकताएं हैं। सुरक्षित माने जाने के लिए, एक मैक फंक्शन को [[क्रिप्टोग्राफी|चुने हुए संदेश हमलों]] के तहत [[क्रिप्टोग्राफी|अस्तित्वात्मक]] [[क्रिप्टोग्राफी|जालसाजी]] का विरोध करना चाहिए। इसका मतलब यह है कि भले ही एक हमलावर के पास एक [[क्रिप्टोग्राफी|आकाशवाणी]] तक पहुंच हो, जिसमें गुप्त कुंजी हो और हमलावर के चयन के संदेशों के लिए मैक उत्पन्न करता हो,हमलावर अन्य संदेशों के लिए मैक का अनुमान नहीं लगा सकता है (जो आकाशवाणी को प्रश्न चिन्ह करने के लिए उपयोग नहीं किया गया था) बिना गणना की एक निश्चित राशि का प्रदर्शन करना। | ||
एमएसीएस [[क्रिप्टोग्राफी|अंकीय हस्ताक्षर]] से भिन्न होते हैं क्योंकि मैक मान एक ही गुप्त कुंजी का उपयोग करके उत्पन्न और सत्यापित दोनों होते हैं। इसका तात्पर्य यह है कि संदेश के प्रेषक और प्राप्तकर्ता को संचार शुरू करने से पहले एक ही कुंजी पर सहमत होना चाहिए, जैसा कि [[क्रिप्टोग्राफी|सममित कूटलेखन]] के मामले में होता है। इसी कारण से, मैक हस्ताक्षर द्वारा प्रदान की जाने वाली [[क्रिप्टोग्राफी|ग़ैर-अस्वीकृति]] संपत्ति प्रदान नहीं करते हैं, विशेष रूप से नेटवर्क-व्यापी [[क्रिप्टोग्राफी|साझा गुप्त]] कुंजियों मामलें में के प्रकरण में: कोई भी उपयोगकर्ता जो मैक को सत्यापित कर सकता है, अन्य संदेशों के लिए एमएसीएस भी उत्पन्न कर सकता है। इसके विपरीत, एक कुंजी जोड़ी की निजी कुंजी का उपयोग करके एक अंकीय हस्ताक्षर उत्पन्न किया जाता है, जो कि सार्वजनिक कुंजी कूटलेखन है।<ref name=":1" />चूंकि यह निजी कुंजी केवल उसके धारक के लिए सुलभ है, एक अंकीय हस्ताक्षर यह साबित करता है कि दस्तावेज़ पर धारक के अलावा किसी और ने हस्ताक्षर नहीं किए थे। इस प्रकार, अंकीय हस्ताक्षर गैर-अस्वीकृति प्रदान करते हैं। हालांकि, गैर-अस्वीकार प्रणाली द्वारा प्रदान किया जा सकता है जो महत्वपूर्ण उपयोग जानकारी को मैक कुंजियों से सुरक्षित रूप से बांधता है; दो लोगों के पास एक ही कुंजी है, लेकिन एक के पास कुंजी की एक प्रति है जिसका उपयोग मैक पीढ़ी के लिए किया जा सकता है जबकि दूसरे के पास [[क्रिप्टोग्राफी|हार्डवेयर सुरक्षा मापदंड]] में कुंजी की एक प्रति है जो केवल मैक सत्यापन की अनुमति देती है। यह आमतौर पर वित्त उद्योग में किया जाता है।{{citation needed|date=February 2013}} | |||
==कार्यान्वयन== | ==कार्यान्वयन== | ||
मैक एल्गोरिथ्म को अन्य कूटलेखन आदिम से बनाया जा सकता है, जैसे [[क्रिप्टोग्राफी|कूटलेखन]] [[क्रिप्टोग्राफी|हैश फंक्शन]] ([[क्रिप्टोग्राफी|एचएमएसी]] के मामले में) या [[ब्लॉक सिफर|बंद संकेताक्षर]] एल्गोरिथ्म ([[क्रिप्टोग्राफी|ओएमएसी]], [[क्रिप्टोग्राफी|सीसीएम]],[[क्रिप्टोग्राफी|जीसीएम]] और [[क्रिप्टोग्राफी|पीएमएसी]]) से। हालांकि [[यूएमएसी]]-[[वीएमएसी]] और पॉली1305-एईएस | मैक एल्गोरिथ्म को अन्य कूटलेखन आदिम से बनाया जा सकता है, जैसे [[क्रिप्टोग्राफी|कूटलेखन]] [[क्रिप्टोग्राफी|हैश फंक्शन]] ([[क्रिप्टोग्राफी|एचएमएसी]] के मामले में) या [[ब्लॉक सिफर|बंद संकेताक्षर]] एल्गोरिथ्म ([[क्रिप्टोग्राफी|ओएमएसी]], [[क्रिप्टोग्राफी|सीसीएम]],[[क्रिप्टोग्राफी|जीसीएम]] और [[क्रिप्टोग्राफी|पीएमएसी]]) से। हालांकि कई सबसे तेज मैक एल्गोरिथ्म जैसे [[यूएमएसी]]-[[वीएमएसी]] और पॉली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|सिपहैश]] को भी मैक द्वारा परिभाषित किया गया हैं; वे सार्वभौमिक-हैशिंग आधारित एमएसीएस से भी तेज हो सकते हैं।<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 49: | Line 49: | ||
}}</ref> | }}</ref> | ||
इसके अतिरिक्त, मैक एल्गोरिथ्म जानबूझकर दो या दो से अधिक कूटलेखन आदिम को जोड़ सकता है | इसके अतिरिक्त, मैक एल्गोरिथ्म जानबूझकर सुरक्षा बनाए रखने के लिए दो या दो से अधिक कूटलेखन आदिम को जोड़ सकता है, भले ही उनमें से एक बाद में असुरक्षित पाया गया हो। उदाहरण के लिए, [[क्रिप्टोग्राफी|ट्रांसपोर्ट]] [[क्रिप्टोग्राफी|लेयर]] [[क्रिप्टोग्राफी|सिक्योरिटी]] (टीएलएस) में, [[क्रिप्टोग्राफी|निविष्ट]] [[क्रिप्टोग्राफी|डेटा]] को हिस्सों में विभाजित किया जाता है, जिनमें से प्रत्येक को एक अलग हैशिंग आदिम ([[क्रिप्टोग्राफी|एसएचए-1]]और [[क्रिप्टोग्राफी|एसएचए-2]]) के साथ संसाधित किया जाता है, फिर मैक को निर्गत करने के लिए एक साथ [[क्रिप्टोग्राफी|एक्सओरेड]] किया जाता है। | ||
===एक बार का मैक=== | ===एक बार का मैक=== | ||
[[क्रिप्टोग्राफी|सार्वभौमिक]] [[क्रिप्टोग्राफी|हैशिंग]] और विशेष रूप से [[क्रिप्टोग्राफी|जोडी़दार]] [[क्रिप्टोग्राफी|स्वतंत्र]] हैश फंक्शन एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं जब तक कि कुंजी का उपयोग एक बार किया जाता है। इसे प्रमाणीकरण के लिए [[क्रिप्टोग्राफी|एकदा पैड]] के रूप में देखा जा सकता है।<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> | ||
इस तरह के सबसे सरल जोड़ीदार स्वतंत्र हैश फ़ंक्शन को यादृच्छिक कुंजी, कुंजी = (ए, बी) द्वारा परिभाषित किया गया है, और संदेश एम के लिए मैक उपनाम की गणना उपनाम = (एएम + बी) मॉड पी के रूप में की जाती है, जहां पी प्रमुख है। | |||
आमतौर, [[क्रिप्टोग्राफी| | अधिक आमतौर पर, [[क्रिप्टोग्राफी|के-स्वतंत्र]] [[क्रिप्टोग्राफी|हैशिंग]] फंक्शन एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं, जब तक कि के-वे स्वतंत्र हैशिंग कार्यों के लिए उपयोग की जाने वाली कुंजी के-बार से कम हो। | ||
क्वांटम कूटलेखन के ढांचे में संदेश प्रमाणीकरण कोड और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य कूटलेखन कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस | क्वांटम कूटलेखन के ढांचे में संदेश प्रमाणीकरण कोड और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य कूटलेखन कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस की एक विस्तृत श्रेणी के लिए यह दिखाया गया है कि क्वांटम संसाधन शास्त्रीय एमएसीएस पर कोई लाभ नहीं देते हैं, जब वे बिना शर्त सुरक्षित होते हैं।<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> | ||
==मानक== | ==मानक== | ||
विभिन्न मानक मौजूद हैं जो मैक एल्गोरिदम को परिभाषित करते हैं। | विभिन्न मानक मौजूद हैं जो मैक एल्गोरिदम को परिभाषित करते हैं। इसमें शामिल है: | ||
*FIPS PUB 113 | *FIPS PUB 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> [[क्रिप्टोग्राफी|DES]] पर आधारित एक एल्गोरिदम को परिभाषित करता है। | ||
*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> | ||
Line 72: | Line 72: | ||
*[[ब्लॉक सिफर|ISO]]/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> | *[[ब्लॉक सिफर|ISO]]/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> | ||
*[[ब्लॉक सिफर|ISO]]/IEC 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 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 सामान्य प्रतिरूप और | ISO/IEC 9797-1 और -2 सामान्य प्रतिरूप और एल्गोरिदम को परिभाषित करते हैं जिनका उपयोग किसी भी बंद संकेताक्षर या हैश-फंक्शन और विभिन्न प्रकार के विभिन्न मापदंडों के साथ किया जा सकता है। ये प्रतिरूप और मापदंड को अधिक विशिष्ट एल्गोरिदम को पैरामीटर नाम देकर परिभाषित करने की अनुमति देते हैं। उदाहरण के लिए, FIPS PUB 113 एल्गोरिदम कार्यात्मक रूप से ISO/IEC 9797-1 मैक एल्गोरिदम 1 के समतुल्य है जिसमें प्रसेचन विधि 1 और DES का बंद संकेताक्षर एल्गोरिदम है । | ||
मैक के उपयोग का एक उदहारण [[Image:MAC.svg|center]] | मैक के उपयोग का एक उदहारण [[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> इस उदाहरण में, एक संदेश का | <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> इस उदाहरण में, एक संदेश भेजने वाले का मैक डेटा उपनाम बनाने के लिए इसे मैक एल्गोरिदम के माध्यम से चलाता है। संदेश और मैक उपनाम तब प्राप्तकर्ता को भेजे जाते हैं। प्राप्तकर्ता बदले में एक ही कुंजी का उपयोग करके उसी मैक एल्गोरिदम के माध्यम से प्रसारण के संदेश भाग को चलाता है, एक और मैक डेटा उपनाम उत्पन्न करता है। प्राप्तकर्ता तब प्रसारण में प्राप्त पहले मैक उपनाम की तुलना दूसरे उत्पन्न मैक उपनाम से करता है। यदि वे समान हैं, तो प्राप्तकर्ता सुरक्षित रूप से यह मान सकता है कि प्रसारण ([[क्रिप्टोग्राफी|डेटा अखंडता]]) के दौरान संदेश को बदला या छेड़छाड़ नहीं किया गया था। | ||
हालांकि, प्राप्तकर्ता को | हालांकि, प्राप्तकर्ता को [[क्रिप्टोग्राफी|पुनर्प्रदर्शन]] [[क्रिप्टोग्राफी|हमलो]] का पता लगाने में सक्षम होने की अनुमति देने के लिए, संदेश में डेटा होना चाहिए जो आश्वासन देता है कि एक ही संदेश केवल एक बार भेजा जा सकता है (उदाहरण के लिए समय स्टाम्प, [[क्रिप्टोग्राफी|अनुक्रम]] [[क्रिप्टोग्राफी|संख्या]] या [[क्रिप्टोग्राफी|एकदा मैक]] उपयोग)। अन्यथा एक हमलावर - इसकी सामग्री को समझे बिना - इस संदेश को रिकॉर्ड कर सकता है और बाद में इसे वापस चला सकता है, मूल प्रेषक के समान परिणाम उत्पन्न कर सकता है। | ||
Line 120: | Line 120: | ||
*[http://web.mit.edu/6.857/OldStuff/Fall97/lectures/lecture3.pdf Ron Rivest lecture on MACs] | *[http://web.mit.edu/6.857/OldStuff/Fall97/lectures/lecture3.pdf Ron Rivest lecture on MACs] | ||
{{Authority control}} | {{Authority control}} | ||
<references /> | <references /> | ||
[[Category:All articles with bare URLs for citations]] | |||
[[Category:All articles with unsourced statements]] | |||
[[Category:Articles with PDF format bare URLs for citations]] | |||
[[Category:Articles with bare URLs for citations from May 2022]] | |||
[[Category:Articles with hatnote templates targeting a nonexistent page]] | |||
[[Category:Articles with invalid date parameter in template]] | |||
[[Category:Articles with unsourced statements from February 2013]] | |||
[[Category:CS1 English-language sources (en)]] | |||
[[Category:Collapse templates]] | |||
[[Category:Lua-based templates]] | |||
[[Category:Machine Translated Page]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists]] | |||
[[Category:Pages with script errors]] | |||
[[Category:Short description with empty Wikidata description]] | |||
[[Category:Templates Vigyan Ready]] | |||
[[Category:Templates that add a tracking category]] | |||
[[Category:Templates that generate short descriptions]] | |||
[[Category:Templates using TemplateData]] |
Latest revision as of 11:16, 23 February 2023
कूटलेखन में, एक संदेश प्रमाणीकरण कोड (मैक), जिसे कभी-कभी उपनाम के रूप में जाना जाता है, संदेश को प्रमाणित करने के लिए उपयोग की जाने वाली जानकारी का एक छोटा टुकड़ा है। दूसरे शब्दों में, यह पुष्टि करने के लिए कि संदेश निर्दिष्ट प्रेषक (इसकी प्रामाणिकता) से आया है और इसे बदला नहीं गया है। मैक मूल्य संदेश सामग्री में किसी भी परिवर्तन का पता लगाने के लिए सत्यापनकर्ताओं (जिनके पास गुप्त कुंजी भी है) को अनुमति देकर संदेश की डेटा अखंडता, साथ ही इसकी प्रमाणिकता की रक्षा करता है।
शब्दावली
शब्द संदेश अखंडता कोड (एमआईसी) को अक्सर 'मैक' शब्द के लिए प्रतिस्थापित किया जाता है, विशेष रूप से संचार [2] में मीडिया एक्सेस कंट्रोल एड्रेस (मैक एड्रेस) के रूप में बाद के उपयोग से इसे अलग करने के लिए प्रयोग किया जाता है। हालाँकि, कुछ लेखक[3] संदेश संग्रह को संदर्भित करने के लिए एमआईसी का उपयोग करें, जिसका उद्देश्य केवल विशिष्ट रूप से लेकिन गैर-पारदर्शी रूप से एक संदेश की पहचान करना है। आरएफसी 4949 शब्द संदेश अखंडता कोड (एमआईसी) से बचने की सिफारिश करता है, और इसके बजाय चेकसम, त्रुटि पहचान कोड, हैश, कुंजी हैश, संदेश प्रमाणीकरण कोड या संरक्षित चेकसम का उपयोग करता है।
परिभाषाएँ
अनौपचारिक रूप से, एक संदेश प्रमाणीकरण कोड प्रणाली में तीन एल्गोरिथ्म होते हैं:
- एक प्रमुख पीढ़ी एल्गोरिथ्म यादृच्छिक रूप से समान रूप से प्रमुख स्थान एक कुंजी का चयन करता है।
- एक हस्ताक्षर एल्गोरिथ्म कुंजी और संदेश उपनाम को कुशलतापूर्वक लौटाता है।
- एक सत्यापन एल्गोरिथ्म कुंजी और उपनाम दिए गए संदेश की प्रामाणिकता को कुशलतापूर्वक सत्यापित करता है। यानी, जब संदेश और उपनाम के साथ छेड़छाड़ या जाली नहीं किया गया है, और अन्यथा खारिज कर दिया गया है, तो वापसी स्वीकार की जाती है।
एक सुरक्षित संदेश प्रमाणीकरण कोड को ज्ञात-या चयनित संदेश शर्तों के तहत मनमाना, चयनित या सभी संदेशों के लिए उपनाम बनाने के प्रयासों का विरोध करना चाहिए। कुंजी के ज्ञान के बिना किसी दिए गए संदेश के वैध उपनाम की गणना करने के लिए संगणनात्मक रूप से अक्षम होना चाहिए, भले ही सबसे खराब स्थिति के लिए, हम मानते हैं कि विरोधी किसी भी संदेश के उपनाम को जानता है लेकिन प्रश्न में एक है।[4]
औपचारिक रूप से, एक संदेश प्रमाणीकरण कोड (मैक) प्रणाली कुशल[5] एल्गोरिथ्म (जी, एस, वी) का एक तिहाई संतोषजनक है:
- G (कुंजी-जनित्र) निविष्ट 1n पर कुंजी k देता है। जहाँ n सुरक्षा मापदंड है।
- S (हस्ताक्षर) कुंजी k और निविष्ट श्रृंखला x पर एक उपनाम t निर्गत करता है।
- V (सत्यापन) निविष्ट पर स्वीकृत या अस्वीकृत निर्गत: कुंजी k, श्रृंखला x और उपनाम t।
S और V को निम्नलिखित को संतुष्ट करना चाहिए:
- Pr [k ← G (1n), V ( k, x, S (k, x)) = स्वीकृत] = 1।[6]
प्रत्येक कुशल विरोधी A के लिए एक मैक अक्षम्य है
- Pr ['k ← G(1n), (x, t) ← , AS(k, · )(1n) x∉ प्रश्नचिह्न AS(k, · )(1n) V(k, x, t) = स्वीकृत] < उपेक्षा (n),
जहाँ एकS(k, · ) दर्शाता है कि A की भविष्यवाणी S(k,·), तक पहुँच है, और प्रश्नचिह्न(AS(k,.), (1n) A द्वारा S पर किए गए प्रश्नों की स्थिति को दर्शाता है, जो n जानता है। स्पष्ट रूप से हमे आवश्यकता है कि कोई भी विरोधी सीधे श्रृंखला x को S पर प्रश्नचिह्न नहीं कर सकता है, अन्यथा उस विरोधी द्वारा एक वैध उपनाम आसानी प्राप्त किया जा सकता है।
सुरक्षा
जबकि मैक फंक्शन कूटलेखन हैश फंक्शन के समान हैं, उनकी अलग-अलग सुरक्षा आवश्यकताएं हैं। सुरक्षित माने जाने के लिए, एक मैक फंक्शन को चुने हुए संदेश हमलों के तहत अस्तित्वात्मक जालसाजी का विरोध करना चाहिए। इसका मतलब यह है कि भले ही एक हमलावर के पास एक आकाशवाणी तक पहुंच हो, जिसमें गुप्त कुंजी हो और हमलावर के चयन के संदेशों के लिए मैक उत्पन्न करता हो,हमलावर अन्य संदेशों के लिए मैक का अनुमान नहीं लगा सकता है (जो आकाशवाणी को प्रश्न चिन्ह करने के लिए उपयोग नहीं किया गया था) बिना गणना की एक निश्चित राशि का प्रदर्शन करना।
एमएसीएस अंकीय हस्ताक्षर से भिन्न होते हैं क्योंकि मैक मान एक ही गुप्त कुंजी का उपयोग करके उत्पन्न और सत्यापित दोनों होते हैं। इसका तात्पर्य यह है कि संदेश के प्रेषक और प्राप्तकर्ता को संचार शुरू करने से पहले एक ही कुंजी पर सहमत होना चाहिए, जैसा कि सममित कूटलेखन के मामले में होता है। इसी कारण से, मैक हस्ताक्षर द्वारा प्रदान की जाने वाली ग़ैर-अस्वीकृति संपत्ति प्रदान नहीं करते हैं, विशेष रूप से नेटवर्क-व्यापी साझा गुप्त कुंजियों मामलें में के प्रकरण में: कोई भी उपयोगकर्ता जो मैक को सत्यापित कर सकता है, अन्य संदेशों के लिए एमएसीएस भी उत्पन्न कर सकता है। इसके विपरीत, एक कुंजी जोड़ी की निजी कुंजी का उपयोग करके एक अंकीय हस्ताक्षर उत्पन्न किया जाता है, जो कि सार्वजनिक कुंजी कूटलेखन है।[5]चूंकि यह निजी कुंजी केवल उसके धारक के लिए सुलभ है, एक अंकीय हस्ताक्षर यह साबित करता है कि दस्तावेज़ पर धारक के अलावा किसी और ने हस्ताक्षर नहीं किए थे। इस प्रकार, अंकीय हस्ताक्षर गैर-अस्वीकृति प्रदान करते हैं। हालांकि, गैर-अस्वीकार प्रणाली द्वारा प्रदान किया जा सकता है जो महत्वपूर्ण उपयोग जानकारी को मैक कुंजियों से सुरक्षित रूप से बांधता है; दो लोगों के पास एक ही कुंजी है, लेकिन एक के पास कुंजी की एक प्रति है जिसका उपयोग मैक पीढ़ी के लिए किया जा सकता है जबकि दूसरे के पास हार्डवेयर सुरक्षा मापदंड में कुंजी की एक प्रति है जो केवल मैक सत्यापन की अनुमति देती है। यह आमतौर पर वित्त उद्योग में किया जाता है।[citation needed]
कार्यान्वयन
मैक एल्गोरिथ्म को अन्य कूटलेखन आदिम से बनाया जा सकता है, जैसे कूटलेखन हैश फंक्शन (एचएमएसी के मामले में) या बंद संकेताक्षर एल्गोरिथ्म (ओएमएसी, सीसीएम,जीसीएम और पीएमएसी) से। हालांकि कई सबसे तेज मैक एल्गोरिथ्म जैसे यूएमएसी-वीएमएसी और पॉली1305-एईएस सार्वभौमिक हैशिंग पर आधारित हैं।[8]
आंतरिक रूप से बंद हैश एल्गोरिथ्म जैसे सिपहैश को भी मैक द्वारा परिभाषित किया गया हैं; वे सार्वभौमिक-हैशिंग आधारित एमएसीएस से भी तेज हो सकते हैं।[9]
इसके अतिरिक्त, मैक एल्गोरिथ्म जानबूझकर सुरक्षा बनाए रखने के लिए दो या दो से अधिक कूटलेखन आदिम को जोड़ सकता है, भले ही उनमें से एक बाद में असुरक्षित पाया गया हो। उदाहरण के लिए, ट्रांसपोर्ट लेयर सिक्योरिटी (टीएलएस) में, निविष्ट डेटा को हिस्सों में विभाजित किया जाता है, जिनमें से प्रत्येक को एक अलग हैशिंग आदिम (एसएचए-1और एसएचए-2) के साथ संसाधित किया जाता है, फिर मैक को निर्गत करने के लिए एक साथ एक्सओरेड किया जाता है।
एक बार का मैक
सार्वभौमिक हैशिंग और विशेष रूप से जोडी़दार स्वतंत्र हैश फंक्शन एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं जब तक कि कुंजी का उपयोग एक बार किया जाता है। इसे प्रमाणीकरण के लिए एकदा पैड के रूप में देखा जा सकता है।[10]
इस तरह के सबसे सरल जोड़ीदार स्वतंत्र हैश फ़ंक्शन को यादृच्छिक कुंजी, कुंजी = (ए, बी) द्वारा परिभाषित किया गया है, और संदेश एम के लिए मैक उपनाम की गणना उपनाम = (एएम + बी) मॉड पी के रूप में की जाती है, जहां पी प्रमुख है।
अधिक आमतौर पर, के-स्वतंत्र हैशिंग फंक्शन एक सुरक्षित संदेश प्रमाणीकरण कोड प्रदान करते हैं, जब तक कि के-वे स्वतंत्र हैशिंग कार्यों के लिए उपयोग की जाने वाली कुंजी के-बार से कम हो।
क्वांटम कूटलेखन के ढांचे में संदेश प्रमाणीकरण कोड और डेटा मूल प्रमाणीकरण पर भी चर्चा की गई है। अन्य कूटलेखन कार्यों के विपरीत, जैसे कुंजी वितरण, क्वांटम एमएसीएस की एक विस्तृत श्रेणी के लिए यह दिखाया गया है कि क्वांटम संसाधन शास्त्रीय एमएसीएस पर कोई लाभ नहीं देते हैं, जब वे बिना शर्त सुरक्षित होते हैं।[11]
मानक
विभिन्न मानक मौजूद हैं जो मैक एल्गोरिदम को परिभाषित करते हैं। इसमें शामिल है:
- FIPS PUB 113 परिकलक डेटा प्रमाणीकरण,[12] 2002 में वापस ले लिया गया,[13] DES पर आधारित एक एल्गोरिदम को परिभाषित करता है।
- FIPS PUB 198-1 कुंजी-हैश संदेश प्रमाणीकरण कोड (HMAC)[14]
- NIST SP800-185 SHA-3 व्युत्पन्न कार्य: cSHAKE, KMAC, TupleHash, और ParallelHash [15]
- ISO/IEC 9797-1 एक बंद संकेताक्षर का उपयोग करने वाली क्रियाविधि[16]
- ISO/IEC 9797-2 एक समर्पित हैश-फंक्शन का उपयोग करके वाली क्रियाविधि[17]
- ISO/IEC 9797-3 सार्वभौमिक हैश-फंक्शन का उपयोग करने वाली प्रणाली[18]
- ISO/IEC 29192-6 प्रभावहीन कूटलेखन - संदेश प्रमाणीकरण कोड[19]
ISO/IEC 9797-1 और -2 सामान्य प्रतिरूप और एल्गोरिदम को परिभाषित करते हैं जिनका उपयोग किसी भी बंद संकेताक्षर या हैश-फंक्शन और विभिन्न प्रकार के विभिन्न मापदंडों के साथ किया जा सकता है। ये प्रतिरूप और मापदंड को अधिक विशिष्ट एल्गोरिदम को पैरामीटर नाम देकर परिभाषित करने की अनुमति देते हैं। उदाहरण के लिए, FIPS PUB 113 एल्गोरिदम कार्यात्मक रूप से ISO/IEC 9797-1 मैक एल्गोरिदम 1 के समतुल्य है जिसमें प्रसेचन विधि 1 और DES का बंद संकेताक्षर एल्गोरिदम है ।
मैक के उपयोग का एक उदहारण
[20] इस उदाहरण में, एक संदेश भेजने वाले का मैक डेटा उपनाम बनाने के लिए इसे मैक एल्गोरिदम के माध्यम से चलाता है। संदेश और मैक उपनाम तब प्राप्तकर्ता को भेजे जाते हैं। प्राप्तकर्ता बदले में एक ही कुंजी का उपयोग करके उसी मैक एल्गोरिदम के माध्यम से प्रसारण के संदेश भाग को चलाता है, एक और मैक डेटा उपनाम उत्पन्न करता है। प्राप्तकर्ता तब प्रसारण में प्राप्त पहले मैक उपनाम की तुलना दूसरे उत्पन्न मैक उपनाम से करता है। यदि वे समान हैं, तो प्राप्तकर्ता सुरक्षित रूप से यह मान सकता है कि प्रसारण (डेटा अखंडता) के दौरान संदेश को बदला या छेड़छाड़ नहीं किया गया था।
हालांकि, प्राप्तकर्ता को पुनर्प्रदर्शन हमलो का पता लगाने में सक्षम होने की अनुमति देने के लिए, संदेश में डेटा होना चाहिए जो आश्वासन देता है कि एक ही संदेश केवल एक बार भेजा जा सकता है (उदाहरण के लिए समय स्टाम्प, अनुक्रम संख्या या एकदा मैक उपयोग)। अन्यथा एक हमलावर - इसकी सामग्री को समझे बिना - इस संदेश को रिकॉर्ड कर सकता है और बाद में इसे वापस चला सकता है, मूल प्रेषक के समान परिणाम उत्पन्न कर सकता है।
टिप्पणियाँ
- ↑ Italic text
- ↑ 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.
- ↑ Fred B Schneider, Hashes and Message Digests, Cornell University
- ↑ 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.
- ↑ 5.0 5.1 Theoretically, an efficient algorithm runs within probabilistic polynomial time.
- ↑ Pass, def 134.1
- ↑ Pass, def 134.2
- ↑ "वीएमएसी: यूनिवर्सल हैशिंग का उपयोग कर संदेश प्रमाणीकरण कोड". CFRG Working Group. Retrieved 16 March 2010.
- ↑ Jean-Philippe Aumasson & Daniel J. Bernstein (2012-09-18). "SipHash: एक तेज़ शॉर्ट-इनपुट PRF" (PDF).
- ↑ Simmons, Gustavus (1985). "Authentication theory/coding theory". क्रिप्टोलॉजी में अग्रिम: क्रिप्टो 84 की कार्यवाही. Berlin: Springer. pp. 411–431.
- ↑ Nikolopoulos, Georgios M.; Fischlin, Marc (2020). "सूचना-सैद्धांतिक रूप से सुरक्षित डेटा उत्पत्ति प्रमाणीकरण क्वांटम और शास्त्रीय संसाधनों के साथ". Cryptography (in English). 4 (4): 31. arXiv:2011.06849. doi:10.3390/cryptography4040031. S2CID 226956062.
- ↑ "FIPS पब 113 कंप्यूटर डेटा प्रमाणीकरण". Archived from the original on 2011-09-27. Retrieved 2010-10-10.
- ↑ "संघीय सूचना प्रसंस्करण मानक प्रकाशन, संख्या द्वारा सूचीबद्ध वापस लिए गए FIPS". Archived from the original on 2010-08-01. Retrieved 2010-10-10.
- ↑ The Keyed-Hash Message Authentication Code (HMAC)
- ↑ https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-185.pdf[bare URL PDF]
- ↑ ISO/IEC 9797-1 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 1: Mechanisms using a block cipher
- ↑ ISO/IEC 9797-2 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 2: Mechanisms using a dedicated hash-function
- ↑ ISO/IEC 9797-3 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 3: Mechanisms using a universal hash-function
- ↑ ISO/IEC 29192-6 Information technology — Lightweight cryptography — Part 6: Message authentication codes (MACs)
- ↑ "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]
बाहरी संबंध
- ↑ 11-12-20C8