चाचा20-पॉली1305 (ChaCha20-Poly1305): Difference between revisions
No edit summary |
No edit summary |
||
(8 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Short description|Authenticated encryption with additional data algorithm}} | {{Short description|Authenticated encryption with additional data algorithm}} | ||
'''चाचा20-पॉली1305''' [[अतिरिक्त डेटा]] ([[AEAD]]) एल्गोरिदम के [[साथ प्रमाणित एन्क्रिप्शन]] है, जो [[चाचा20]] स्ट्रीम सिफर को [[पॉली1305]] संदेश अभिप्रमाणन | '''चाचा20-पॉली1305 (ChaCha20-Poly1305)''' [[अतिरिक्त डेटा]] ([[AEAD]]) एल्गोरिदम के [[साथ प्रमाणित एन्क्रिप्शन]] है, जो [[चाचा20|ChaCha20]] स्ट्रीम सिफर को [[पॉली1305]] संदेश अभिप्रमाणन कोड के साथ जोड़ता है। IETF प्रोटोकॉल में इसका उपयोग <nowiki>RFC 8439</nowiki> में मानकीकृत है।<ref name=":1">{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=June 2018|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=8439}}</ref> इसमें तीव्र सॉफ्टवेयर प्रदर्शन है, और हार्डवेयर त्वरण के बिना, आमतौर पर AES-GCM से तीव्रतर है।<ref name=":0">{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=June 2018|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=8439|appendix=B|sectionname=Performance Measurements of ChaCha20}}</ref> | ||
== इतिहास == | == इतिहास == | ||
निर्माण के दो मूलभूत अंग, एल्गोरिदम पॉली1305 और | निर्माण के दो मूलभूत अंग, एल्गोरिदम पॉली1305 और ChaCha20, दोनों स्वतंत्र रूप से 2005 और 2008 में, [[डैनियल जे बर्नस्टीन]] द्वारा रूपांकित किए गए थे |<ref name=":6">{{Cite conference |last=Bernstein |first=D. J. |date=January 2008 |title=ChaCha, a variant of Salsa20 |url=https://cr.yp.to/chacha/chacha-20080120.pdf |conference=The State of the Art of Stream Ciphers |volume=8 |pages=3–5}}</ref><ref>{{Citation |last=Bernstein |first=Daniel J. |title=The Poly1305-AES Message-Authentication Code |date=2005 |work=Fast Software Encryption |pages=32–49 |place=Berlin, Heidelberg |publisher=Springer Berlin Heidelberg |doi=10.1007/11502760_3 |isbn=978-3-540-26541-2|doi-access=free }}</ref> | ||
2013-2014 में, मूल | 2013-2014 में, मूल ChaCha20 एल्गोरिथ्म का एक प्रकार (वैरियंट) (32-बिट काउंटर और 96-बिट नॉन का उपयोग करके) और मूल पॉली1305 (2 शृंखलाओं को प्रमाणित करना) का एक प्रकार <ref>{{Cite IETF|last=Langley|first=Adam|date=September 2013|title=ChaCha20 and Poly1305 based Cipher Suites for TLS|draft=draft-agl-tls-chacha20poly1305-00}}</ref><ref>{{Cite IETF|last=Nir|first=Yoav|date=27 January 2014|title=ChaCha20 and Poly1305 for IETF protocols|draft=draft-nir-cfrg-chacha20-poly1305-00}}</ref> [[TLS]] और [[DTLS]] में उपयोग किए जाने वाले IETF प्रारूप में संयुक्त किया गया था,<ref>{{Cite IETF|last1=Langley|first1=Adam|last2=Chang|first2=Wan-Teh|last3=Mavrogiannopoulos|first3=Nikos|last4=Strombergson|first4=Joachim|last5=Josefsson|first5=Simon|date=24 January 2014|title=परिवहन परत सुरक्षा के लिए चाचा स्ट्रीम सिफर|draft=draft-mavrogiannopoulos-chacha-tls-01}}</ref> और [[Google|गूगल]] द्वारा सुरक्षा और प्रदर्शन कारणों से एक नए समर्थित सिफर के रूप में चुना गया है।<ref>{{Cite web|last=Bursztein|first=Elie|date=24 April 2014|title=Android पर Chrome के लिए HTTPS कनेक्शन की गति बढ़ाना और उसे मज़बूत करना|url=https://security.googleblog.com/2014/04/speeding-up-and-strengthening-https.html|url-status=live|access-date=2021-12-27|website=Google Online Security Blog|language=en|archive-url=https://web.archive.org/web/20160928013932/https://security.googleblog.com/2014/04/speeding-up-and-strengthening-https.html |archive-date=2016-09-28 }}</ref> TLS के लिए गूगल के स्वीकरण के तुरंत बाद, ChaCha20, पॉली1305 और संयुक्त AEAD मोड को chacha20-poly1305@openssh.com प्रमाणित एन्क्रिप्शन सिफर<ref name=":2">{{Cite web|last=Miller|first=Damien|title=Super User's BSD Cross Reference: /OpenBSD/usr.bin/ssh/PROTOCOL.chacha20poly1305|url=http://bxr.su/OpenBSD/usr.bin/ssh/PROTOCOL.chacha20poly1305|url-status=live|access-date=2021-12-28|website=bxr.su|archive-url=https://web.archive.org/web/20131213160907/http://bxr.su:80/OpenBSD/usr.bin/ssh/PROTOCOL.chacha20poly1305 |archive-date=2013-12-13 }}</ref><ref>{{Cite web|last=Miller|first=Damien|date=29 November 2013|title=ChaCha20 and Poly1305 in OpenSSH|url=http://blog.djm.net.au/2013/11/chacha20-and-poly1305-in-openssh.html|url-status=live|access-date=2021-12-28|language=en-GB|archive-url=https://web.archive.org/web/20131213215903/http://blog.djm.net.au:80/2013/11/chacha20-and-poly1305-in-openssh.html |archive-date=2013-12-13 }}</ref> के माध्यम से [[OpenSSH]] में जोड़ा गया, लेकिन ChaCha20 एल्गोरिथम के लिए मूल 64-बिट काउंटर और 64-बिट नॉन को रखा गया है। | ||
2015 में, AEAD एल्गोरिथ्म को <nowiki>RFC 7539</nowiki><ref>{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=May 2015|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=7539}}</ref> और <nowiki>RFC 7905</nowiki><ref name=":3">{{Cite IETF|last1=Langley|first1=Adam|last2=Chang|first2=Wan-Teh|last3=Mavrogiannopoulos|first3=Nikos|last4=Strombergson|first4=Joachim|last5=Josefsson|first5=Simon|date=June 2016|title=ChaCha20-Poly1305 Cipher Suites for Transport Layer Security (TLS)|rfc=7905}}</ref> में TLS 1.2 और DTLS 1.2 | 2015 में, AEAD एल्गोरिथ्म को <nowiki>RFC 7539</nowiki><ref>{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=May 2015|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=7539}}</ref> और <nowiki>RFC 7905</nowiki><ref name=":3">{{Cite IETF|last1=Langley|first1=Adam|last2=Chang|first2=Wan-Teh|last3=Mavrogiannopoulos|first3=Nikos|last4=Strombergson|first4=Joachim|last5=Josefsson|first5=Simon|date=June 2016|title=ChaCha20-Poly1305 Cipher Suites for Transport Layer Security (TLS)|rfc=7905}}</ref> में TLS 1.2 और DTLS 1.2 और <nowiki>RFC 7634</nowiki> में IPsec में उपयोग करने के लिए मानकीकृत किया गया है।<ref name=":4">{{Cite IETF|last=Nir|first=Yoav|date=August 2015|title=ChaCha20, Poly1305, and Their Use in the Internet Key Exchange Protocol (IKE) and IPsec|rfc=7634}}</ref> उसी वर्ष, यह क्लाउडफ्लेयर में एक वैकल्पिक सिफरसुइट के रूप में एकीकृत है।<ref>{{Cite web|date=2015-02-23|title=Do the ChaCha: better mobile performance with cryptography|url=http://blog.cloudflare.com/do-the-chacha-better-mobile-performance-with-cryptography/|access-date=2021-12-28|website=The Cloudflare Blog|language=en}}</ref> | ||
जून 2018 में, <nowiki>RFC 7539</nowiki> को अद्यतन किया गया और <nowiki>RFC 8439</nowiki> द्वारा प्रतिस्थापित किया गया था।<ref>{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=June 2018|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=8439}}</ref> | जून 2018 में, <nowiki>RFC 7539</nowiki> को अद्यतन किया गया और <nowiki>RFC 8439</nowiki> द्वारा प्रतिस्थापित किया गया था।<ref>{{Cite IETF|last1=Nir|first1=Yoav|last2=Langley|first2=Adam|date=June 2018|title=ChaCha20 and Poly1305 for IETF Protocols|rfc=8439}}</ref> | ||
Line 16: | Line 16: | ||
== विवरण == | == विवरण == | ||
RFC 8439 में वर्णित ChaCha20-पॉली1305 <ref name=":1" /> एल्गोरिथ्म 128-बिट (अंकितक आकार) के सिफरटेक्स्ट विस्तार के साथ एक सादे पाठ (प्लेनटेक्स्ट) को एन्क्रिप्ट करने के लिए इनपुट के रूप में 256-बिट मुख्य और 96-बिट [[अस्थायी]] रूप से लेता है। ChaCha20-पॉली1305 निर्माण में, ChaCha20 का उपयोग काउंटर मोड में एक प्रमुख प्रवाह को प्राप्त करने के लिए किया जाता है जो सादे पाठ के साथ [[XORed]] है। सिफरटेक्स्ट और संबंधित डेटा को तब पॉली1305 के एक प्रकार का उपयोग करके प्रमाणित किया जाता है जो पहले दो श्रृंखलाओं को एक में कोडन करता है। | |||
[[File:ChaCha20-Poly1305 Encryption.svg|बॉर्डर|सेंटर|फ्रेमलेस|550x550पीएक्स|चाचा20-पॉली1305 एन्क्रिप्शन]] | [[File:ChaCha20-Poly1305 Encryption.svg|बॉर्डर|सेंटर|फ्रेमलेस|550x550पीएक्स|चाचा20-पॉली1305 एन्क्रिप्शन]] | ||
== वेरिएंट == | == वेरिएंट == | ||
=== | === XChaCha20-पॉली1305 - विस्तारित गैर संस्करण === | ||
Xचाचा20-पॉली1305 निर्माण चाचा20-पॉली1305 निर्माण का एक विस्तारित 192-बिट | [[Xचाचा20|XChaCha20]]-पॉली1305 निर्माण तथा [[चाचा20|ChaCha20]]-पॉली1305 निर्माण का एक विस्तारित 192-बिट गैर संस्करण है, जिसमें ChaCha20 के बजाय XChaCha20 का उपयोग कर रहा है। यादृच्छिक अस्थायी रूप से चुनते समय, XChaCha20-पॉली1305 निर्माण मूल निर्माण की तुलना में बेहतर सुरक्षा की अनुमति देता है। निर्माण के मानकीकरण का प्रारूप प्रयास जुलाई 2020 में समाप्त हो गया था।<ref>{{Cite IETF|last=Arciszewski|first=Scott|date=10 January 2020|title=XChaCha: eXtended-nonce ChaCha and AEAD_XChaCha20_Poly1305|draft=draft-irtf-cfrg-xchacha}}</ref> | ||
=== साल्सा20-पॉली1305 और एक्ससालसा20-पॉली1305 === | === साल्सा20-पॉली1305 और एक्ससालसा20-पॉली1305 === | ||
[[Salsa20]]-पॉली1305 और | [[Salsa20|साल्सा20]]-पॉली1305 और एक्ससालसा20-पॉली1305 ChaCha20-पॉली1305 और [[Xचाचा20-पॉली1305|XChaCha20-पॉली1305]] एल्गोरिद्म के वेरिएंट हैं, जिसमें ChaCha20 और XChaCha20 के स्थान पर [[साल्सा20]] और [[एक्ससालसा20]] का उपयोग किया गया है। वे [[NaCl (सॉफ्टवेयर)|NaCl]]<ref>{{Cite web|title=NaCl: Networking and Cryptography library - Secret-key authenticated encryption|url=https://nacl.cr.yp.to/secretbox.html|url-status=live|archive-url=https://web.archive.org/web/20090630084736/http://nacl.cr.yp.to:80/secretbox.html |archive-date=2009-06-30 }}</ref> और लिबसोडियम<ref>{{Cite web|title=libsodium - प्रमाणित एन्क्रिप्शन|url=https://doc.libsodium.org/secret-key_cryptography/secretbox|url-status=live|archive-url=https://web.archive.org/web/20200804110531/https://doc.libsodium.org/secret-key_cryptography/secretbox |archive-date=2020-08-04 }}</ref> में लागू होते हैं लेकिन मानकीकृत नहीं होते हैं। अभ्यास में चाचा का उपयोग करने वाले वेरिएंट को प्राथमिकता दी जाती है क्योंकि वे सालसा की तुलना में प्रति चक्कर (राउंड) बेहतर विसरण प्रदान करते हैं।<ref name=":6" /> | ||
== प्रयोग == | == प्रयोग == | ||
ChaCha20-पॉली1305 का उपयोग<ref name=":0" />[[एसएसएच|IPsec]],<ref name=":1" />[[SSH]], [[TLS 1.2]], [[DTLS 1.2]], [[TLS 1.3]],<ref name=":3" /><ref name=":1">{{Cite IETF|last1=Thomson|first1=Martin|last2=Turner|first0=Sean|date=May 2021|title=क्विक को सुरक्षित करने के लिए टीएलएस का उपयोग करना|rfc=9001}}</ref> [[वायरगार्ड]],<ref>{{Cite web|last=Donenfeld|first=Jason A.|title=प्रोटोकॉल और क्रिप्टोग्राफी - वायरगार्ड|url=https://www.wireguard.com/protocol/|access-date=2021-12-28|website=www.wireguard.com|language=en}}</ref> [[S/MIME 4.0]],<ref>{{Cite IETF|last=Housley|first=Russ|date=February 2017|title=Using ChaCha20-Poly1305 Authenticated Encryption in the Cryptographic Message Syntax (CMS)|rfc=8103}}</ref>[[OTR]]<nowiki/>v4<ref>{{Citation|title=OTRv4|date=2021-12-25|url=https://github.com/otrv4/otrv4/blob/12cc3018577901e27715680ec9cb94b2562438b9/otrv4.md|publisher=OTRv4|access-date=2021-12-28}}</ref> और कई अन्य प्रोटोकॉल में किया जाता है। इसका उपयोग सॉफ्टवेयर जैसे .0 में मानक डेटा एन्क्रिप्शन के रूप में किया जाता है।<ref>{{Citation|title=borg rcreate|date=2022-08-03|url=https://borgbackup.readthedocs.io/en/2.0.0b4/usage/rcreate.html#choosing-an-encryption-mode|publisher=borgbackup|access-date=2023-01-28}}</ref> दूसरों के बीच, इसे [[ओपनएसएसएल|OpenSSL]] और [[लिबसोडियम]] में लागू किया गया है। | |||
== प्रदर्शन == | == प्रदर्शन == | ||
ChaCha20-पॉली1305 आमतौर पर प्रणाली पर अधिक प्रचलित [[AES-GCM]] एल्गोरिदम की तुलना में बेहतर प्रदर्शन प्रदान करता है जहां CPU(s) [[AES-NI निर्देश सेट]] विस्तार की सुविधा नहीं देता है।<ref name=":0" /> परिणामस्वरूप, ChaCha20-पॉली1305 को कभी-कभी AES-GCM पर सुरक्षा के समान स्तर के कारण और [[मोबाइल उपकरणों]] से जुड़ी कुछ उपयोग स्थितियों में पसंद किया जाता है, जो ज्यादातर [[एआरएम वास्तुकला|ARM आधारित]] CPUs का उपयोग करते हैं। | |||
== सुरक्षा == | == सुरक्षा == | ||
ChaCha20-पॉली1305 निर्माण एकल और बहु-उपयोगकर्ता सेटिंग के लिए [[मानक मॉडल (क्रिप्टोग्राफी)|मानक मॉडल]] और [[आदर्श क्रमचय मॉडल]] में सुरक्षित सिद्ध हुआ है।<ref>{{Citation |last=Degabriele |first=Jean Paul |title=The Security of ChaCha20-Poly1305 in the Multi-User Setting |date=2021-11-12 |url=https://doi.org/10.1145/3460120.3484814 |work=Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security |pages=1981–2003 |place=New York, NY, USA |publisher=Association for Computing Machinery |doi=10.1145/3460120.3484814 |isbn=978-1-4503-8454-4 |access-date=2021-12-27 |last2=Govinden |first2=Jérôme |last3=Günther |first3=Felix |last4=Paterson |first4=Kenneth G.}}</ref> हालाँकि, [[GCM]] के समान, सुरक्षा एन्क्रिप्टेड प्रत्येक संदेश के लिए एक अद्वितीय अस्थायी रूप से चुनने पर निर्भर करती है। AES-GCM की तुलना में, ChaCha20-पॉली1305 के क्रियान्वयन समय के आक्षेप के प्रति कम असुरक्षित है। | |||
== यह भी देखें == | == यह भी देखें == | ||
* प्रमाणित एन्क्रिप्शन | * [[प्रमाणित एन्क्रिप्शनगाल्वा / काउंटर मोडसालसा20पॉली1305|प्रमाणित एन्क्रिप्शन]] | ||
* गाल्वा / काउंटर मोड | * [[प्रमाणित एन्क्रिप्शनगाल्वा / काउंटर मोडसालसा20पॉली1305|गाल्वा / काउंटर मोड]] | ||
*सालसा20 | *[[प्रमाणित एन्क्रिप्शनगाल्वा / काउंटर मोडसालसा20पॉली1305|सालसा20]] | ||
*पॉली1305 | *[[प्रमाणित एन्क्रिप्शनगाल्वा / काउंटर मोडसालसा20पॉली1305|पॉली1305]] | ||
== बाहरी संबंध == | == बाहरी संबंध == | ||
* [https://datatracker.ietf.org/doc/html/rfc8439 RFC 8439]: | * [https://datatracker.ietf.org/doc/html/rfc8439 RFC 8439]: ChaCha20 and पॉली1305 for IETF Protocols | ||
*[https://datatracker.ietf.org/doc/html/rfc7634 RFC 7634]: | *[https://datatracker.ietf.org/doc/html/rfc7634 RFC 7634]: ChaCha20, पॉली1305, and Their Use in the Internet Key Exchange Protocol (IKE) and IPsec | ||
*[https://datatracker.ietf.org/doc/html/rfc7905 RFC 7905]: | *[https://datatracker.ietf.org/doc/html/rfc7905 RFC 7905]: ChaCha20-पॉली1305 Cipher Suites for Transport Layer Security (TLS) | ||
*[https://datatracker.ietf.org/doc/html/rfc8103 RFC 8103]: Using | *[https://datatracker.ietf.org/doc/html/rfc8103 RFC 8103]: Using ChaCha20-पॉली1305 Authenticated Encryption in the Cryptographic Message Syntax (CMS) | ||
Line 58: | Line 58: | ||
{{Cryptography navbox|stream|hash}} | {{Cryptography navbox|stream|hash}} | ||
[[Category:CS1 British English-language sources (en-gb)]] | |||
[[Category:CS1 English-language sources (en)]] | |||
[[Category: | [[Category:Collapse templates]] | ||
[[Category:Created On 11/05/2023]] | [[Category:Created On 11/05/2023]] | ||
[[Category:Lua-based templates]] | |||
[[Category:Machine Translated Page]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists]] | |||
[[Category:Pages with reference errors]] | |||
[[Category:Pages with script errors]] | |||
[[Category:Sidebars with styles needing conversion]] | |||
[[Category:Template documentation pages|Documentation/doc]] | |||
[[Category:Templates Vigyan Ready]] | |||
[[Category:Templates generating microformats]] | |||
[[Category:Templates that add a tracking category]] | |||
[[Category:Templates that are not mobile friendly]] | |||
[[Category:Templates that generate short descriptions]] | |||
[[Category:Templates using TemplateData]] | |||
[[Category:Wikipedia metatemplates]] | |||
[[Category:परिमित क्षेत्र]] | |||
[[Category:प्रमाणित-एन्क्रिप्शन योजनाएँ]] | |||
[[Category:संदेश प्रमाणीकरण कोड]] | |||
[[Category:स्ट्रीम सिफर]] |
Latest revision as of 16:41, 25 May 2023
चाचा20-पॉली1305 (ChaCha20-Poly1305) अतिरिक्त डेटा (AEAD) एल्गोरिदम के साथ प्रमाणित एन्क्रिप्शन है, जो ChaCha20 स्ट्रीम सिफर को पॉली1305 संदेश अभिप्रमाणन कोड के साथ जोड़ता है। IETF प्रोटोकॉल में इसका उपयोग RFC 8439 में मानकीकृत है।[1] इसमें तीव्र सॉफ्टवेयर प्रदर्शन है, और हार्डवेयर त्वरण के बिना, आमतौर पर AES-GCM से तीव्रतर है।[2]
इतिहास
निर्माण के दो मूलभूत अंग, एल्गोरिदम पॉली1305 और ChaCha20, दोनों स्वतंत्र रूप से 2005 और 2008 में, डैनियल जे बर्नस्टीन द्वारा रूपांकित किए गए थे |[3][4]
2013-2014 में, मूल ChaCha20 एल्गोरिथ्म का एक प्रकार (वैरियंट) (32-बिट काउंटर और 96-बिट नॉन का उपयोग करके) और मूल पॉली1305 (2 शृंखलाओं को प्रमाणित करना) का एक प्रकार [5][6] TLS और DTLS में उपयोग किए जाने वाले IETF प्रारूप में संयुक्त किया गया था,[7] और गूगल द्वारा सुरक्षा और प्रदर्शन कारणों से एक नए समर्थित सिफर के रूप में चुना गया है।[8] TLS के लिए गूगल के स्वीकरण के तुरंत बाद, ChaCha20, पॉली1305 और संयुक्त AEAD मोड को chacha20-poly1305@openssh.com प्रमाणित एन्क्रिप्शन सिफर[9][10] के माध्यम से OpenSSH में जोड़ा गया, लेकिन ChaCha20 एल्गोरिथम के लिए मूल 64-बिट काउंटर और 64-बिट नॉन को रखा गया है।
2015 में, AEAD एल्गोरिथ्म को RFC 7539[11] और RFC 7905[12] में TLS 1.2 और DTLS 1.2 और RFC 7634 में IPsec में उपयोग करने के लिए मानकीकृत किया गया है।[13] उसी वर्ष, यह क्लाउडफ्लेयर में एक वैकल्पिक सिफरसुइट के रूप में एकीकृत है।[14]
जून 2018 में, RFC 7539 को अद्यतन किया गया और RFC 8439 द्वारा प्रतिस्थापित किया गया था।[15]
विवरण
RFC 8439 में वर्णित ChaCha20-पॉली1305 [1] एल्गोरिथ्म 128-बिट (अंकितक आकार) के सिफरटेक्स्ट विस्तार के साथ एक सादे पाठ (प्लेनटेक्स्ट) को एन्क्रिप्ट करने के लिए इनपुट के रूप में 256-बिट मुख्य और 96-बिट अस्थायी रूप से लेता है। ChaCha20-पॉली1305 निर्माण में, ChaCha20 का उपयोग काउंटर मोड में एक प्रमुख प्रवाह को प्राप्त करने के लिए किया जाता है जो सादे पाठ के साथ XORed है। सिफरटेक्स्ट और संबंधित डेटा को तब पॉली1305 के एक प्रकार का उपयोग करके प्रमाणित किया जाता है जो पहले दो श्रृंखलाओं को एक में कोडन करता है।
वेरिएंट
XChaCha20-पॉली1305 - विस्तारित गैर संस्करण
XChaCha20-पॉली1305 निर्माण तथा ChaCha20-पॉली1305 निर्माण का एक विस्तारित 192-बिट गैर संस्करण है, जिसमें ChaCha20 के बजाय XChaCha20 का उपयोग कर रहा है। यादृच्छिक अस्थायी रूप से चुनते समय, XChaCha20-पॉली1305 निर्माण मूल निर्माण की तुलना में बेहतर सुरक्षा की अनुमति देता है। निर्माण के मानकीकरण का प्रारूप प्रयास जुलाई 2020 में समाप्त हो गया था।[16]
साल्सा20-पॉली1305 और एक्ससालसा20-पॉली1305
साल्सा20-पॉली1305 और एक्ससालसा20-पॉली1305 ChaCha20-पॉली1305 और XChaCha20-पॉली1305 एल्गोरिद्म के वेरिएंट हैं, जिसमें ChaCha20 और XChaCha20 के स्थान पर साल्सा20 और एक्ससालसा20 का उपयोग किया गया है। वे NaCl[17] और लिबसोडियम[18] में लागू होते हैं लेकिन मानकीकृत नहीं होते हैं। अभ्यास में चाचा का उपयोग करने वाले वेरिएंट को प्राथमिकता दी जाती है क्योंकि वे सालसा की तुलना में प्रति चक्कर (राउंड) बेहतर विसरण प्रदान करते हैं।[3]
प्रयोग
ChaCha20-पॉली1305 का उपयोग[2]IPsec,[1]SSH, TLS 1.2, DTLS 1.2, TLS 1.3,[12][1] वायरगार्ड,[19] S/MIME 4.0,[20]OTRv4[21] और कई अन्य प्रोटोकॉल में किया जाता है। इसका उपयोग सॉफ्टवेयर जैसे .0 में मानक डेटा एन्क्रिप्शन के रूप में किया जाता है।[22] दूसरों के बीच, इसे OpenSSL और लिबसोडियम में लागू किया गया है।
प्रदर्शन
ChaCha20-पॉली1305 आमतौर पर प्रणाली पर अधिक प्रचलित AES-GCM एल्गोरिदम की तुलना में बेहतर प्रदर्शन प्रदान करता है जहां CPU(s) AES-NI निर्देश सेट विस्तार की सुविधा नहीं देता है।[2] परिणामस्वरूप, ChaCha20-पॉली1305 को कभी-कभी AES-GCM पर सुरक्षा के समान स्तर के कारण और मोबाइल उपकरणों से जुड़ी कुछ उपयोग स्थितियों में पसंद किया जाता है, जो ज्यादातर ARM आधारित CPUs का उपयोग करते हैं।
सुरक्षा
ChaCha20-पॉली1305 निर्माण एकल और बहु-उपयोगकर्ता सेटिंग के लिए मानक मॉडल और आदर्श क्रमचय मॉडल में सुरक्षित सिद्ध हुआ है।[23] हालाँकि, GCM के समान, सुरक्षा एन्क्रिप्टेड प्रत्येक संदेश के लिए एक अद्वितीय अस्थायी रूप से चुनने पर निर्भर करती है। AES-GCM की तुलना में, ChaCha20-पॉली1305 के क्रियान्वयन समय के आक्षेप के प्रति कम असुरक्षित है।
यह भी देखें
बाहरी संबंध
- RFC 8439: ChaCha20 and पॉली1305 for IETF Protocols
- RFC 7634: ChaCha20, पॉली1305, and Their Use in the Internet Key Exchange Protocol (IKE) and IPsec
- RFC 7905: ChaCha20-पॉली1305 Cipher Suites for Transport Layer Security (TLS)
- RFC 8103: Using ChaCha20-पॉली1305 Authenticated Encryption in the Cryptographic Message Syntax (CMS)
संदर्भ
- ↑ 1.0 1.1 1.2 1.3 Nir, Yoav; Langley, Adam (June 2018). ChaCha20 and Poly1305 for IETF Protocols. doi:10.17487/RFC8439. RFC 8439. Cite error: Invalid
<ref>
tag; name ":1" defined multiple times with different content - ↑ 2.0 2.1 2.2 Nir, Yoav; Langley, Adam (June 2018). "Performance Measurements of ChaCha20". ChaCha20 and Poly1305 for IETF Protocols. sec. B. doi:10.17487/RFC8439. RFC 8439.
- ↑ 3.0 3.1 Bernstein, D. J. (January 2008). ChaCha, a variant of Salsa20 (PDF). The State of the Art of Stream Ciphers. Vol. 8. pp. 3–5.
- ↑ Bernstein, Daniel J. (2005), "The Poly1305-AES Message-Authentication Code", Fast Software Encryption, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 32–49, doi:10.1007/11502760_3, ISBN 978-3-540-26541-2
- ↑ Langley, Adam (September 2013). ChaCha20 and Poly1305 based Cipher Suites for TLS. I-D draft-agl-tls-chacha20poly1305-00.
- ↑ Nir, Yoav (27 January 2014). ChaCha20 and Poly1305 for IETF protocols. I-D draft-nir-cfrg-chacha20-poly1305-00.
- ↑ Langley, Adam; Chang, Wan-Teh; Mavrogiannopoulos, Nikos; Strombergson, Joachim; Josefsson, Simon (24 January 2014). परिवहन परत सुरक्षा के लिए चाचा स्ट्रीम सिफर. I-D draft-mavrogiannopoulos-chacha-tls-01.
- ↑ Bursztein, Elie (24 April 2014). "Android पर Chrome के लिए HTTPS कनेक्शन की गति बढ़ाना और उसे मज़बूत करना". Google Online Security Blog (in English). Archived from the original on 2016-09-28. Retrieved 2021-12-27.
- ↑ Miller, Damien. "Super User's BSD Cross Reference: /OpenBSD/usr.bin/ssh/PROTOCOL.chacha20poly1305". bxr.su. Archived from the original on 2013-12-13. Retrieved 2021-12-28.
- ↑ Miller, Damien (29 November 2013). "ChaCha20 and Poly1305 in OpenSSH" (in British English). Archived from the original on 2013-12-13. Retrieved 2021-12-28.
- ↑ Nir, Yoav; Langley, Adam (May 2015). ChaCha20 and Poly1305 for IETF Protocols. doi:10.17487/RFC7539. RFC 7539.
- ↑ 12.0 12.1 Langley, Adam; Chang, Wan-Teh; Mavrogiannopoulos, Nikos; Strombergson, Joachim; Josefsson, Simon (June 2016). ChaCha20-Poly1305 Cipher Suites for Transport Layer Security (TLS). doi:10.17487/RFC7905. RFC 7905.
- ↑ Nir, Yoav (August 2015). ChaCha20, Poly1305, and Their Use in the Internet Key Exchange Protocol (IKE) and IPsec. doi:10.17487/RFC7634. RFC 7634.
- ↑ "Do the ChaCha: better mobile performance with cryptography". The Cloudflare Blog (in English). 2015-02-23. Retrieved 2021-12-28.
- ↑ Nir, Yoav; Langley, Adam (June 2018). ChaCha20 and Poly1305 for IETF Protocols. doi:10.17487/RFC8439. RFC 8439.
- ↑ Arciszewski, Scott (10 January 2020). XChaCha: eXtended-nonce ChaCha and AEAD_XChaCha20_Poly1305. I-D draft-irtf-cfrg-xchacha.
- ↑ "NaCl: Networking and Cryptography library - Secret-key authenticated encryption". Archived from the original on 2009-06-30.
- ↑ "libsodium - प्रमाणित एन्क्रिप्शन". Archived from the original on 2020-08-04.
- ↑ Donenfeld, Jason A. "प्रोटोकॉल और क्रिप्टोग्राफी - वायरगार्ड". www.wireguard.com (in English). Retrieved 2021-12-28.
- ↑ Housley, Russ (February 2017). Using ChaCha20-Poly1305 Authenticated Encryption in the Cryptographic Message Syntax (CMS). doi:10.17487/RFC8103. RFC 8103.
- ↑ OTRv4, OTRv4, 2021-12-25, retrieved 2021-12-28
- ↑ borg rcreate, borgbackup, 2022-08-03, retrieved 2023-01-28
- ↑ Degabriele, Jean Paul; Govinden, Jérôme; Günther, Felix; Paterson, Kenneth G. (2021-11-12), "The Security of ChaCha20-Poly1305 in the Multi-User Setting", Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, New York, NY, USA: Association for Computing Machinery, pp. 1981–2003, doi:10.1145/3460120.3484814, ISBN 978-1-4503-8454-4, retrieved 2021-12-27