एमबेड टीएलएस: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 21: Line 21:


== पुस्तकालय ==
== पुस्तकालय ==
कोर एसएसएल [[ पुस्तकालय (कंप्यूटर विज्ञान) ]] [[ सी (प्रोग्रामिंग भाषा) ]] में लिखी गई है एवं एसएसएल मॉड्यूल, बुनियादी [[क्रिप्टोग्राफी]] कार्यों को लागू करती है एवं विभिन्न उपयोगिता कार्यों को प्रदान करती है। [[OpenSSL]] एवं TLS के अन्य कार्यान्वयनों के विपरीत, Mbed TLS [[wolfSSL]] की तरह है जिसमें इसे छोटे एम्बेडेड उपकरणों पर फ़िट करने के लिए डिज़ाइन किया गया है, जिसमें न्यूनतम पूर्ण TLS स्टैक के लिए 60KB से कम प्रोग्राम स्पेस एवं 64 KB RAM की आवश्यकता होती है। यह अत्यधिक मॉड्यूलर भी है: प्रत्येक घटक, जैसे क्रिप्टोग्राफ़िक फ़ंक्शन, को बाकी ढांचे से स्वतंत्र रूप से उपयोग किया जा सकता है। [[Microsoft Windows]] एवं [[Linux]] के लिए संस्करण भी उपलब्ध हैं। क्योंकि Mbed TLS को C (प्रोग्रामिंग लैंग्वेज) में लिखा गया है, बाहरी निर्भरताओं के बिना, यह अधिकांश ऑपरेटिंग सिस्टम एवं आर्किटेक्चर पर काम करता है।
कोर एसएसएल [[ पुस्तकालय (कंप्यूटर विज्ञान) ]] [[ सी (प्रोग्रामिंग भाषा) ]] में लिखी गई है एवं एसएसएल मॉड्यूल, मूल [[क्रिप्टोग्राफी]] कार्यों को प्रारम्भ करती है एवं विभिन्न उपयोगिता कार्यों को प्रदान करती है। [[OpenSSL|ओपनएसएसएल]] एवं टीएलएस के अन्य कार्यान्वयनों के विपरीत, एमबेड टीएलएस [[wolfSSL]] के जैसे है जिसमें इसे अल्प एम्बेडेड उपकरणों पर उपयोग करने के लिए डिज़ाइन किया गया है, जिसमें न्यूनतम पूर्ण टीएलएस स्टैक के लिए 60KB से कम प्रोग्राम स्पेस एवं 64 KB RAM की आवश्यकता होती है। यह अत्यधिक मॉड्यूलर भी है, प्रत्येक घटक, जैसे क्रिप्टोग्राफ़िक फ़ंक्शन, को स्वरुप से स्वतंत्र रूप में उपयोग किया जा सकता है। [[Microsoft Windows|माइक्रोसॉफ़्ट विंडोज़]] एवं [[Linux|लिनक्स]] के लिए संस्करण भी उपलब्ध हैं। क्योंकि एमबेड टीएलएस को C (प्रोग्रामिंग लैंग्वेज) में लिखा गया है, बाहरी निर्भरताओं के बिना, यह अधिकांश ऑपरेटिंग प्रणाली एवं स्थापत्य पर कार्य करता है।


संस्करण 1.3.0 के बाद से, इसमें मौजूदा एम्बेडेड ऑपरेटिंग सिस्टम के साथ बेहतर एकीकरण का समर्थन करने के लिए मेमोरी आवंटन एवं कोर में थ्रेडिंग के लिए अमूर्त परतें हैं।<ref>{{cite web|url=https://polarssl.org/tech-updates/blog/new-features-in-polarssl-1.3.0 |title=New features in PolarSSL 1.3.0 – Tech Updates |publisher=Polarssl.org |access-date=2014-05-08}}</ref>
संस्करण 1.3.0 के पश्चात से, इसमें उपस्थित एम्बेडेड ऑपरेटिंग प्रणाली के साथ उत्तम एकीकरण का समर्थन करने के लिए मेमोरी आवंटन एवं कोर में थ्रेडिंग के लिए अमूर्त परतें होती हैं।<ref>{{cite web|url=https://polarssl.org/tech-updates/blog/new-features-in-polarssl-1.3.0 |title=New features in PolarSSL 1.3.0 – Tech Updates |publisher=Polarssl.org |access-date=2014-05-08}}</ref>




Line 54: Line 54:


== प्लेटफॉर्म ==
== प्लेटफॉर्म ==
Mbed TLS वर्तमान में Linux, Microsoft Windows, [[OS X]], [[OpenWrt]], [[Android (ऑपरेटिंग सिस्टम)]], [[iOS]], [[RISC OS]] सहित अधिकांश ऑपरेटिंग सिस्टम के लिए उपलब्ध है<ref>{{cite web |title=Connecting with the 21st century |url=https://www.riscosopen.org/news/articles/2019/04/26/connecting-with-the-21st-century |website=RISC OS Open |publisher=Steve Revill |access-date=2022-04-19}}</ref> एवं [[फ्रीआरटीओएस]]। समर्थित चिपसेट में कम से कम ARM, x86, PowerPC, MIPS सम्मिलितहैं।
Mbed TLS वर्तमान में Linux, Microsoft Windows, [[OS X]], [[OpenWrt]], [[Android (ऑपरेटिंग सिस्टम)|Android (ऑपरेटिंग प्रणाली)]], [[iOS]], [[RISC OS]] सहित अधिकांश ऑपरेटिंग प्रणाली के लिए उपलब्ध है<ref>{{cite web |title=Connecting with the 21st century |url=https://www.riscosopen.org/news/articles/2019/04/26/connecting-with-the-21st-century |website=RISC OS Open |publisher=Steve Revill |access-date=2022-04-19}}</ref> एवं [[फ्रीआरटीओएस]]। समर्थित चिपसेट में कम से कम ARM, x86, PowerPC, MIPS सम्मिलितहैं।




Line 77: Line 77:
:[[PBKDF2]], [[PKCS]] #5 PBE2, PKCS_12|PKCS #12 कुंजी व्युत्पत्ति
:[[PBKDF2]], [[PKCS]] #5 PBE2, PKCS_12|PKCS #12 कुंजी व्युत्पत्ति
सार्वजनिक-कुंजी क्रिप्टोग्राफी:
सार्वजनिक-कुंजी क्रिप्टोग्राफी:
:RSA (क्रिप्टोसिस्टम), डिफी-हेलमैन की एक्सचेंज,
:RSA (क्रिप्टोप्रणाली), डिफी-हेलमैन की एक्सचेंज,
: [[सार्वजनिक कुंजी क्रिप्टोग्राफी]] | एलिप्टिक कर्व क्रिप्टोग्राफी (ईसीसी), एलिप्टिक-कर्व डिफी-हेलमैन | एलिप्टिक कर्व डिफी-हेलमैन (ईसीडीएच), [[अण्डाकार वक्र डिजिटल हस्ताक्षर एल्गोरिथ्म]] | एलिप्टिक कर्व डीएसए (ईसीडीएसए), एलिप्टिक कर्व Password_Authenticated_Key_Exchange_by_Juggling|J-PAKE
: [[सार्वजनिक कुंजी क्रिप्टोग्राफी]] | एलिप्टिक कर्व क्रिप्टोग्राफी (ईसीसी), एलिप्टिक-कर्व डिफी-हेलमैन | एलिप्टिक कर्व डिफी-हेलमैन (ईसीडीएच), [[अण्डाकार वक्र डिजिटल हस्ताक्षर एल्गोरिथ्म]] | एलिप्टिक कर्व डीएसए (ईसीडीएसए), एलिप्टिक कर्व Password_Authenticated_Key_Exchange_by_Juggling|J-PAKE



Revision as of 11:04, 1 June 2023

Mbed TLS
Developer(s)Collaborative project managed by TrustedFirmware (formerly by Arm)
Initial releaseJanuary 15, 2009 (2009-01-15)
Stable release3.2.1 (July 12, 2022; 2 years ago (2022-07-12)[1]) [±]
Written inC
Operating systemMulti-platform
TypeSecurity library
LicenseApache 2.0
Websitewww.trustedfirmware.org/projects/mbed-tls/

एमबेड टीएलएस परिवहन परत सुरक्षा प्रोटोकॉल एवं संबंधित क्रिप्टोग्राफ़िक एल्गोरिदम एवं आवश्यक समर्थन कोड का कार्यान्वयन है। यह अपाचे लाइसेंस संस्करण 2.0 के अनुसार वितरित किया गया है। वेबसाइट पर कहा गया है कि एमबेड टीएलएस का उद्देश्य विचार करने, उपयोग करने, एकीकृत करने एवं विस्तार करने में सरल होता है।

इतिहास

पोलरएसएसएल एसएसएल लाइब्रेरी XySSL SSL लाइब्रेरी की आधिकारिक निरंतरता शाखा है। XySSL फ्रेंच व्हाइट हैट (कंप्यूटर सुरक्षा) क्रिस्टोफ़ डिवाइन द्वारा बनाया गया था एवं प्रथम बार 1 नवंबर, 2006 को GNU_General_Public_License v2 एवं BSD_licenses लाइसेंस के अनुसार निर्धारित किया गया था। 2008 में, क्रिस्टोफ़ डिवाइन अब XySSL का समर्थन करने में सक्षम नहीं थे एवं पॉल बक्कर को पोलारएसएसएल नामक आधिकारिक फोर्क बनाने की अनुमति दी।[2] नवंबर 2014 में, शाखा (कंपनी) द्वारा पोलारएसएसएल का अधिग्रहण किया गया था।[3] 2011 में, डच सरकार ने ओपनवीपीएन एवं पोलरएसएसएल के मध्य एकीकरण को स्वीकृति दी, जिसे ओपनवीपीएन-एनएल (OpenVPN-NL) नाम दिया गया है। ओपनवीपीएन के इस संस्करण को प्रतिबंधित स्तर तक सरकारी संचार की सुरक्षा में उपयोग के लिए अनुमोदित किया गया है।[4] संस्करण 1.3.10 के निर्धारित होने के साथ ही, पोलरएसएसएल को एमबेड टीएलएस के रूप में ब्रांडेड किया गया है, जिससे एमबेड पारिस्थितिकी तंत्र के अंदर उत्तम रूप से योग्य हो सके।[5] संस्करण 2.1.0 से प्रारम्भ होकर, लाइब्रेरी को जीपीएल v2 एवं अपाचे लाइसेंस v2.0 दोनों के अनुसार उपलब्ध कराया गया था।[6] संस्करण 2.17 के पश्चात से, एमबेड टीएलएस केवल अपाचे लाइसेंस संस्करण 2.0 के अनुसार लाइसेंस प्राप्त है।[7][8]2020 में, एमबेड टीएलएस विश्वसनीय फर्मवेयर प्रोजेक्ट में सम्मिलित हो गया।[9]


पुस्तकालय

कोर एसएसएल पुस्तकालय (कंप्यूटर विज्ञान) सी (प्रोग्रामिंग भाषा) में लिखी गई है एवं एसएसएल मॉड्यूल, मूल क्रिप्टोग्राफी कार्यों को प्रारम्भ करती है एवं विभिन्न उपयोगिता कार्यों को प्रदान करती है। ओपनएसएसएल एवं टीएलएस के अन्य कार्यान्वयनों के विपरीत, एमबेड टीएलएस wolfSSL के जैसे है जिसमें इसे अल्प एम्बेडेड उपकरणों पर उपयोग करने के लिए डिज़ाइन किया गया है, जिसमें न्यूनतम पूर्ण टीएलएस स्टैक के लिए 60KB से कम प्रोग्राम स्पेस एवं 64 KB RAM की आवश्यकता होती है। यह अत्यधिक मॉड्यूलर भी है, प्रत्येक घटक, जैसे क्रिप्टोग्राफ़िक फ़ंक्शन, को स्वरुप से स्वतंत्र रूप में उपयोग किया जा सकता है। माइक्रोसॉफ़्ट विंडोज़ एवं लिनक्स के लिए संस्करण भी उपलब्ध हैं। क्योंकि एमबेड टीएलएस को C (प्रोग्रामिंग लैंग्वेज) में लिखा गया है, बाहरी निर्भरताओं के बिना, यह अधिकांश ऑपरेटिंग प्रणाली एवं स्थापत्य पर कार्य करता है।

संस्करण 1.3.0 के पश्चात से, इसमें उपस्थित एम्बेडेड ऑपरेटिंग प्रणाली के साथ उत्तम एकीकरण का समर्थन करने के लिए मेमोरी आवंटन एवं कोर में थ्रेडिंग के लिए अमूर्त परतें होती हैं।[10]


डिजाइन प्राथमिकताएं

Mbed TLS लाइब्रेरी कोड की पठनीयता, प्रलेखन, स्वचालित प्रतिगमन परीक्षण, शिथिल युग्मित डिज़ाइन एवं पोर्टेबल कोड पर ध्यान केंद्रित करती है।[11]


विकास दस्तावेज

डेवलपर्स के लिए निम्नलिखित दस्तावेज उपलब्ध हैं:

  • उच्च स्तरीय डिजाइन:[12] पुस्तकालय के अंदर विभिन्न मॉड्यूल का एक उच्च स्तरीय विवरण, यूएमएल आरेखों के साथ, मामलों का उपयोग करें एवं सामान्य परिदृश्यों में बातचीत करें।
  • एपीआई दस्तावेज:[13] पुस्तकालय की शीर्षलेख फ़ाइलों से डॉक्सिजन-जेनरेट किए गए दस्तावेज़।
  • स्रोत कोड प्रलेखन:[14] पुस्तकालय के स्रोत कोड को संरचनाओं, निर्णयों एवं कोड निर्माणों को स्पष्ट करने के लिए प्रलेखित किया गया है।

स्वचालित परीक्षण

एमबेड टीएलएस के स्वचालित परीक्षण में सम्मिलितहैं:

  • विभिन्न प्लेटफार्मों पर प्रतिगमन एवं संगतता के परीक्षण के लिए 5000 से अधिक स्वचालित परीक्षणों (पुस्तकालय के संस्करण 1.3.2 में परीक्षणों की संख्या के आधार पर) वाले स्रोत कोड के साथ एक परीक्षण ढांचा सम्मिलितहै।
  • एक अनुकूलता स्क्रिप्ट (compat.sh[15]) जो OpenSSL एवं GnuTLS के साथ SSL संचार की अनुकूलता का परीक्षण करता है।
  • ट्रैविस सीआई एवं जेनकींस (सॉफ्टवेयर) पर आधारित एक सतत एकीकरण प्रणाली।[16]


प्रयोग करें

Mbed TLS का उपयोग बड़े ओपन सोर्स प्रोजेक्ट्स में SSL घटक के रूप में किया जाता है:

प्लेटफॉर्म

Mbed TLS वर्तमान में Linux, Microsoft Windows, OS X, OpenWrt, Android (ऑपरेटिंग प्रणाली), iOS, RISC OS सहित अधिकांश ऑपरेटिंग प्रणाली के लिए उपलब्ध है[17] एवं फ्रीआरटीओएस। समर्थित चिपसेट में कम से कम ARM, x86, PowerPC, MIPS सम्मिलितहैं।


एल्गोरिदम

Mbed TLS कई अलग-अलग क्रिप्टोग्राफ़िक एल्गोरिदम का समर्थन करता है:

क्रिप्टोग्राफ़िक हैश फ़ंक्शन:

MD2 (हैश फंक्शन), MD4, MD5, RIPEMD, SHA-1, SHA-2
Message_authentication_code मोड
एक-कुंजी_मैक, एचएमएसी

सिफ़र :

उन्नत एन्क्रिप्शन मानक, ARIA (सिफर), ब्लोफिश (सिफर), कमीलया (सिफर) , चाचा (सिफर), उच्च एन्क्रिप्शन मानक, RC4, ट्रिपल डेस, XTEA
Block_cipher_mode_of_operation
Block_cipher_mode_of_operation#ECB, Block_cipher_mode_of_operation#CBC, Block_cipher_mode_of_operation#Cipher_feedback_(CFB), Block_cipher_mode_of_operation#CTR, Block_cipher_mode_of_operation#OFB, Disk_encryption_theory#XTS

प्रमाणित एन्क्रिप्शन मोड

CCM_mode, Galois/Counter_Mode, NIST की रैप,
ChaCha20-Poly1305
Key_derivation_function
एचकेडीएफ

चाबी खींचना

PBKDF2, PKCS #5 PBE2, PKCS_12|PKCS #12 कुंजी व्युत्पत्ति

सार्वजनिक-कुंजी क्रिप्टोग्राफी:

RSA (क्रिप्टोप्रणाली), डिफी-हेलमैन की एक्सचेंज,
सार्वजनिक कुंजी क्रिप्टोग्राफी | एलिप्टिक कर्व क्रिप्टोग्राफी (ईसीसी), एलिप्टिक-कर्व डिफी-हेलमैन | एलिप्टिक कर्व डिफी-हेलमैन (ईसीडीएच), अण्डाकार वक्र डिजिटल हस्ताक्षर एल्गोरिथ्म | एलिप्टिक कर्व डीएसए (ईसीडीएसए), एलिप्टिक कर्व Password_Authenticated_Key_Exchange_by_Juggling|J-PAKE

यह भी देखें

संदर्भ

  1. "Releases". Retrieved 2022-07-12.
  2. "हमारे बारे में". PolarSSL. Retrieved 2014-05-08.
  3. "पोलारएसएसएल अब एआरएम का हिस्सा है". 2014-11-24.
  4. [1] Archived January 29, 2013, at the Wayback Machine
  5. "mbed TLS 1.3.10 released". 2015-02-08. Retrieved 2015-02-09.
  6. "डाउनलोड". Mbed TLS. Arm. Archived from the original on 2019-03-24. Retrieved 2021-04-05.
  7. "संग्रह डाउनलोड करें". Mbed TLS. Arm. Retrieved 2021-04-05.
  8. "लाइसेंस के लिए इतिहास". GitHub. Arm. Retrieved 2021-04-05.
  9. "हेफ़नियम, MbedTLS, PSA क्रिप्टो विश्वसनीय फ़र्मवेयर प्रोजेक्ट से जुड़ते हैं". TrustedFirmware. TrustedFirmware. Archived from the original on 2020-08-12. Retrieved 2021-04-05.
  10. "New features in PolarSSL 1.3.0 – Tech Updates". Polarssl.org. Retrieved 2014-05-08.
  11. "PolarSSL Features: easy to use SSL library and well-documented". Polarssl.org. Retrieved 2014-05-08.
  12. "पोलरएसएसएल उच्च स्तरीय डिजाइन". Polarssl.org. Retrieved 2014-05-08.
  13. "v1.3.6 source code documentation – API Documentation". PolarSSL. Retrieved 2014-05-08.
  14. "polarssl/polarssl — GitHub". Github.com. Retrieved 2014-05-08.
  15. executable file (2020-04-26). "mbedtls/compat.sh at development · ARMmbed/mbedtls · GitHub". Github.com. Retrieved 2021-04-05.
  16. "एमबेड टीएलएस निरंतर एकीकरण". Trusted Firmware. Trusted Firmware. Retrieved 2021-04-05.
  17. "Connecting with the 21st century". RISC OS Open. Steve Revill. Retrieved 2022-04-19.


बाहरी संबंध