हैश चेन: Difference between revisions
(Created page with "{{Multiple issues| {{More citations needed|date=February 2019}} {{Notability|date=December 2020}} }} एक हैश श्रृंखला डेटा के एक ट...") |
No edit summary |
||
Line 1: | Line 1: | ||
एक हैश श्रृंखला डेटा के एक टुकड़े के लिए एक [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन|क्रिप्टोग्राफ़िक हैश कार्य]] का क्रमिक अनुप्रयोग है। [[कंप्यूटर सुरक्षा]] में एक हैश श्रृंखला एक [[कुंजी (क्रिप्टोग्राफी)]] या [[पासवर्ड]] से कई [[एक बारी पासवर्ड]] बनाने की एक विधि है। गैर-अस्वीकृति के लिए डेटा के अस्तित्व के कालक्रम को अभिलेख करने के लिए एक हैश कार्य को क्रमिक रूप से डेटा के अतिरिक्त टुकड़ों पर प्रयुक्त किया जा सकता है। | |||
एक हैश श्रृंखला डेटा के एक टुकड़े के लिए एक [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन]] का क्रमिक अनुप्रयोग है। [[कंप्यूटर सुरक्षा]] में | |||
== परिभाषा == | == परिभाषा == | ||
एक हैश श्रृंखला क्रिप्टोग्राफ़िक हैश | एक हैश श्रृंखला एक क्रिप्टोग्राफ़िक हैश कार्य <math>h</math> का एक स्ट्रिंग <math>x</math> पर क्रमिक अनुप्रयोग है। | ||
उदाहरण के लिए, | उदाहरण के लिए, | ||
<math>h(h(h(h(x))))</math> | <math>h(h(h(h(x))))</math> लंबाई 4 की एक हैश श्रृंखला देता है, जिसे अधिकांशतः <math>h^{4}(x)</math> दर्शाया जाता है। | ||
लंबाई 4 की हैश श्रृंखला देता है, जिसे | == अनुप्रयोग == | ||
{{main article|एस/कुंजी}} | |||
== | लेस्ली लामपोर्ट<ref name="lamporthash">L. Lamport, “Password Authentication with Insecure Communication”, Communications of the ACM 24.11 (November 1981), pp 770-772. [https://doi.org/10.1145/358790.358797]</ref> ने असुरक्षित वातावरण में पासवर्ड सुरक्षा योजना के रूप में हैश चेन के उपयोग का सुझाव दिया। एक सर्वर जिसे प्रमाणीकरण प्रदान करने की आवश्यकता होती है वह एक सादे पाठ पासवर्ड के अतिरिक्त एक हैश श्रृंखला को संग्रहीत कर सकता है और सर्वर से ट्रांसमिशन या चोरी में पासवर्ड की चोरी को रोक सकता है। उदाहरण के लिए, एक सर्वर उपयोगकर्ता द्वारा प्रदान किए गए <math>h^{1000}(\mathrm{password})</math> को संग्रहित करके प्रारंभ होता है। जब उपयोगकर्ता प्रमाणित करना चाहता है, तो वे सर्वर को <math>h^{999}(\mathrm{password})</math> प्रदान करते हैं। सर्वर <math>h(h^{999}(\mathrm{password})) = h^{1000}(\mathrm{password})</math> की गणना करता है और सत्यापित करता है कि यह उस हैश श्रृंखला से मेल खाता है जिसे उसने संग्रहीत किया है। यह तब <math>h^{999}(\mathrm{password})</math> को अगली बार उपयोगकर्ता द्वारा प्रमाणित करने की इच्छा के लिए संग्रहीत करता है। | ||
{{ | |||
छिपकर | छिपकर बातें सुनने वाला <math>h^{999}(\mathrm{password})</math> को सूचित करता है, प्रमाणीकरण के लिए उसी हैश श्रृंखला को सर्वर पर फिर से प्रसारित करने में असमर्थ होगा क्योंकि सर्वर अब <math>h^{998}(\mathrm{password})</math> क्रिप्टोग्राफ़िक रूप से सुरक्षित हैश कार्य की एक तरफ़ा संपत्ति के कारण, हैश कार्य को विपरीत और हैश श्रृंखला के पहले के टुकड़े को प्राप्त करने के लिए ईव्सड्रॉपर के लिए यह संभव नहीं है। इस उदाहरण में, हैश श्रृंखला समाप्त होने से पहले उपयोगकर्ता 1000 बार प्रमाणित कर सकता है। हर बार हैश मान भिन्न होता है, और इस प्रकार हमलावर द्वारा डुप्लिकेट नहीं किया जा सकता है। | ||
== बाइनरी हैश चेन == | == बाइनरी हैश चेन == | ||
{{main article| | {{main article|मर्कल ट्री}} | ||
बाइनरी हैश चेन | बाइनरी हैश चेन सामान्यतः [[मर्कल ट्री]] के साथ मिलकर उपयोग की जाती हैं। एक बाइनरी हैश श्रृंखला इनपुट के रूप में दो हैश मान लेती है, उन्हें जोड़ती है और परिणाम के लिए एक हैश कार्य प्रयुक्त करती है जिससे तीसरा हैश मान उत्पन्न होता है। | ||
[[File:Hashtreehashchainjux.png|हैश ट्री और हैश चेन]]ऊपर दिए गए आरेख में एक हैश ट्री दिखाया गया है जिसमें आठ पत्ती के नोड और तीसरे पत्ते के नोड के लिए हैश श्रृंखला है। हैश | [[File:Hashtreehashchainjux.png|हैश ट्री और हैश चेन]]ऊपर दिए गए आरेख में एक हैश ट्री दिखाया गया है जिसमें आठ पत्ती के नोड और तीसरे पत्ते के नोड के लिए हैश श्रृंखला है। हैश मान के अतिरिक्त हैश चेन को पूरा करने के लिए कॉन्सटेनेशन का क्रम (दाएं या बाएं 1,0) या ऑर्डर बिट्स आवश्यक हैं। | ||
== विंटरनिट्ज़ चेन == | == विंटरनिट्ज़ चेन == | ||
{{vanchor| | {{vanchor|विंटरनिट्ज़ चेन|text=विंटरनिट्ज़ चेन}} (कार्य चेन के रूप में भी जाना जाता है{{sfn|Hülsing|2013b|pp=18-20}}) [[हैश-आधारित क्रिप्टोग्राफी]] में उपयोग किया जाता है। श्रृंखला द्वारा पैरामिट्रीकृत किया जाता है {{vanchor|विंटरनिट्ज़ पैरामीटर|text='''विंटरनिट्ज़ पैरामीटर'''}} w (अंक d में बिट्स की संख्या) और सुरक्षा पैरामीटर n (हैश मान में बिट्स की संख्या सामान्यतः सुरक्षा शक्ति को दोगुना करती है,{{sfn|Buchmann|Dahmen|Ereth|Hülsing|2011|p=2}} 256 या 512) श्रृंखला के होते हैं <math>2^w</math> वे मान जो एक-तरफ़ा कार्य के बार-बार उपयोग के परिणाम हैं | एक-तरफ़ा चेन कार्य F एक गुप्त कुंजी sk के लिए: <math>sk, F(sk), F(F(sk)), ..., F^{2^{w-1}}(sk)</math>. चेन कार्य सामान्यतः एक मानक [[क्रिप्टोग्राफिक हैश]] पर आधारित होता है, किंतु इसे पैरामीटरयुक्त (यादृच्छिक) करने की आवश्यकता होती है{{sfn|Hülsing|2013b}}) इसलिए इसमें अंतर्निहित हैश के कुछ आह्वान सम्मिलित हैं।<ref>{{IETF RFC|8391}}</ref> विंटरनिट्ज हस्ताक्षर योजना में एम-बिट संदेश के एक अंक को एन्कोड करने के लिए एक श्रृंखला का उपयोग किया जाता है इसलिए विंटरनिट्ज हस्ताक्षर लगभग उपयोग करता है <math>mn/w</math> बिट्स, इसकी गणना में लगभग लगता है <math>2^wm/w</math> कार्य एफ के आवेदन{{sfn|Buchmann|Dahmen|Ereth|Hülsing|2011|p=2}} ध्यान दें कि कुछ हस्ताक्षर मानक (जैसे [[विस्तारित मर्कल हस्ताक्षर योजना]], एक्सएमएसएस) डब्ल्यू को एक अंक में संभावित मानों की संख्या के रूप में परिभाषित करते हैं, इसलिए <math>w=16</math> XMSS में से मेल खाता है <math>w=4</math> मानकों में (जैसे [[लीटन-मिकाली हस्ताक्षर]], एलएमएस) जो उपरोक्त के समान ही ''w'' को परिभाषित करता है - अंक में कई बिट्स के रूप में है ।<ref>[https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-208.pdf NIST SP 800-208, Recommendation for Stateful Hash-Based Signature Schemes], p. 5</ref> | ||
== हैश चेन बनाम [[ ब्लॉकचैन ]] == | |||
एक हैश श्रृंखला एक ब्लॉकचेन के समान है क्योंकि वे दोनों दो नोड्स के बीच एक लिंक बनाने के लिए क्रिप्टोग्राफ़िक हैश कार्य का उपयोग करते हैं। चूँकि एक ब्लॉकचेन (जैसा कि [[ Bitcoin | बिटकॉइन]] और संबंधित प्रणाली द्वारा उपयोग किया जाता है) का उद्देश्य सामान्यतः एक सार्वजनिक खाता बही (डेटा) के आसपास वितरित समझौते का समर्थन करना है और डेटा और संबंधित डेटा अनुमतियों के इनकैप्सुलेशन के लिए नियमों का एक सेट सम्मिलित करता है। | |||
'''संबंधित प्रणाली द्वारा उपयोग किया जाता है) का उद्देश्य सामान्यतः एक सार्वजनिक खाता बही (डेटा) के आसपास वितरित समझौते का समर्थन करना है और डेटा और संबंधित डेटा अनुमतियों के इनकैप्सुले''' | |||
== यह भी देखें == | |||
== यह भी देखें == | |||
* चुनौती-प्रतिक्रिया प्रमाणीकरण | * चुनौती-प्रतिक्रिया प्रमाणीकरण | ||
* [[हैश सूची]] - हैश श्रृंखलाओं की पुनरावर्ती संरचना के विपरीत | * [[हैश सूची]] - हैश श्रृंखलाओं की पुनरावर्ती संरचना के विपरीत हैश सूची के तत्व एक दूसरे से स्वतंत्र होते हैं। | ||
* एक बारी पासवर्ड | * एक बारी पासवर्ड | ||
* [[चाबी खींचना]] | * [[चाबी खींचना]] |
Revision as of 10:09, 30 May 2023
एक हैश श्रृंखला डेटा के एक टुकड़े के लिए एक क्रिप्टोग्राफ़िक हैश कार्य का क्रमिक अनुप्रयोग है। कंप्यूटर सुरक्षा में एक हैश श्रृंखला एक कुंजी (क्रिप्टोग्राफी) या पासवर्ड से कई एक बारी पासवर्ड बनाने की एक विधि है। गैर-अस्वीकृति के लिए डेटा के अस्तित्व के कालक्रम को अभिलेख करने के लिए एक हैश कार्य को क्रमिक रूप से डेटा के अतिरिक्त टुकड़ों पर प्रयुक्त किया जा सकता है।
परिभाषा
एक हैश श्रृंखला एक क्रिप्टोग्राफ़िक हैश कार्य का एक स्ट्रिंग पर क्रमिक अनुप्रयोग है।
उदाहरण के लिए,
लंबाई 4 की एक हैश श्रृंखला देता है, जिसे अधिकांशतः दर्शाया जाता है।
अनुप्रयोग
लेस्ली लामपोर्ट[1] ने असुरक्षित वातावरण में पासवर्ड सुरक्षा योजना के रूप में हैश चेन के उपयोग का सुझाव दिया। एक सर्वर जिसे प्रमाणीकरण प्रदान करने की आवश्यकता होती है वह एक सादे पाठ पासवर्ड के अतिरिक्त एक हैश श्रृंखला को संग्रहीत कर सकता है और सर्वर से ट्रांसमिशन या चोरी में पासवर्ड की चोरी को रोक सकता है। उदाहरण के लिए, एक सर्वर उपयोगकर्ता द्वारा प्रदान किए गए को संग्रहित करके प्रारंभ होता है। जब उपयोगकर्ता प्रमाणित करना चाहता है, तो वे सर्वर को प्रदान करते हैं। सर्वर की गणना करता है और सत्यापित करता है कि यह उस हैश श्रृंखला से मेल खाता है जिसे उसने संग्रहीत किया है। यह तब को अगली बार उपयोगकर्ता द्वारा प्रमाणित करने की इच्छा के लिए संग्रहीत करता है।
छिपकर बातें सुनने वाला को सूचित करता है, प्रमाणीकरण के लिए उसी हैश श्रृंखला को सर्वर पर फिर से प्रसारित करने में असमर्थ होगा क्योंकि सर्वर अब क्रिप्टोग्राफ़िक रूप से सुरक्षित हैश कार्य की एक तरफ़ा संपत्ति के कारण, हैश कार्य को विपरीत और हैश श्रृंखला के पहले के टुकड़े को प्राप्त करने के लिए ईव्सड्रॉपर के लिए यह संभव नहीं है। इस उदाहरण में, हैश श्रृंखला समाप्त होने से पहले उपयोगकर्ता 1000 बार प्रमाणित कर सकता है। हर बार हैश मान भिन्न होता है, और इस प्रकार हमलावर द्वारा डुप्लिकेट नहीं किया जा सकता है।
बाइनरी हैश चेन
बाइनरी हैश चेन सामान्यतः मर्कल ट्री के साथ मिलकर उपयोग की जाती हैं। एक बाइनरी हैश श्रृंखला इनपुट के रूप में दो हैश मान लेती है, उन्हें जोड़ती है और परिणाम के लिए एक हैश कार्य प्रयुक्त करती है जिससे तीसरा हैश मान उत्पन्न होता है।
ऊपर दिए गए आरेख में एक हैश ट्री दिखाया गया है जिसमें आठ पत्ती के नोड और तीसरे पत्ते के नोड के लिए हैश श्रृंखला है। हैश मान के अतिरिक्त हैश चेन को पूरा करने के लिए कॉन्सटेनेशन का क्रम (दाएं या बाएं 1,0) या ऑर्डर बिट्स आवश्यक हैं।
विंटरनिट्ज़ चेन
विंटरनिट्ज़ चेन (कार्य चेन के रूप में भी जाना जाता है[2]) हैश-आधारित क्रिप्टोग्राफी में उपयोग किया जाता है। श्रृंखला द्वारा पैरामिट्रीकृत किया जाता है विंटरनिट्ज़ पैरामीटर w (अंक d में बिट्स की संख्या) और सुरक्षा पैरामीटर n (हैश मान में बिट्स की संख्या सामान्यतः सुरक्षा शक्ति को दोगुना करती है,[3] 256 या 512) श्रृंखला के होते हैं वे मान जो एक-तरफ़ा कार्य के बार-बार उपयोग के परिणाम हैं | एक-तरफ़ा चेन कार्य F एक गुप्त कुंजी sk के लिए: . चेन कार्य सामान्यतः एक मानक क्रिप्टोग्राफिक हैश पर आधारित होता है, किंतु इसे पैरामीटरयुक्त (यादृच्छिक) करने की आवश्यकता होती है[4]) इसलिए इसमें अंतर्निहित हैश के कुछ आह्वान सम्मिलित हैं।[5] विंटरनिट्ज हस्ताक्षर योजना में एम-बिट संदेश के एक अंक को एन्कोड करने के लिए एक श्रृंखला का उपयोग किया जाता है इसलिए विंटरनिट्ज हस्ताक्षर लगभग उपयोग करता है बिट्स, इसकी गणना में लगभग लगता है कार्य एफ के आवेदन[3] ध्यान दें कि कुछ हस्ताक्षर मानक (जैसे विस्तारित मर्कल हस्ताक्षर योजना, एक्सएमएसएस) डब्ल्यू को एक अंक में संभावित मानों की संख्या के रूप में परिभाषित करते हैं, इसलिए XMSS में से मेल खाता है मानकों में (जैसे लीटन-मिकाली हस्ताक्षर, एलएमएस) जो उपरोक्त के समान ही w को परिभाषित करता है - अंक में कई बिट्स के रूप में है ।[6]
हैश चेन बनाम ब्लॉकचैन
एक हैश श्रृंखला एक ब्लॉकचेन के समान है क्योंकि वे दोनों दो नोड्स के बीच एक लिंक बनाने के लिए क्रिप्टोग्राफ़िक हैश कार्य का उपयोग करते हैं। चूँकि एक ब्लॉकचेन (जैसा कि बिटकॉइन और संबंधित प्रणाली द्वारा उपयोग किया जाता है) का उद्देश्य सामान्यतः एक सार्वजनिक खाता बही (डेटा) के आसपास वितरित समझौते का समर्थन करना है और डेटा और संबंधित डेटा अनुमतियों के इनकैप्सुलेशन के लिए नियमों का एक सेट सम्मिलित करता है।
संबंधित प्रणाली द्वारा उपयोग किया जाता है) का उद्देश्य सामान्यतः एक सार्वजनिक खाता बही (डेटा) के आसपास वितरित समझौते का समर्थन करना है और डेटा और संबंधित डेटा अनुमतियों के इनकैप्सुले
यह भी देखें
- चुनौती-प्रतिक्रिया प्रमाणीकरण
- हैश सूची - हैश श्रृंखलाओं की पुनरावर्ती संरचना के विपरीत हैश सूची के तत्व एक दूसरे से स्वतंत्र होते हैं।
- एक बारी पासवर्ड
- चाबी खींचना
- लिंक्ड टाइमस्टैम्पिंग - लिंक्ड टाइमस्टैम्पिंग में बाइनरी हैश चेन एक प्रमुख घटक है।
- एक्स.509
संदर्भ
- ↑ L. Lamport, “Password Authentication with Insecure Communication”, Communications of the ACM 24.11 (November 1981), pp 770-772. [1]
- ↑ Hülsing 2013b, pp. 18–20.
- ↑ 3.0 3.1 Buchmann et al. 2011, p. 2.
- ↑ Hülsing 2013b.
- ↑ RFC 8391
- ↑ NIST SP 800-208, Recommendation for Stateful Hash-Based Signature Schemes, p. 5
स्रोत
- Buchmann, Johannes; Dahmen, Erik; Ereth, Sarah; Hülsing, Andreas; Rückert, Markus (2011). "On the Security of the Winternitz One-Time Signature Scheme" (PDF). कंप्यूटर विज्ञान के व्याख्यान नोट्स. Vol. 6737. Springer Berlin Heidelberg. pp. 363–378. doi:10.1007/978-3-642-21969-6_23. eISSN 1611-3349. ISBN 978-3-642-21968-9. ISSN 0302-9743.
- Hülsing, Andreas (2013b). प्रैक्टिकल फॉरवर्ड सुरक्षित हस्ताक्षर न्यूनतम सुरक्षा अनुमानों का उपयोग करते हुए (PDF) (PhD). TU Darmstadt.
- Hülsing, Andreas (2013a). "W-OTS+ – Shorter Signatures for Hash-Based Signature Schemes" (PDF). क्रिप्टोलॉजी में प्रगति - अफ्रीकाक्रिप्ट 2013. Lecture Notes in Computer Science. Vol. 7918. Springer Berlin Heidelberg. pp. 173–188. doi:10.1007/978-3-642-38553-7_10. eISSN 1611-3349. ISBN 978-3-642-38552-0. ISSN 0302-9743.
श्रेणी:क्रिप्टोग्राफ़िक एल्गोरिदम