راهنمای شیوهنامه پیامرسانی ماتریکس
این صفحه به راهنمای «شیوهنامهٔ پیامرسانی ماتریکس» میپردازد.
ماتریکس چیست؟[ویرایش]

ماتریکس یک شیوهنامه (پروتکل) پیامرسانی نامتمرکز و آزاد است. نامتمرکز بودن به این معنی است که افراد میتوانند کارساز خانگی (homeserver) خودشان را در یک شبکه راه بیندازند و نیز با افراد داخل کارسازهای خانگی دیگر در ارتباط باشند. یک مزیت نامتمرکز بودن به این است که افراد به یک کارساز متکی نیستند.
امنیت[ویرایش]
ماتریکس برای تبادل اطلاعات در اتاقهای رمزگذاری شده و پیام خصوصی از رمزنگاری پیشرفتۀ سرتاسری (انتها-به-انتها) (E2EE) استفاده میکند. پیامهای اتاقهایی که رمزگذاری نشده باشند و فرادادهها (اطلاعاتی همچون زمان یا نشانی ارسال پیام) نیز از هیچ نوع رمزنگاریای استفاده نمیکنند. در اتاقهای رمزگذاری شدهٔ ماتریکس، افراد فقط در صورتی میتوانند به پیامهای این اتاقها دسترسی داشته باشند که کلید رمزگشایی آنها در اختیارشان باشد. این بدین منظور است که حتی صاحب کارساز هم نمیتواند به این پیامها دسترسی داشته باشد؛ بنابراین «هر اتاق رمزگذاری شدهای امن است، حتی اگر کارساز خانگی آن اتاق دست وزیر اطلاعات باشد». کلید رمزگشایی در تنظیمات ماتریکس، قابل ذخیره و دریافت است.
لزوم استفاده[ویرایش]
- نرمافزار آزاد بودن
- نامتمرکز بودن
- استفاده از رمزنگاری پیشرفتۀ سرتاسری (انتها-به-انتها)
- دشوار بودن فیلترینگ آن در ایران (بهدلیل تعدد کارسازها)
- وجود کارخواهها و کارسازهای زیاد
کارخواهها[ویرایش]
ماتریکس چندین کارخواه (client) برای انواع سامانههای عامل (سیستمعامل) و شبکۀ وب دارد که به دست جامعه توسعه یافته است. فهرست کامل این کارخواهها را میتوانید در این صفحه ببینید.

کارسازهای خانگی[ویرایش]
ماتریکس تعداد خیلی زیادی کارساز خانگی عمومی دارد که میتوانید از آنها استفاده کنید و به شبکۀ ماتریکس وصل شوید و با اعضای دیگر کارسازهای خانگی در ارتباط باشید. هر کارساز خانگی میتواند سیاست و شرایط خودش را داشته باشد؛ بنابراین قبل از عضو شدن، حتماً سیاست آن را مطالعه کنید. فهرست کارسازهای خانگی ماتریکس را میتوانید با جستوجو در اینترنت پیدا کنید. در زیر چند کارساز خانگی رایج آورده شده است:
در شرایط اینترانت(قطع اینترنت و دردسترس بودن تنها شبکه داخلی کشور)، یک کارساز خانگی ایرانی هم زده شده است. نشانی:
مقایسه[ویرایش]
مقایسه با واتساپ[ویرایش]
«واتساپ» نرمافزار آزاد نیست و ناامن است. واتساپ ادعا میکند که رمزنگاری سرتاسری دارد و امن است؛ اما این پیامرسان کلید رمزگشایی پیامها را در اختیار کاربر قرار نمیدهد.
مقایسه با تلگرام[ویرایش]
کارخواه «تلگرام» یک نرمافزار آزاد است و به این معنی است که از شما جاسوسی نمیکند؛ اما کارسازش آزاد نیست و به این معنی است که تلگرام یک پیامرسان نامتمرکز نیست و کاربران امکان ساخت کارسازهای خانگی خود و حاکمیت بر آن را ندارند. همچنین تلگرام ادعا میکند که کلیدهای رمزگشایی پیامها را در کارسازهای کشورهای مختلف قرار داده است و برای رمزگشایی پیامها، به مجوز چندین دولت احتیاج دارد؛ اما این ادعا منطقی و قابل اثبات نیست.
فیلترینگ[ویرایش]
شبکهٔ ماتریکس، بهدلیل نامتمرکز بودن آن قابل فیلتر و مسدود شدن نیست. تنها کارسازهای خانگی ماتریکس میتوانند به صورت تکی فیلتر شوند؛ برای مثال اگر کارساز خانگی matrix.org فیلتر شود، کارساز mozilla.org وجود دارد و با آن، میتوان به اتاقهای داخل کارسازهای خانگی دیگر وصل شد. همچنین کارسازهای خانگی میزبانی شده در ایران هم، با امنیت کامل، میتوانند شرایط اینترانت را (برای مثال در شرایط اعتراضات)، دور بزنند؛ دقیقاً مثل پروکسیهای داخلی «تلگرام».
سؤالات متداول[ویرایش]
تغییر کارساز خانگی[ویرایش]
برای تغییر کارساز خانگی (Home server) میتوانید از این وبگاه استفاده کنید.
ارسال پیام به کاربر[ویرایش]
برای ارسال پیام باید شناسهٔ کاربری که میخواهید به آن پیام دهید را داشته باشید. قالب شناسههای کاربری در ماتریکس به این صورت است:
دکمه و بخش ارسال پیام در کارخواهها متفاوت است. برای مثال در کارخواه «المنت» اندروید با زدن دکمۀ «+» و نوشتن شناسهٔ کاربر دلخواهتان میتوانید به آن پیام دهید.
جستوجو یا عضو شدن در یک اتاق[ویرایش]
برای عضو شدن، دیدن و یا جستوجوی یک اتاق، در اکثر کارخواهها میتوانید با زدن دکمۀ «#» این عمل را انجام دهید. قالب شناسهٔ اتاقهای ماتریکس نیز به این صورت است:
پل زدن بین ماتریکس و تلگرام[ویرایش]
برای اینکه بین ماتریکس و تلگرام پیامها ردوبدل شود، میتوان از این ربات استفاده کرد. کد منبع این ربات در اینجا موجود است. همچنین برای پل زدن بین اتاق رمزنگاری شده، میتوان از این ربات استفاده کرد؛ اما این کار از نظر امنیتی منطقی نیست و پیشنهاد میشود فقط در اتاقهای رمزنگاری نشده پل زده شود.
اشکال زدایی[ویرایش]
دریافت پیام KEYS_WITHHELD[ویرایش]
پیام «ناتوان در رمزگشایی: KEYS_WITHHELD» ریشه از فعال کردن یک گزینه در تنظیمات کارخواهِ فرد ارسالکننده دارد. گزینه «رمزنگاری فقط به نشستهای تأیید شده» در بخش «تنظیمات - حریم خصوصی» این امکان را میدهد که فقط به کاربرانی که تأییدشان (Verify) کردهاید اجازه خواندن پیامهایتان را بدهید.
چهکار کنم؟[ویرایش]
- تایید کردن:
اگر این پیام را از شخصی دریافت کردید، یا اینکه آن شخص میگوید که این پیام را دیده است، یکی از شما باید از قسمت «درباره کاربر» همدیگر را تأیید کنید تا از این پس به پیامهای یکدیگر دسترسی داشته باشید. برای اینکار، باید هر دو برخط (آنلاین) باشید. دو روش برای تأیید وجود دارد؛ یکی اسکن «QR Code» و دیگری، تأیید با شکلک (ایموجی).
- غیرفعال کردن «رمزنگاری فقط به نشستهای تأیید شده»:
برای غیرفعال کردن گزینۀ «رمزنگاری فقط به نشستهای تأیید شده»، به قسمت «تنظیمات - حریم خصوصی» بروید و آن را غیرفعال کنید. اینگونه دیگر نیازی به تأیید کردن نیست و همه میتوانند از این پس پیامهایتان را ببینند.
توسعهدهندگان[ویرایش]
راهاندازی کارساز خانگی ماتریکس[ویرایش]
برای راهاندازی یک کارساز خانگی ماتریکس، به یک کارساز ماتریکس نیاز دارید.
سیناپس[ویرایش]
معروفترین کارساز ماتریکس، سیناپس (Synapse) است. سیناپس با زبان پایتون نوشته شده است. برای نصب آن، اینجا را ببینید.
همچنین یکی از انشعابهای (Fork) مفید سیناپس، matrix-docker-ansible-deploy نام دارد که حاوی کتابخانههای مفید است. برای نصب آن، اینجا را ببینید.
دندریت[ویرایش]
یک کارساز دیگر ماتریکس، دندریت (Dendrite) است که با هدف رفع اشکالات سیناپس (مانند مصرف زیاد حافظهٔ موقت) توسعه داده شده است. در حال حاضر، دندریت در فاز بتاست و در حال توسعه است و بعضی از ویژگیهای سیناپس را ندارد. برای نصب آن، اینجا را ببینید.
فرهنگ لغت[ویرایش]
- کارساز خانگی (Home server): به یک کارساز رایانهای مستقر در یک محل مسکونی اطلاق میشود، که از طریق شبکهٔ محلی یا اینترنت، به سایر دستگاههای شبکهٔ خانگی یا خارج از شبکهٔ خانگی، خدمات ارائه میدهد.
- کارخواه (Client): یک نرمافزار کاربردی است که از طریق یک شبکه به خدمات یک سامانهٔ رایانهای دیگر به نام کارساز دسترسی دارد. برای وصل شدن به یک کارساز خانگی ماتریکس، به یک کارخواه نیاز است.
- انشعاب (Fork): به رونوشت کردن از یک پروژه برای توسعهٔ آن در راستای هدفی خاص (مثلاً افزودن قابلیتی که جزء اهداف توسعهدهندگانش نیست یا حذف ویژگیای که بعضی آن را نمیپسندند) انشعاب میگویند.