ماتریکس یک پروتکل آزاد است! به این معنی که شما میتوانید از این پروتکل برای ارتباطات تحت شبکه مانند پیامرسان، اینترنت چیز ها (IoT) و هر چیز دیگری استفاده کنید. از ویژگی های این پروتکل، رمزنگاری سر تا سر (E2E) است، این ویژگی باعث میشود حتی سرور های ماتریکس که داده های ما را منتقل میکنند هم توانایی دسترسی به داده ها را نداشته باشند.
پیام رسان ماتریکس
یکی از اصلی ترین استفاده های ماتریکس، پیامرسان است. این پیامرسان به صورت غیر متمرکز عمل میکند. با این روش سانسور/فیلتر شدن سرور هایی که پیام ها را ذخیره و منتقل میکنند غیر ممکن میشود! چرا که این سرور ها قابل تغییر هستند و هر زمان که یکی از این سرور ها سانسور شود، شما همچنان میتوانید با سرور دیگری مجدد اکانت بسازید و در ارتباط بمانید. و یا حتی از سرور خودتان استفاده کنید!
ماتریکس چگونه کار میکند؟
هر سرور در ماتریکس HomeServer نامیده میشود، شما به عنوان Client انتخاب میکنید از هر HomeServer که میخواهید استفاده کنید.
HomeServer ها میتوانند سرور های عمومی مثل سروری که خود ماتریکس راه اندازی کرده است باشد و یا میتواند سرور های شخصی خودتان باشد.
زمانی که شما از یک HomeServer استفاده میکنید، این به آن معنی است که کلاینت شما به اکانتتان در آن HomeServer متصل میشود.
زمانی که شما پیامی ارسال میکنید، پیامتان به HomeServer شما ارسال میشود، HomeServer بعد از دریافت پیام از شما، آن را به کاربران مشترک در آن روم ارسال میکند.
در ماتریکس هر نوع چت(شخصی و یا گروه) را room مینامند
در واقع زمانی که شما پیامی ارسال میکنید HomeServer پیام را برای کاربران ارسال میکند. این کاربران ممکن است کاربران همان HomeServer و یا کاربران HomeServer های دیگری باشند. پس پیام شما اگر برای کاربران یک HomeServer دیگر باشد، Homeserver شما بعد از دریافت پیامتان، پیام را برای HomerServer های دیگر ارسال خواهد کرد. و آن HomeServer پیام را دریافت و به کاربران مربوطه ارسال خواهد کرد.
زمانی که شما پیامی را برای کاربر HomeServer دیگری ارسال میکنید، پیام شما تنها در HomeServer خودتان ذخیره نخواهد شد. بلکه در HomeServer کاربری/کاربرانی که پیام را به آن ارسال کرده اید هم ذخیره میشود.
اصطلاحات در ماتریکس
در ماتریکس چند اصطلاح وجود دارد که آشنایی با آنها به درک بهتر این پروتکل کمک میکند.
HomeServer: سروری که شما در آن اکانت خود را میسازید. این سرور پیام های شما را ذخیره و ارسال میکند.
Client: برای اینکه کاربران بتوانند از ماتریکس استفاده کنند، باید از ابزاری که از این پروتکل بهره میبرد استفاده کنند. به اینگونه از ابزار ها کلاینت گفته میشود.
Event: هر نوع داده ای که توسط ماتریکس ارسال شود event نامیده میشود. برای مثال ممکن است شما پیام ارسال کنید و یا به یک پیام واکنش نشان دهید.
Room: قسمتی است که کاربر با آن event ها را دریافت و ارسال میکند. event ها به room ارسال میشوند، و تمامی کاربران مشترک در room میتوانند event ها را دریافت کنند.
Space: Space نوعی خاصی از room برای دسته بندی دیگر room ها است. space میتواند هم شامل گروه و هم کاربران عادی شود.
Bridge: پل یا Bridge به راهکاری گفته میشود که شما میتوانید با استفاده از آن بین ماتریکس و پیامرسان های دیگر چت کنید. برای مثال شما با استفاده از Brdige تلگرام میتوانید با ماتریکس به کاربران تلگرام پیام ارسال و دریافت کنید.
چگونه از ماتریکس استفاده کنیم؟
برای استفاده از ماتریکس، شما کافیست یکی از کلاینت های آن را نصب و به یک HomeServer متصل شوید.
یکی از محبوب ترین کلاینت ها، کلاینت Element است، که شامل نسخه Android، IOS، Windows, Linux، Mac و البته نسخه تحت وب میشود.
استفاده از المنت مانند هر پیامرسان دیگری ساده است، اما اگر نیاز به کمک دارید این لینک میتواند کمکتان کند.
چطور از سرور شخصی خودمان استفاده کنیم؟
شما مجبور نیستید سرویس ماتریکس را روی سرور شخصی خودتان اجرا کنید مگر اینکه:
- سرور های عمومی ماتریکس سانسور و از دسترس خارج شده باشند
- و یا شاید نگران دیتایی هستید که روی سرور های عمومی ماتریکس از طرف شما ذخیره میشود!(گرچه پیام ها تماما رمزنگاری سر تا سر میشود)
- و یا حتی شاید میخواهید پیام رسان داخلی شرکت/خانه خودتان را داشته باشید
- و یا البته ممکن است بخواهید Bridge بسازید.
نسخه سرور ماتریکس Synapse نام دارد، شما میتوانید با استفاده از ایمیج داکر رسمی ماتریکس، سرور شخصی خودتان را اجرا کنید.
نتیجه گیری
هدف من از نوشتن این پست در این روز های تلخ این بود که ابزاری را معرفی کنم تا ما با وجود قطعی های متعدد اینترنت و قطع دسترسی ما از سرور های خارجی، کماکان در ارتباط نگهدارد و صدایمان را…
اگر روزی دسترسی ما از اینترنت قطع شد، کاری که لازم است برای در ارتباط ماندن انجام بدهیم این است که یک سرویس ماتریکس داخلی راه اندازی کنیم.