پیامرسان SimpleX یه پیامرسان غیرمتمرکز با رمزنگاری سرتاسری (E2EE) هست که روی پلتفرمهای مختلفی قابل دسترسیه (دسکتاپ، اندروید، iOS) اما نسخه وب نداره. ساختارش به این شکله که کاربرها هرکه کدوم یک یا چندین پروفایل میتونن داشته باشن و ا ن پروفایلها میتونن یک آدرس قابل اشتراکگذاری داشته باشن. دیگران با اون آدرس میتونن کاربر رو از طریق یک سرور واسط پیدا کنن و توی اون سرور بعد از مبادله کلیدهای رمزنگاری، به همدیگه پیام بدن. این پیامرسان مفهومی مثل user ID و username نداره و کلاً هیچی روی سرور ذخیره نمیشه؛ الا پیامهای رمزنگاریشده که توی RAM سرور نشستن و منتظر رسیدن به مقصدشون هستن. قابلیت استفاده از چندین سرور به صورت همزمان رو داره و اگر سرورها به همدیگه امکان دسترسی داشته باشن (مثلاً در شرایط فعلی، سرورها هر دو در خارج باشن) این امکان هست که وقتی طرفین روی سرور متفاوتی حضور دارن، پیامشون به همدیگه برسه.
سرور به علت این که کاری جز مسیریابی پیامهای رمزنگاری شده انجام نمیده، منابع کمی نیاز داره.
پروسه راهاندازی خیلی پیچیدهای نداره و به چندین روش میشه انجامش داد. که توی مستندات اصلی برای
سرور SMP و
سرور XFTP شرح داده شده. اما چندنکته برای حل مشکلات در پی گرفتن اون روشها میگم که کار رو راحتتر کنه براتون.
اول این که انتقال فایلها ممکنه براتون سخت باشه. خصوصاً که روی کانکشنها محدودیت حجمی و زمانی گذاشتن و نمیشه فایل حجیم منتقل کرد. به همین علت، میتونید از دستور
split و دستور
cat استفاده کنید و به جای یه فایل، تکههای فایل رو بفرستید و بعد سر هم کنید.
split -b 100k myfile split-m-
# result: split-m-aa, split-m-ab, ...
scp split-m-* root@...
ssh root@...
# on the server:
cat split-m-* > myfile
rm split-m-*
نکته بعدی برای نصب با داکر و پادمنه. خود داکر و پادمن رو میتونید از mirrorهای ابرآروان و وزارت ارتباطات و... روی سرورهای داخلی نصب کنید و ایمیج کانتینرها رو هم از mirrorهای داکر داخلی مثل runflare بگیرید. ما سرویسهای متعددی رو همینطوری توی قطعی اینترنت بالا آوردیم.
نکته دیگه این که SimpleX نیاز به سرتیفیکیت معتبر نداره مگر بخواید یه web server هم داشته باشه برای اطلاعرسانی در مورد خودش. که ما نیازی بهش نداریم و میتونید صرف نظر کنید.