MMH-Badger MAC
बैजर एक संदेश प्रमाणीकरण कोड (एम. ए. सी.) है जो सार्वभौमिक हैशिंग के विचार पर आधारित है और इसे बोसगार्ड, स्केवेनियस, पेडरसन, क्रिस्टेंसन और ज़नर द्वारा विकसित किया गया था। इसका निर्माण ई. एन. एच. (नीचे देखें) के अनुप्रयोग के बाद एक ε-सबसे प्रबल रूप से सार्वभौमिक (ए. एस. यू.) हैश फलन परिवार का उपयोग करके, जहाँ ε का मान है, α-सार्वभौमिक हैश परिवार एम. एम. एच. को मजबूत करके किया जाता है। चूँकि बैजर सार्वभौमिक हैश फ़ंक्शन दृष्टिकोण पर आधारित एक एम. ए. सी. फ़ंक्शन है, इसलिए बैजर की सुरक्षा के लिए आवश्यक शर्तें यू. एम. ए. सी. जैसे अन्य सार्वभौमिक हैश कार्यों के लिए समान हैं। परिचय बैजर मैक बिट्स तक की लंबाई के संदेश को संसाधित करता है और लंबाई बिट्स का एक प्रमाणीकरण टैग देता है, जहाँ। सुरक्षा आवश्यकताओं के अनुसार, उपयोगकर्ता बैजर में समानांतर हैश पेड़ों की संख्या का मूल्य चुन सकता है। कोई भी यू के बड़े मानों का चयन कर सकता है, लेकिन वे मान मैक की सुरक्षा को आगे प्रभावित नहीं करते हैं। एल्गोरिथ्म एक 128-बिट कुंजी का उपयोग करता है और इस कुंजी के तहत संसाधित किए जाने वाले सीमित संदेश की लंबाई है। किसी दिए गए कुंजी के तहत बैजर एल्गोरिदम को चलाने के लिए कुंजी सेटअप को प्रति कुंजी केवल एक बार चलाया जाना चाहिए, क्योंकि MAC की परिणामी आंतरिक स्थिति को किसी भी अन्य संदेश के साथ उपयोग करने के लिए सहेजा जा सकता है जिसे बाद में संसाधित किया जाएगा। नए हैश परिवारों को प्राप्त करने के लिए ई. एन. एच. हैश परिवारों को जोड़ा जा सकता है। ई-ए. यू., ई-ए. डी. यू. और ई-ए. एस. यू. परिवारों के लिए, बाद वाले पहले वाले में निहित हैं। उदाहरण के लिए, एक ए. डी. एम. यू परिवार भी एक ए. यू परिवार है, एक ए. एस. यू भी एक ए. डी. एम. यू परिवार है, और इसी तरह आगे। दूसरी ओर, एक मजबूत परिवार को कमजोर परिवार तक सीमित किया जा सकता है, जब तक कि एक प्रदर्शन लाभ तक पहुँचा जा सकता है। सार्वभौमिक हैश फलन के लिए  मुंद-सार्वभौमिक हैश फलन को कम करने की एक विधि का वर्णन निम्नलिखित में किया जाएगा। प्रमेय 2 मान लीजिए कि एक समुच्चय A से एक समुच्चय B तक एक ε-AδU हैश परिवार है। एक संदेश पर विचार करें। फिर कार्यों से युक्त परिवार एच ε-AU है। यदि, तो संभावना जो अधिकतम ε है, क्योंकि एक ε-A अनेदियू परिवार है। यदि लेकिन, तो संभावना मामूली रूप से 0 है। प्रमेय 2 के लिए प्रमाण ई. एन. एच.-परिवार में वर्णित किया गया था जिसका निर्माण सार्वभौमिक हैश परिवार एन. एच. (जिसका उपयोग यू. एम. ए. सी. में भी किया जाता है) के आधार पर किया गया हैः जहाँ "का अर्थ है 'जोड़ मॉड्यूलो', और। यह एक-ए. डी. एम. यू. हैश परिवार है। लेम्मा 1 एन. एच. का निम्नलिखित संस्करण है-ए. डि. यू.: डब्ल्यू = 32 का चयन करते हुए और प्रमेय 1 को लागू करते हुए, कोई भी-ए. यू. फलन परिवार ई. एन. एच. प्राप्त कर सकता है, जो बैजर एम. ए. सी. का मूल निर्माण खंड होगाः जहां सभी तर्क 32-बिट लंबे होते हैं और आउटपुट में 64-बिट होते हैं। निर्माण बैजर का निर्माण प्रबल सार्वभौमिकता हैश परिवार का उपयोग करके किया जाता है और इसे इस प्रकार वर्णित किया जा सकता है जहां एक-ए. यू. सार्वभौमिक कार्य परिवार एच * का उपयोग किसी भी आकार के संदेशों को एक निश्चित आकार पर हैश करने के लिए किया जाता है और एक-ए. एस. यू. कार्य परिवार एफ का उपयोग समग्र निर्माण की मजबूत सार्वभौमिकता की गारंटी के लिए किया जाता है। एनएच और ईएनएच का उपयोग एच * के निर्माण के लिए किया जाता है। फ़ंक्शन परिवार एच * का अधिकतम इनपुट आकार है और आउटपुट आकार 128 बिट्स है, जो संदेश और हैश के लिए 64 बिट्स में विभाजित है। एच *-फलन के लिए टकराव की संभावना से लेकर तक होती है। प्रबल रूप से सार्वभौमिक कार्य परिवार एफ का निर्माण करने के लिए, एक अन्य कुंजी जोड़कर α-सार्वभौमिक हैश परिवार एमएमएच * को एक प्रबल रूप से सार्वभौमिक हैश परिवार में बदल दिया जाता है। बैजर पर दो चरण प्रत्येक संदेश के लिए दो चरणों को निष्पादित करना होता हैः प्रसंस्करण चरण और चरण को अंतिम रूप देना। प्रसंस्करण चरण इस चरण में, डेटा को 64-बिट स्ट्रिंग में हैश किया जाता है। एक मुख्य कार्यः इस प्रसंस्करण चरण में उपयोग किया जाता है, जो एक 128-बिट स्ट्रिंग को 64-बिट स्ट्रिंग में निम्नानुसार हैशः किसी भी एन के लिए, का अर्थ है जोड़ मॉड्यूलो। एक-बिट स्ट्रिंग x को देखते हुए, इसका अर्थ है कम से कम महत्वपूर्ण n बिट्स, और इसका अर्थ है सबसे महत्वपूर्ण n बिट्स। इस कार्य का उपयोग करके एक संदेश को संसाधित किया जा सकता है। द्वारा चिह्नित करें। प्रसंस्करण चरण का छद्म कोड निम्नानुसार है। L = |M। यदि L = 0 अंतिम रूप देने के लिए r = L मॉड 64 पर जाएँ यदि r § 0: i = 1 से u के लिएः j = 1 से v′ के लिएः 64-बिट ब्लॉकों में विभाजित करें, यदि t सम हैः अन्यथा चरण को अंतिम रूप दें इस चरण में, प्रसंस्करण चरण से उत्पन्न 64-स्ट्रिंग वांछित MAC टैग में बदल जाती है। यह अंतिम चरण रैबिट स्ट्रीम सिफर का उपयोग करता है और अंतिम रूप देने वाली कुंजी को लेते हुए कुंजी सेटअप और IV सेटअप दोनों का उपयोग करता है। अंतिम चरण का छद्म-कोड खरगोशकीसेटअप (के) खरगोश आईवीसेटअप (एन) के लिए आई = 1 से यूः 27-बिट ब्लॉकों में विभाजित करें, एस = एस रैबिटनेक्स्टबिट (यू * 32) रिटर्न एस नोटेशन उपरोक्त छद्म कोड से, के खरगोश कुंजी सेटअप (के) में कुंजी को दर्शाता है जो खरगोश को 128-बिट कुंजी के साथ आरंभ करता है। एम हैश किए जाने वाले संदेश को दर्शाता है और |M। बिट्स में संदेश की लंबाई को दर्शाता है। एक संदेश एम को दर्शाता है जो आई ब्लॉक में विभाजित है। दिए गए-बिट स्ट्रिंग के लिए x तब और क्रमशः इसके सबसे कम महत्वपूर्ण n बिट्स और सबसे महत्वपूर्ण n बिट्स को दर्शाता है। प्रदर्शन बोसगार्ड, क्रिस्टेंसन और ज़ेननर 1 गीगाहर्ट्ज़ पेंटियम III और 1.7 गीगाहर्ट्ज़ पेंटियम 4 प्रोसेसर पर मापा गया बैजर के प्रदर्शन की रिपोर्ट करते हैं। गति-अनुकूलित संस्करणों को असेंबली भाषा में सी में क्रमबद्ध किया गया था और इंटेल सी + + 7.1 संकलक का उपयोग करके संकलित किया गया था। निम्नलिखित तालिका विभिन्न प्रतिबंधित संदेश लंबाई के लिए बैजर के गुणों को प्रस्तुत करती है। "मेमोरी रेक"। यह प्रमुख सामग्री और खरगोश धारा सिफर की आंतरिक स्थिति सहित आंतरिक स्थिति को संग्रहीत करने के लिए आवश्यक स्मृति की मात्रा को दर्शाता है। "सेटअप" कुंजी सेटअप को दर्शाता है, और "फिन"। IV-सेटअप के साथ अंतिम रूप देना दर्शाता है। एम. एम. एच. (मल्टीलीनियर मॉड्यूलर हैशिंग) एम. एम. एच. का अर्थ मल्टीलीनियर-मॉड्यूलर-हैशिंग है। मल्टीमीडिया में अनुप्रयोग उदाहरण के लिए एक ऑनलाइन मल्टीमीडिया शीर्षक की अखंडता को सत्यापित करने के लिए हैं। एमएमएच का प्रदर्शन आधुनिक माइक्रोप्रोसेसरों में पूर्णांक स्केलर उत्पादों के बेहतर समर्थन पर आधारित है। एमएमएच अपने सबसे बुनियादी संचालन के रूप में एकल परिशुद्धता स्केलर उत्पादों का उपयोग करता है। इसमें संदेश और एक प्रमुख मॉडुलो ए प्राइम के बीच एक (संशोधित) आंतरिक उत्पाद होता है। एमएमएच का निर्माण कुछ अभाज्य पूर्णांक के लिए परिमित क्षेत्र में काम करता है। एम. एम. एच. * एम. एम. एच. * में हैश कार्यों के एक परिवार का निर्माण शामिल है जिसमें कुछ सकारात्मक पूर्णांक के लिए बहुरेखीय कार्य शामिल हैं। से से कार्यों के परिवार एमएमएच * को निम्नानुसार परिभाषित किया गया है। जहाँ x, m वैक्टर हैं, और कार्यों को निम्नानुसार परिभाषित किया गया है। एम. ए. सी. के मामले में, एक संदेश है और एक कुंजी है जहाँ और। एमएमएच * को मैक की सुरक्षा आवश्यकताओं को पूरा करना चाहिए, जिससे एना और बॉब को प्रमाणित तरीके से संवाद करने में सक्षम होना चाहिए। उनके पास एक गुप्त चाबी है। मान लीजिए कि चार्ल्स एना और बॉब के बीच की बातचीत को सुनता है और संदेश को बॉब को अपने संदेश में बदलना चाहता है जो एना के संदेश के रूप में जाना चाहिए। इसलिए, उनका संदेश और एना का संदेश कम से कम एक बिट में अलग होगा (जैसे। )। मान लीजिए कि चार्ल्स को पता है कि कार्य रूप का है और वह एना के संदेश को जानता है लेकिन वह कुंजी x को नहीं जानता है तो चार्ल्स द्वारा संदेश को बदलने या अपना संदेश भेजने की संभावना को निम्नलिखित प्रमेय द्वारा समझाया जा सकता है। प्रमेय 1: परिवार एम. एम. एच. * सर्वव्यापी है। प्रमाणः लें, और दो अलग-अलग संदेश होने दें। सामान्यता को खोए बिना यह मान लीजिए। फिर किसी भी विकल्प के लिए, वहाँ है उपरोक्त प्रमेय की व्याख्या करने के लिए, अभाज्य के रूप में क्षेत्र का प्रतिनिधित्व करें। लेकिन, ऊपर दिए गए प्रमाण से, हमलावर की 1 दौर में टकराव की संभावना है, इसलिए औसत सत्यापन प्रश्न एक संदेश को स्वीकार करने के लिए पर्याप्त होंगे। टक्कर की संभावना को कम करने के लिए, बड़े पी को चुनना या स्वतंत्र कुंजियों का उपयोग करके ऐसे एम. ए. सी. को जोड़ना आवश्यक है ताकि टक्कर की संभावना] बन जाए। इस मामले में कुंजियों की संख्या में एक कारक की वृद्धि होती है और आउटपुट में भी वृद्धि होती है। एमएमएच * 32 हलेवी और क्राव्जिक नामक एक प्रकार का निर्माण करते हैं। निर्माण 32-बिट पूर्णांक और प्रमुख पूर्णांक के साथ काम करता है। वास्तव में अभाज्य p को किसी भी अभाज्य के रूप में चुना जा सकता है जो संतुष्ट करता है। यह विचार कार्टर और वेगमैन द्वारा प्राइम या का उपयोग करने के सुझाव से अपनाया गया है। इसे निम्नानुसार परिभाषित किया गया हैः जहां का अर्थ है (यानी, द्विआधारी प्रतिनिधित्व) कार्यों को निम्नानुसार परिभाषित किया गया है। जहाँ प्रमेय 1 के अनुसार, टकराव की संभावना लगभग है, और के परिवार को ε-लगभग  मुंद्रा सार्वभौमिक के रूप में परिभाषित किया जा सकता है। k का मान संदेश और प्रमुख वैक्टर की लंबाई का वर्णन करने वाले k के मान के कई प्रभाव होते हैंः चूंकि k पर महंगी मॉड्यूलर कमी गुणा की जाती है और k को बढ़ाने वाले संचालन को गति को कम करना चाहिए। चूँकि कुंजी x में k 32-बिट पूर्णांक होते हैं, इसलिए k को बढ़ाने से एक लंबी कुंजी प्राप्त होगी। प्रणाली को तोड़ने की संभावना है और इसलिए k को बढ़ाने से प्रणाली को तोड़ना कठिन हो जाता है। नीचे 1997 में एमएमएच के विभिन्न कार्यान्वयन के लिए समय के परिणाम दिए गए हैं, जिन्हें हलेवी और क्रावजिक द्वारा डिजाइन किया गया था। एक 150 मेगाहर्ट्ज पावरपीसी 604 आर. आई. एस. सी. मशीन ए. आई. एक्स. ए. 150 मेगाहर्ट्ज पेंटियम-प्रो मशीन चला रही है जो विंडोज एन. टी. ए. 200 मेगाहर्ट्ज पेंटियम-प्रो मशीन चला रही है जो लिनक्स चला रही है यू. एम. ए. सी. वी. एम. ए. सी. पॉली1305-ए. ई. एस. संदर्भ लेख भी देखें उदाहरण के लिए छद्म कोड संदेश प्रमाणीकरण कोड के साथ।