दस साल से अधिक समय पहले (6 सितंबर, 2000 को, जैसा कि इंटरनेट आर्काइव में
पता चल सकता है), eDonkey2000 कार्यक्रम की पहली रिलीज का जन्म हुआ, जिसने दुनिया को
"ed2k, // ..." प्रारूप में हाइपरलिंक्स के कार्यान्वयन और कार्यान्वयन से परिचित कराया
- अपने समय के लिए तीन विचारों का एक अद्भुत रसायन रासायनिक मिश्र धातु:
सबसे पहले, फ़ाइल हैशिंग ,
दूसरा, यूआरआई (संसाधन पहचान का एकीकृत रूप),
और तीसरा, फ़ाइल साझाकरण ।
हालांकि 6 साल बाद (सितंबर 2006 में), एक अदालत के माध्यम से RIAA के वकीलों ने eDonkey2000 निर्माता को प्रोग्राम को वितरित करने से रोकने के लिए (और यहां तक कि अपनी वेबसाइट को फाइल शेयरिंग अवैधता के बारे में एक अशुभ चेतावनी के साथ बदलने के लिए) करने के लिए प्रबंधित किया, हाइपरलिंक प्रारूप
"ed2k: // ..." विरासत में मिला था और
इस दिन के लिए व्यापक रूप से उपयोग किया जाता
है। सभी फ़ाइल-साझाकरण कार्यक्रमों और फ़ाइल-साझाकरण नेटवर्क ed2k या Kad से निपटने वाली सभी साइटों पर
दिन । इसके अलावा, तब से यह प्रारूप
2006 के संस्करण की तुलना में थोड़ा विकसित करने में कामयाब रहा है। इसमें सन्निहित विचारों की महाकाव्य शक्ति है।
हाइपरलिंक प्रारूप
"ed2k: // ..." को लागू करने वाले कार्यक्रमों की लोकप्रियता भी काफी रही है। अपनी महिमा के चरम पर,
eDonkey2000 कार्यक्रम, जिसका नाम
वास्तव में अंग्रेजी शब्द "गधा" ("गधा") से आता है, रूसी उपयोगकर्ताओं के मन में
मेगा-लोकप्रिय ब्राउज़र IE के साथ "गदहे" के लिए समान शब्दों पर लड़े
, जो इस उपनाम का केवल एक
यादृच्छिक समानता के कारण है।
विनी द पूह के बारे में कहानियों से
"यानि" और
गधे ईयोर का नाम
- और, शायद, कुछ
वेब मानकों की गलत व्याख्या में अपने गधे की जिद के लिए
। (उन वर्षों में "नहीं" के जापानी इनकार के रूप में "एनी" के लिए स्नेह और समझदारी, जैसा कि आप देख सकते हैं, व्यापक नहीं था।) और eDonkey2000 के वैचारिक "उत्तराधिकारियों" का मुख्य - मुक्त खुला स्रोत
eMule कार्यक्रम - अभी भी शीर्ष पर है। SourceForge वेबसाइट पर
सबसे लोकप्रिय (डाउनलोड की संख्या से) उत्पादों
की एक सूची ।
फ़ाइलों को नष्ट करना। यूआरआई। फ़ाइल साझा करना।
हाइपरलिंक "ed2k: // ..." के प्रारूप में ये तीनों विचार एक साथ कैसे आए
?तीन स्रोत, तीन घटक ...
किसी फ़ाइल को
हैशिंग एक गणितीय प्रक्रिया है जो प्रत्येक फ़ाइल को लंबे (बहु-बिट) के साथ मेल कर सकती है, लेकिन फिर भी छोटी, संख्या हैश कहलाती है। इसके अलावा, फ़ाइल में मामूली बदलाव भी इस संख्या (हैश) में महत्वपूर्ण बदलाव लाते हैं, इसलिए, एक नियम के रूप में, अलग-अलग हैश अलग-अलग फ़ाइलों के अनुरूप होते हैं। बेशक, हैश की संख्या, ज़ाहिर है, हालांकि बहुत बड़ी है
(उदाहरण के लिए, 160-बिट हैश के
लिए the2 160 ), इसलिए टक्कर (यानी, ऐसी फ़ाइलों की एक जोड़ी जिसमें समान हैश है) संभव है। हालांकि, यह असामान्य रूप से संभावना नहीं है। इसलिए, अगर हैशिंग एल्गोरिथ्म ने गणितीय रूप से क्रिप्टोग्राफिक ताकत साबित कर दी है (यानी, अगर यह किसी पूर्व ज्ञात हैश के अनुरूप फ़ाइल लेने के लिए कम्प्यूटेशनल रूप से कठिन होगा - या यहां तक कि दो अलग-अलग फ़ाइलों को उठाएं जिनकी हैश समान हैं), तो फ़ाइल हैश का उपयोग एक
विशिष्ट पहचानकर्ता के रूप में किया जा सकता है
फ़ाइल की सामग्री (और एक ही समय में फ़ाइल की सामग्री की अखंडता की जांच के साधन के रूप में)।
यूआरआई (संसाधनों की
पहचान करने का एक एकीकृत रूप) का विचार मूल रूप से
टिम बर्नर्स-ली में 1994 में एक यूआरएल (संसाधनों को
संबोधित करने का एक एकीकृत रूप) के रूप में आया था, अर्थात, फ़ाइल का पता रिकॉर्ड करने का एक तरीका (या एक फ़ाइल नहीं है, लेकिन एक अन्य संसाधन), जिसके द्वारा कोई भी ब्राउज़र समझ सकता है कि संसाधन कहाँ है। बाद में (जून 1994 में,
RFC 1630 बनाकर
), बर्नर्स-ली ने एक एकल रूप को संबोधित करने के विचार को सामान्यीकृत किया, पहचान के एकल रूप के विचार को सूत्रबद्ध करते हुए - उदाहरण के लिए, पहचानकर्ता
कलश: isbn: 0-395-36341-1 अंतर्राष्ट्रीय मानक पुस्तक
क्रमांक (इंटरनेशनल स्टैंडर्ड) का उपयोग करता है पुस्तक संख्या, आईएसबीएन) स्पष्ट रूप से और स्पष्ट रूप से इंगित करने के लिए कि
कौन सी पुस्तक का अर्थ है, हालांकि
यह इस बारे में
कुछ नहीं कहता
है कि यह पुस्तक कहाँ ले जाई जा सकती है।
EDonkey2000 के निर्माता जेद मैककलेब ने महसूस किया कि
हैश (एक फ़ाइल की सामग्री के लिए एक विशिष्ट पहचानकर्ता) उस फ़ाइल के
लिए एक
यूआरआई लिखने के लिए एकदम सही आधार है। इस सवाल के लिए कि फ़ाइल
कहाँ से प्राप्त की जाए, इसका उत्तर था
P2p फ़ाइल शेयरिंग - एक स्वचालित खोज और बाद में वैश्विक नेटवर्क के उपयोगकर्ताओं के बीच डेटा का प्रत्यक्ष हस्तांतरण, पहली बार नेपस्टर के आगमन के साथ
शॉन फैनिंग द्वारा जून 1999 में लागू किया गया। हैश के उपयोग ने eDonkey2000 को एक ही बार में दो तरह से नैपस्टर को पार करने की अनुमति दी:
सबसे पहले, फ़ाइल को हैश द्वारा नेटवर्क पर खोजा गया था, इसलिए फ़ाइल का नाम बदलने से इसे पाए जाने से नहीं रोका गया (नैपस्टर में, केवल नाम और आकार की जानकारी क्लाइंट से खोज सर्वर में स्थानांतरित की गई थी, लेकिन नहीं फ़ाइल की सामग्री के बारे में),
और दूसरी बात, फ़ाइल
का प्राप्तकर्ता फ़ाइल के टुकड़े को कई अन्य नेटवर्क प्रतिभागियों (और एक से नहीं, जैसा कि नैप्स्टर में) से इकट्ठा कर सकता है और फिर भी फ़ाइल की अखंडता के बारे में सुनिश्चित होना चाहिए, क्योंकि अखंडता को हैश द्वारा जांचा गया था।
फ़ाइल लिंक
एक उदाहरण के रूप में
एडोब रीडर एक्स वितरण का उपयोग करना, मैं आपको दिखाऊंगा कि एक विशिष्ट
ed2k हाइपरलिंक कैसा दिखता है
, एक फ़ाइल की ओर इशारा करते हुए:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87|/
इस उदाहरण में, आप देख सकते हैं कि इसका प्रारूप इस प्रकार है:
ed2k://|file||||=|/
MediaWiki टेम्पलेट (उदाहरण के लिए, विकिपीडिया पर) की तरह, एक
ed2k हाइपरलिंक में
वर्टिकल बार द्वारा अलग किए गए मानों की एक श्रृंखला होती है
। पहला हमेशा URI स्कीम
("ed2k: //") होता है, और आखिरी
स्लैश ("/") होता है। दूसरा एक कीवर्ड है जो लिंक के प्रकार को दर्शाता है। फ़ाइल
ed2k हाइपरलिंक के लिए, यह हमेशा "फ़ाइल" होती है। यह फ़ाइल नाम, फ़ाइल आकार (बाइट्स में)
और फ़ाइल
के ed2k हैश द्वारा सख्त क्रम में पालन किया जाता है, जिसके बाद प्रारूप में वैकल्पिक पैरामीटर
"नाम = मान" का पालन कर सकते हैं
।फ़ाइल नाम, हमेशा की तरह URI में, सहायक वर्ण हो सकते हैं जो अनिवार्य हेक्साडेसिमल बाइट
एन्कोडिंग के अधीन हैं। एक स्थान, उदाहरण के लिए,
"% 20" के रूप में लिखा
गया है, और रूसी
पत्र "k" के रूप में "% D0% BA" (UTF-8 में, यह दो बाइट्स से मेल खाता है), और इसी तरह।
Ed2k हैश की गणना MD4 एल्गोरिथ्म का उपयोग इस तरह से की जाती है कि कई फ़ाइल साझा करने वाले प्रतिभागियों से फ़ाइल के टुकड़े टुकड़े की उपरोक्त रसीद को सक्षम करने के लिए।
विकिपीडिया का कहना है कि इस उद्देश्य के लिए, बड़ी फ़ाइलों को 9,500 किलोबाइट्स (9,728,000 बाइट्स) के बराबर टुकड़ों में विभाजित किया जाता है और प्रत्येक छोटे आकार के अंतिम भाग को, जिसके बाद प्रत्येक चंक के लिए 128-बिट एमडी 4 हैश की गणना की जाती है। (यदि फ़ाइल का आकार 9500 किलोबाइट का एक बहु है, तो अंतिम हिस्सा खाली माना जाता है, लेकिन एमडी 4 हैश की गणना अभी भी की जाती है।) उसके बाद, प्राप्त एमडी 4 हैश एंड-टू-एंड में शामिल हो जाते हैं, और उनका स्वयं का एमडी 4 हैश ed2k फ़ाइल हैश बन जाता है। यदि पूरी फ़ाइल आकार में 9500 किलोबाइट से छोटी है, तो इसका MD4 हैश फ़ाइल का ed2k हैश बन जाता है।
फ़ाइल शेयरिंग प्रोटोकॉल इस तरह से डिज़ाइन किया गया है कि क्लाइंट सभी
चैंक के
एमडी 4 हैश की सूची का आदान-प्रदान करते हैं। तदनुसार, एक सामान्य
ed2k हैश आपको इस सूची की पर्याप्तता की जांच करने की अनुमति देता है। और फाइल शेयरिंग के माध्यम से एक अन्य फ़ाइल साझा करने वाले प्रतिभागी से एक फ़ाइल के कम से कम
9,500 किलोबाइट का हिस्सा प्राप्त किया है, ग्राहक पहले से ही इस चंक की अखंडता की जांच कर सकता है और तुरंत फ़ाइल साझाकरण में शामिल हो सकता है, मौजूदा चंक को अन्य इच्छुक व्यक्तियों को वितरित कर सकता है।
वैकल्पिक पैरामीटर
वैकल्पिक (नामित) पैरामीटर निम्नानुसार हो सकते हैं:
- S पैरामीटर फ़ाइल के स्रोत को निर्दिष्ट करता है, फ़ाइल साझाकरण का विकल्प। वर्तमान में, यह आमतौर पर एक HTTP सर्वर है, हालांकि 2006 का मानक ओवरनेट नेटवर्क से एक फ़ाइल प्राप्त करने की संभावना के लिए प्रदान किया गया है। एक उदाहरण:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87|s=http://ardownload.adobe.com/pub/adobe/reader/win/10.x/10.0.1/en_US/AdbeRdr1001_en_US.exe|/
एक ed2k हाइपरलिंक में कई ऐसे पैरामीटर हो सकते हैं।
- "पी" पैरामीटर में फ़ाइल चंक के एमडी 4 हैश का एक पूरा सेट होता है, जो सामान्य एड 2k हैश की तुलना में उनकी अखंडता के अधिक विश्वसनीय और पूर्ण सत्यापन की संभावना प्रदान करता है । इस घटना में कि फ़ाइल को "s" पैरामीटर से URL से डाउनलोड किया गया था , और अन्य ed2k क्लाइंट (चांस के हैश प्राप्त करने के लिए) के साथ संचार नहीं किया गया था, यह सेट आपको एक या अधिक दूषित चंक्स की पहचान करने की अनुमति देगा, और यह सुनिश्चित कर लें कि फ़ाइल और हैश मेल नहीं खाते हैं। एक उदाहरण:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87| p=F9FB4A4E8EC04320AC49D0F796807795: 9159AD7B29693322F8455258F6D02B3C: A51E847EB4E2D67BD04F1AF95D0479EB: A489A6E25ADF20366E8C4BCD69DD0DA9: 3315A3CDAE777B7AE8E734161DAEFFE3|/
इस उदाहरण में नई लाइन पर रैपिंग की सुविधा के लिए स्थान हैं। असली URI बिना रिक्त स्थान के लिखा जाता है।
- "H" पैरामीटर आपको कुछ आधुनिक ed2k क्लाइंट (उदाहरण के लिए, eMule) द्वारा उपयोग किए गए AICH हैश को फ़ाइल अखंडता के अतिरिक्त नियंत्रण के लिए निर्दिष्ट करने की अनुमति देता है। (यह फ़ाइल के छोटे टुकड़ों पर SHA-1 एल्गोरिथ्म का उपयोग करके गणना की जाती है, प्रत्येक में 180 किलोबाइट होता है, जिसके बाद हैश से हैश एक प्रकार की वृक्ष संरचना के भीतर स्थित होता है; पैरामीटर "h" पेड़ के शीर्ष पर प्राप्त हैश को इंगित करता है।) इस पैरामीटर की उपस्थिति टकराव बनाती है। कम संभावना है, और ट्रांसमिशन के दौरान फ़ाइल की अखंडता के उल्लंघन के मामले में त्रुटि सुधार को भी सरल करता है, जिससे आप जल्दी से यह पता लगा सकते हैं कि कौन सा टुकड़ा का हिस्सा क्षतिग्रस्त है (और फ़ाइल साझाकरण के पूरे हिस्से को फिर से पंप करने के बजाय इस चंक को पुनर्स्थापित करें)। एक उदाहरण:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87| h=5XYGXYHANLAEAL3Y67HVF32OOJ2HXCCP|/
इस उदाहरण में नई लाइन पर रैपिंग की सुविधा के लिए एक स्थान है। असली URI बिना रिक्त स्थान के लिखा जाता है।
- "एफ" पैरामीटर आपको एक पाठ फ़ाइल का स्थान निर्दिष्ट करने की अनुमति देता है जिसमें अधिक पूर्ण ed2k हाइपरलिंक होता है - यदि यह 2038 वर्णों की लंबाई से अधिक है, जो कुछ मानकों और ब्राउज़रों में URI आकार की सीमा है। एक उदाहरण:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87|f=http://example.org/long.ed2k|/
मुझे डर है कि यह शायद ही सभी आधुनिक ग्राहकों द्वारा समर्थित है।
- "स्रोत" पैरामीटर का एक विशेष रूप है: यह हमेशा लिंक के अंत में लिखा जाता है, और यह एक स्लैश ("/") के पैरामीटर से पहले होता है । इस प्रकार, क्लाइंट जो "स्रोत" पैरामीटर को नहीं समझते हैं (और एक ही समय में स्लैश को एक ed2k हाइपरलिंक के अंत के संकेत के रूप में मानते हैं) इसे अनदेखा करने के लिए स्वतंत्र हैं । इसमें "स्रोत" कीवर्ड शामिल है, इसके बाद अल्पविराम, इसके बाद पते (या डोमेन नाम) और ed2k क्लाइंट के पोर्ट शामिल हैं। एक उदाहरण:
ed2k://|file|AdbeRdr1001_en_US.exe|48536984|249634B84340FEB5778EC09A2A9C2B87|/|sources,ed2k.example.net:6789,ed2k.example.org:12345|/
इस उदाहरण में नई लाइन पर रैपिंग की सुविधा के लिए एक स्थान है। असली URI बिना रिक्त स्थान के लिखा जाता है।
यह स्पष्ट है कि इस तरह के पते दीर्घकालिक होना चाहिए, जो एक स्थायी आईपी पते को जलाकर या एक डोमेन नाम को एक गतिशील डीएनएस से बांधकर प्राप्त किया जाता है।
एक ed2k फ़ाइल हाइपरलिंक बनाना
फ़ाइल आकार (बाइट्स में) और एक (ed2k) या दो (ed2k और AICH) हैश युक्त एक
ed2k हाइपरलिंक बनाने के लिए, फ़ाइल साझाकरण में भाग लेना आवश्यक नहीं है, ed2k
और (या) Kad नेटवर्क के लिए अन्य समान क्लाइंट स्थापित करें।
ई-मेल ( 125 Kb ZIP ) के रचनाकारों द्वारा SourceForge वेबसाइट के माध्यम से वितरित किया गया सरल
लिंकक्रैचर कार्यक्रम, आसानी से विंडोज (या शराब के तहत) पर इस कार्य का सामना कर सकता है।
(जारी रखा जाए ...)