2022 में, एलन मस्क ने ट्विटर का अधिग्रहण किया, जिसे तब से एक्स के रूप में रीब्रांड किया गया है। कहानी का यह हिस्सा व्यापक रूप से जाना जाता है। हालाँकि, कम लोगों को पता है कि प्लेटफ़ॉर्म को विकेंद्रीकृत करने की एक परियोजना ट्विटर के भीतर आकार ले रही थी। नामक इस परियोजना को 2019 में लॉन्च किया गया था। 2021 तक, इसे ब्लूस्काई सोशल बेनिफिट कॉरपोरेशन में बदल दिया गया, जिससे इसे ट्विटर से स्वतंत्र रूप से जारी रखने की अनुमति मिली। कुछ मायनों में, ब्लूस्काई को ट्विटर के उत्तराधिकारी के रूप में एक्स के रूप में माना जा सकता है। ब्लूस्काई X एक बहुत ही लाभकारी सेवा है, जो सशुल्क सत्यापन और प्रीमियम सुविधाएँ प्रदान करती है। इसके विपरीत, BlueSky के समान खुले प्रोटोकॉल पर निर्मित एक पूरी तरह से खुली प्रणाली है, जिसमें कई स्वतंत्र नोड्स शामिल हैं। Fediverse चूंकि ब्लूस्काई टीम मानक से संतुष्ट नहीं थी, इसलिए उन्होंने अपना प्रोटोकॉल विकसित किया, कहा गया। एक्टिविटीपब जिसे एटी प्रोटोकॉल प्रोटोकॉल का मुख्य तत्व रिपोजिटरी है, जो डेटाबेस के समान है। यह वह जगह है जहाँ पोस्ट, लाइक और अन्य सभी डेटा संग्रहीत किए जाते हैं। प्रत्येक उपयोगकर्ता (या किसी भी इकाई) के पास एक रिपोजिटरी होती है। रिपोजिटरी में संग्रह (डेटाबेस तालिकाओं के समान) होते हैं, और संग्रह में कुंजी-मूल्य प्रारूप में रिकॉर्ड होते हैं। रिपोजिटरी की तरह डेटा संग्रहीत करती है। प्रत्येक रिकॉर्ड में एक होता है, जो सामग्री-आधारित हैश होता है। यदि कोई उपयोगकर्ता डेटाबेस में कुछ भी संशोधित करता है, तो डेटा से एक कमिट हैश उत्पन्न होता है (Git कमिट के समान)। डेटाबेस में एक सिंगल-बिट परिवर्तन भी एक नए कमिट हैश के परिणामस्वरूप होता है। रिपोजिटरी का मालिक हर बदलाव के बाद इस कमिट हैश पर डिजिटल रूप से हस्ताक्षर करता है आईपीएफएस CID इस समाधान का लाभ यह है कि संपूर्ण रिपोजिटरी या इसके भागों को विभिन्न प्रणालियों के बीच स्वतंत्र रूप से स्थानांतरित किया जा सकता है, जबकि किसी भी प्रणाली के लिए डेटा की प्रामाणिकता को आसानी से सत्यापित करने की क्षमता बनी रहती है। उपयोगकर्ता अपनी पसंद के व्यक्तिगत डेटा सर्वर (PDS) पर अपने रिपॉजिटरी को होस्ट कर सकते हैं। इस अर्थ में, PDS एक डेटाबेस सर्वर की तरह काम करता है। PDS के माध्यम से, उपयोगकर्ता अपने रिपॉजिटरी को संशोधित कर सकते हैं और इसे दूसरों के लिए सुलभ बना सकते हैं। इसके अलावा, PDS कई अतिरिक्त सेवाएँ प्रदान करता है। यह अन्य उपयोगकर्ताओं के डेटा तक पहुँच की अनुमति देता है, फ़ीड प्राप्त करता है, और बहुत कुछ। अनिवार्य रूप से, PDS एक पूरी तरह कार्यात्मक सोशल मीडिया नोड के रूप में कार्य करता है, जो उपयोगकर्ताओं को नेटवर्क से कनेक्ट करने में सक्षम बनाता है। चूँकि पी.डी.एस. केवल वह सिस्टम है जो रिपॉजिटरी को चलाता है, इसलिए उपयोगकर्ताओं को अपने रिपॉजिटरी को विभिन्न पी.डी.एस. के बीच ले जाने या यहाँ तक कि अपने स्वयं के पी.डी.एस. को संचालित करने की स्वतंत्रता होती है। यह लचीलापन ही सिस्टम को इसकी स्वतंत्रता प्रदान करता है। पीडीएस पर संग्रहीत रिपॉजिटरी की सामग्री की निगरानी फीड जनरेटर द्वारा की जाती है, जो विशिष्ट मानदंडों के आधार पर फीड बनाते हैं। अन्य सोशल मीडिया प्लेटफ़ॉर्म (जैसे, फ़ेसबुक) पर आमतौर पर केवल एक ही फ़ीड होती है, लेकिन ब्लूस्काई के मामले में, उपयोगकर्ता यह चुनने के लिए स्वतंत्र हैं कि वे किस फ़ीड से पोस्ट देखना चाहते हैं। यदि किसी उपयोगकर्ता को लगता है कि फ़ीड जनरेटर उनकी रुचियों के लिए प्रासंगिक पोस्ट नहीं दिखा रहा है, वे जो पोस्ट देखना चाहते हैं उन्हें सेंसर कर रहा है, या उनमें हेरफेर करने का प्रयास कर रहा है, तो वे बस किसी अन्य फ़ीड प्रदाता पर स्विच कर सकते हैं। सिस्टम का यह ढीला नेटवर्क और रिपॉजिटरी को स्थानांतरित करने में आसानी दक्षता का त्याग किए बिना पूरी स्वतंत्रता प्रदान करती है। उदाहरण के लिए, क्लाइंट को कई स्रोतों से पोस्ट इकट्ठा करने की आवश्यकता नहीं है, क्योंकि यह फ़ीड जनरेटर और पीडीएस द्वारा नियंत्रित किया जाता है। अब जबकि हम सिस्टम की संरचना और मुख्य घटकों को समझ चुके हैं, तो आइए थोड़ा गहराई से देखें कि प्रोटोकॉल कैसे काम करता है। प्रत्येक उपयोगकर्ता (और अन्य संस्थाओं) को एक अद्वितीय सौंपा जाता है। यह DID रिपॉजिटरी और उपयोगकर्ता द्वारा रिपॉजिटरी कमिट पर हस्ताक्षर करने के लिए उपयोग की जाने वाली कुंजी जोड़ी से जुड़ा होता है। चूँकि DID को याद रखना मुश्किल होता है, इसलिए उपयोगकर्ताओं की पहचान डोमेन नामों से की जाती है, जिसे सिस्टम DID में बदल देता है। विकेन्द्रीकृत पहचानकर्ता (DID) उदाहरण के लिए, मेरा उपयोगकर्ता नाम है। DID को दो तरीकों से इससे जोड़ा जा सकता है: या तो इसे डोमेन के TXT रिकॉर्ड में उचित कुंजी के साथ निर्दिष्ट करके या बस प्रसिद्ध URI के माध्यम से। DID को इस URL पर एक्सेस किया जा सकता है: thebojda.bsky.social https://thebojda.bsky.social/.well-known/atproto-did उदाहरण के लिए, मेरा DID है: did:plc:4x7rynvskplz54p5pofj3jxa एटी प्रोटोकॉल और दोनों प्रकार के डीआईडी का समर्थन करता है। वेब डीआईडी एक सरल यूआरएल है, जबकि पीएलसी डीआईडी एटी प्रोटोकॉल का एक कस्टम मानक है, जो सार्वजनिक कुंजी और कुछ अतिरिक्त डेटा से उत्पन्न होता है (जो लोग गहराई से जानना चाहते हैं वे सकते हैं)। पीएलसी वेब इसके बारे में यहाँ और अधिक पढ़ प्रत्येक DID एक DID दस्तावेज़ से संबद्ध होता है, जिसमें DID से जुड़ी सार्वजनिक कुंजी और उस PDS का URL होता है जहां रिपॉजिटरी होस्ट की जाती है। DID का समाधान इस प्रकार किया जा सकता है: https://plc.directory/did:plc:4x7rynvskplz54p5pofj3jxa DID दस्तावेज़ इस प्रकार दिखता है: { "@context": [ "https://www.w3.org/ns/did/v1", "https://w3id.org/security/multikey/v1", "https://w3id.org/security/suites/secp256k1-2019/v1" ], "id": "did:plc:4x7rynvskplz54p5pofj3jxa", "alsoKnownAs": [ "at://thebojda.bsky.social" ], "verificationMethod": [ { "id": "did:plc:4x7rynvskplz54p5pofj3jxa#atproto", "type": "Multikey", "controller": "did:plc:4x7rynvskplz54p5pofj3jxa", "publicKeyMultibase": "zQ3shaNKzE66K1Kr3dmbnDwXWHh6v4nUcBmpEaK7bVktKTwfh" } ], "service": [ { "id": "#atproto_pds", "type": "AtprotoPersonalDataServer", "serviceEndpoint": "https://fibercap.us-west.host.bsky.network" } ] } इस दस्तावेज़ में, यदि कोई व्यक्ति नए PDS पर जाता है, तो PDS URL को अपडेट किया जाना चाहिए। उदाहरण के लिए, मेरा वर्तमान PDS पर उपलब्ध है। https://fibercap.us-west.host.bsky.network PDS के साथ संचार के माध्यम से किया जाता है, जो एक सरल HTTP/JSON-आधारित प्रोटोकॉल है। प्रत्येक कॉल का रिवर्स DNS-शैली नाम होता है। उदाहरण के लिए, अगर मैं अपना पूरा रिपॉजिटरी प्राप्त करना चाहता हूँ, तो मैं इसे इस तरह से कर सकता हूँ: XRPC https://fibercap.us-west.host.bsky.network/xrpc/com.atproto.sync.getRepo?did=did:plc:4x7rynvskplz54p5pofj3jxa विधि का उपयोग रिपॉजिटरी को क्वेरी करने के लिए किया जाता है, और इसमें पैरामीटर होता है। com.atproto.sync.getRepo did ब्लूस्काई टीम ने एपीआई और डेटा संरचनाओं को परिभाषित करने के लिए नामक एक JSON-आधारित वर्णनात्मक भाषा विकसित की। यह JSON स्कीमा के समान है और इसका उपयोग टाइप-सेफ इंटरफेस बनाने के लिए किया जा सकता है, उदाहरण के लिए, टाइपस्क्रिप्ट के लिए, जो प्रोटोकॉल के कार्यान्वयन को सरल बनाता है। लेक्सिकॉन मेरी पिछली 10 पोस्ट प्राप्त करने के लिए निम्नलिखित कॉल का उपयोग किया जा सकता है: https://public.api.bsky.app/xrpc/app.bsky.feed.getAuthorFeed?actor=thebojda.bsky.social&limit=10 परिणाम इस प्रकार है: { "feed": [ { "post": { "uri": "at://did:plc:4x7rynvskplz54p5pofj3jxa/app.bsky.feed.post/3le3esbhaek2l", "cid": "bafyreihagjnwrkakkajkaighz6kyqww3wznvbdcqpnl4wbfnpwrr2xwmmi", "author": { "did": "did:plc:4x7rynvskplz54p5pofj3jxa", "handle": "thebojda.bsky.social", "displayName": "Laszlo Fazekas", "avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:4x7rynvskplz54p5pofj3jxa/bafkreibxd4mx7rehgkc77diautavpcota6jotzkaagp4zv2t6w3a52n7sq@jpeg", "labels": [], "createdAt": "2024-11-24T01:36:39.146Z" }, "record": { "$type": "app.bsky.feed.post", "createdAt": "2024-12-24T21:20:56.891Z", "embed": { "$type": "app.bsky.embed.external", "external": { "description": "MyETHMeta is a decentralized metadata service for Ethereum accounts. It is something like Gravatar. There are no backend servers, you fully own your data.", "thumb": { "$type": "blob", "ref": { "$link": "bafkreifoezhkdtesuhkaoqt3yml44geozu6ckg2cfffg5t5omob2bdjmo4" }, "mimeType": "image/jpeg", "size": 669185 }, "title": "MyETHMeta v2 – Some Improvements on the Gravatar for Your Ethereum Account | HackerNoon", "uri": "https://hackernoon.com/myethmeta-v2-some-improvements-on-the-gravatar-for-your-ethereum-account" } }, "facets": [ { "features": [ { "$type": "app.bsky.richtext.facet#link", "uri": "https://hackernoon.com/myethmeta-v2-some-improvements-on-the-gravatar-for-your-ethereum-account" } ], "index": { "byteEnd": 270, "byteStart": 240 } } ], "langs": [ "en" ], "reply": { "parent": { "cid": "bafyreieipk3kgwonq3h62wyadauplzgcpdgcg6pxp2776oeldcstgybwha", "uri": "at://did:plc:4x7rynvskplz54p5pofj3jxa/app.bsky.feed.post/3le3es7kzmc2l" }, "root": { "cid": "bafyreieipk3kgwonq3h62wyadauplzgcpdgcg6pxp2776oeldcstgybwha", "uri": "at://did:plc:4x7rynvskplz54p5pofj3jxa/app.bsky.feed.post/3le3es7kzmc2l" } }, "text": "MyETHMeta is a decentralized metadata service for Ethereum accounts. It is something like Gravatar, but here the metadata and your profile picture is assigned to your Ethereum address. There are no backend servers, you fully own your data. hackernoon.com/myethmeta-v2..." }, "embed": { "$type": "app.bsky.embed.external#view", "external": { "uri": "https://hackernoon.com/myethmeta-v2-some-improvements-on-the-gravatar-for-your-ethereum-account", "title": "MyETHMeta v2 – Some Improvements on the Gravatar for Your Ethereum Account | HackerNoon", "description": "MyETHMeta is a decentralized metadata service for Ethereum accounts. It is something like Gravatar. There are no backend servers, you fully own your data.", "thumb": "https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:4x7rynvskplz54p5pofj3jxa/bafkreifoezhkdtesuhkaoqt3yml44geozu6ckg2cfffg5t5omob2bdjmo4@jpeg" } }, "replyCount": 0, "repostCount": 0, "likeCount": 0, "quoteCount": 0, "indexedAt": "2024-12-24T21:21:02.466Z", "labels": [] }, "reply": {} }, {}, {}, {}, {}, {}, {}, {}, {} ] } प्रत्येक तत्व में एक पोस्ट और उससे संबंधित उत्तर होते हैं। जैसा कि पहले बताया गया है, प्रत्येक पोस्ट रिपॉजिटरी में एक रिकॉर्ड है और इसका अपना विशिष्ट पहचानकर्ता है। प्रत्येक पोस्ट को एक अद्वितीय URI असाइन किया जा सकता है, जिसमें DID, संग्रह का नाम और पोस्ट ID शामिल है। ऊपर दिए गए उदाहरण में, URI इस तरह दिखता है: at://did:plc:4x7rynvskplz54p5pofj3jxa/app.bsky.feed.post/3le3esbhaek2l इसका मतलब यह है कि पोस्ट मेरे DID से जुड़े रिपॉजिटरी में संग्रह के भीतर स्थित है और इसकी आईडी है। app.bsky.feed.post 3le3esbhaek2l यूआरआई के अलावा, पोस्ट का सीआईडी भी शामिल है, जो सामग्री से उत्पन्न एक अद्वितीय हैश है। ये तत्व मिलकर रिपॉजिटरी का अद्वितीय कमिट हैश बनाते हैं। एक और उल्लेखनीय पहलू सेक्शन है, जो पोस्ट से जुड़ी एक छवि को संदर्भित करता है। यह एक ब्लॉब-प्रकार की वस्तु है जो किसी संग्रह से संबंधित नहीं है। सिस्टम बड़ी फ़ाइलों (जैसे छवियाँ, वीडियो, आदि) को ब्लॉब के रूप में संग्रहीत करता है, जिन्हें उनके हैश (CID) का उपयोग करके व्यक्तिगत रिकॉर्ड (जैसे, पोस्ट) में संदर्भित किया जा सकता है। thumb जो लोग रिपॉजिटरी और रिकॉर्ड्स की संरचना को गहराई से देखना चाहते हैं, उनके लिए टूल काफी उपयोगी हो सकता है। इस छोटे से प्रोग्राम से, आप संपूर्ण उपयोगकर्ता रिपॉजिटरी डाउनलोड कर सकते हैं और संग्रह और उनके रिकॉर्ड को JSON प्रारूप में एक निर्देशिका में निकाल सकते हैं। यह आपको यह देखने की अनुमति देता है कि ब्लूस्काई डेटा को कैसे संग्रहीत करता है। गो-रेपो-एक्सपोर्ट जानकारी का एक और अच्छा स्रोत क्रोम डेवटूल्स है। वेबसाइट पर, आप API कॉल को स्पष्ट रूप से देख सकते हैं और देख सकते हैं कि क्लाइंट साइड PDS के साथ कैसे संचार करता है। https://bsky.app और, ज़ाहिर है, आधिकारिक दस्तावेज़ भी हैं। और के पास बेहतरीन दस्तावेज़ हैं, और पर, आप क्लाइंट और सर्वर दोनों पक्षों के लिए उदाहरण और स्रोत कोड पा सकते हैं। AT प्रोटोकॉल BlueSky GitHub जब मैंने पहली बार AT प्रोटोकॉल के बारे में पढ़ा, तो मेरा पहला विचार यह था कि हमें के साथ-साथ एक और फ़ेडरेटेड प्रोटोकॉल की आवश्यकता क्यों है। हालाँकि, AT प्रोटोकॉल में वास्तव में कुछ ऐसी विशेषताएँ हैं जो इसके अस्तित्व को पूरी तरह से उचित ठहराती हैं। बेशक, प्रोटोकॉल सही नहीं है और संभवतः इसमें महत्वपूर्ण विकास होगा। उदाहरण के लिए, यदि हम वास्तव में सेंसरशिप-प्रतिरोधी नेटवर्क बनाना चाहते हैं, तो यह केंद्रीकृत डोमेन नाम प्रणाली पर निर्भर नहीं हो सकता। एक ब्लॉकचेन-आधारित नामकरण प्रणाली, जो वास्तव में सेंसरशिप-प्रतिरोधी है, मूल्यवान होगी (मैं इस पर एक प्रस्ताव भी लिख सकता हूँ)। ActivityPub ब्लूस्काई के वर्तमान में अनुमानित 20-30 मिलियन उपयोगकर्ता हैं, जो एक्स (ट्विटर) के उपयोगकर्ता आधार की तुलना में बहुत कम है, लेकिन यह अभी भी महत्वपूर्ण है। भविष्य में क्या होगा, इस बारे में कोई भी निश्चित रूप से नहीं कह सकता। फ़ेडरेटेड नेटवर्क एक बड़ा फ़ायदा है, और इस बात पर गहन बहस चल रही है कि क्या ट्विटर या फ़ेसबुक जैसे वैश्विक संचार प्लेटफ़ॉर्म का स्वामित्व किसी एक इकाई के पास होना बहुत ज़्यादा शक्ति है। मैं इस संभावना को पूरी तरह से खारिज नहीं करूँगा कि ब्लूस्काई एक दिन अपने प्रतिस्पर्धियों से आगे निकल सकता है। अच्छे फ़ीड जनरेटर और प्रभावी समुदाय निर्माण के साथ, यह हासिल किया जा सकता है। किसी भी मामले में, इस परियोजना पर ध्यान देना और यह समझना कि यह कैसे काम करता है, इसके लायक है।