
Axiom का लक्ष्य एक पूरी तरह से अज्ञात, विकेंद्रीकृत और सेंसरशिप-प्रतिरोधी सोशल मीडिया प्लेटफ़ॉर्म प्रदान करना है। इसे संभव बनाने के लिए, आर्किटेक्चर को प्रोटोकॉल और क्लाइंट के लिए सख्ती से विभाजित किया गया है। यह रिपॉजिटरी प्रोटोकॉल, स्मार्ट कॉन्ट्रैक्ट और एक Ethereum Layer 2 नेटवर्क पर एक मानकीकृत डेटा संरचना को परिभाषित करता है।
42161https://arb1.arbitrum.io/rpc (या कोई कस्टम Alchemy/Infura एंडपॉइंट)0xc11CFf8111e8b1F055eba095Efb679a38Abe6b63(नोट: Axiom एक UUPS अपग्रेडेबल प्रॉक्सी आर्किटेक्चर का उपयोग करता है। सभी क्लाइंट इंटरैक्शन हमेशा इस प्रॉक्सी पते पर निर्देशित होने चाहिए, कभी भी अंतर्निहित कार्यान्वयन अनुबंध पर नहीं।)
क्लाइंट को कभी भी स्मार्ट कॉन्ट्रैक्ट की स्थिति चर से सीधे प्रोटोकॉल पोस्ट पढ़ने का प्रयास नहीं करना चाहिए (गैस बचाने को प्राथमिकता देने के कारण, सामग्री स्थिति में संग्रहीत नहीं होती)। इसके बजाय, क्लाइंट को ब्लॉकचेन इवेंट्स को इंडेक्स करना होगा।
प्रोटोकॉल में डेटा प्रकाशित करने के लिए, क्लाइंट को प्रॉक्सी अनुबंध पर publishAxiom फ़ंक्शन को कॉल करते हुए एक ऑन-चेन लेनदेन सबमिट करना होगा।
Axiom का लक्ष्य एक पूरी तरह से गुमनाम, विकेंद्रीकृत और सेंसरशिप-प्रतिरोधी सोशल मीडिया प्लेटफ़ॉर्म प्रदान करना है।
इसे संभव बनाने के लिए, आर्किटेक्चर सख्ती से विभाजित है: आधार (प्रोटोकॉल) और क्लाइंट (सॉफ़्टवेयर)। यह रिपॉजिटरी उस आधार को परिभाषित करती है—एक स्मार्ट कॉन्ट्रैक्ट और एक एथेरियम L2 नेटवर्क पर एक मानकीकृत डेटा संरचना।
प्रोटोकॉल प्लेटफ़ॉर्म की नींव स्थापित करता है:
Axiom उन देशों के उपयोगकर्ताओं के लिए वास्तविक अभिव्यक्ति की स्वतंत्रता सक्षम करने के लिए डिज़ाइन किया गया है जहां संचार प्रतिबंधित है। प्रोटोकॉल तीन सुरक्षा स्तरों के बीच अंतर करता है। यह मानता है कि उपयोगकर्ता जानते हैं कि उनकी विशिष्ट स्थिति के लिए कौन सा सुरक्षा स्तर उपयुक्त है।
सभी स्तरों के लिए, ओनियन रूटिंग (जैसे, Tor) सख्ती से अनिवार्य है। वाणिज्यिक RPC प्रदाताओं (जैसे Infura या Alchemy) के साथ संचार करने से प्रेषक का IP पता प्लेनटेक्स्ट में लीक हो जाता है। असंतुष्टों के लिए जीवन-धमकी देने वाली OPSEC कमजोरियों को बंद करने के लिए, क्लाइंट को लेनदेन को RPC नोड्स तक विशेष रूप से Tor नेटवर्क के माध्यम से रूट करना आवश्यक है।
स्तर 3 पर संदेशों के लिए, सभी क्लाइंट को अंतर-संचालन सुनिश्चित करने और सुरक्षा से समझौता करने से बचने के लिए निम्नलिखित क्रिप्टोग्राफिक मानकों का सख्ती से पालन करना होगा।
Axiom एक हाइब्रिड पेलोड वितरण (ABI स्प्लिट) का उपयोग करता है। स्मार्ट कॉन्ट्रैक्ट को महंगे डेटा प्रारूपों को अनपैक करने से रोकने के लिए, डेटा को ट्रांसमिशन से पहले अलग किया जाता है:
uint8 _level) और आरंभीकरण वेक्टर (bytes _iv) को सीधे स्मार्ट कॉन्ट्रैक्ट में पैरामीटर के रूप में पारित किया जाता है, क्योंकि इसे अपने सुरक्षा नियमों को लागू करने के लिए उनकी आवश्यकता होती है।Axiom बाइट बचाने के लिए कुंजियों के रूप में एकल अक्षरों का उपयोग करता है। लेखक (msg.sender) और टाइमस्टैम्प (block.timestamp) को छोड़ दिया जाता है, क्योंकि स्मार्ट कॉन्ट्रैक्ट इन मानों को छेड़छाड़-प्रूफ तरीके से निकालता है।
t (प्रकार): पूर्णांक। कार्रवाई का प्रकार।c (सामग्री): स्ट्रिंग/बाइट्स। टेक्स्ट, नाम या सिफरटेक्स्ट।h (हैशटैग/टैग): सरणी। वैकल्पिक। वर्गीकरण (उप-चैनल) के लिए उपयोग किया जाता है।m (संदेश संकेत): बाइट्स (लंबाई 2)। केवल स्तर 3। फ़ज़ी बकेटिंग के लिए उपयोग किया जाने वाला 2-बाइट HMAC हैश।r (उत्तर-से): बाइट्स। वैकल्पिक। एक संदर्भित पोस्ट का लेनदेन हैश।t फ़ील्ड)0 = प्रोफ़ाइल अपडेट (वॉलेट पते को c फ़ील्ड में पढ़ने योग्य नाम से लिंक करता है)1 = पोस्ट (मानक संदेश)2 = उत्तर (r को मूल पोस्ट के हैश की आवश्यकता है)3 = पसंद (r को पोस्ट के हैश की आवश्यकता है)4 = नापसंद (प्रकार 3 को वापस लेता है)5 = रीट्वीट / रिपोस्ट (r को पोस्ट के हैश की आवश्यकता है)6 = अन-रीट्वीट (प्रकार 5 को वापस लेता है)h फ़ील्ड)c) की तरह ही एन्क्रिप्ट किया जाना चाहिए। बाहरी पर्यवेक्षकों के लिए, टैग पूरी तरह से अदृश्य हैं (डार्क रूटिंग)।m फ़ील्ड)क्योंकि टैग स्तर 3 पर एन्क्रिप्ट किए जाते हैं, क्लाइंट को सैद्धांतिक रूप से हर एक संदेश को डिक्रिप्ट करने का प्रयास करना होगा (ट्रायल डिक्रिप्शन)। CPU ओवरलोड को रोकने के लिए, Axiom संदेश संकेतों का उपयोग करता है: