پیشنهادی برای حمایت دولت از پیام‌رسان‌های بومی

تاکنون تلاش‌های دولت ایران برای حفظ استقلال داده‌ای در موضوع پیام‌رسان‌های اینترنتی تنها معطوف به مسدود کردن دسترسی به شبکه‌های خارجی و نیز حمایت از پیام‌رسان‌ها و شبکه‌های متمرکز داخلی بوده است. چنین تلاش‌هایی برای ترغیب کاربران ایرانی به مهاجرت به پیام‌رسان‌های بومی تاکنون ناموفق بوده‌اند و این موضوع چندان هم دور از انتظار نیست: تنها راه موفقیت برای هر شبکهٔ متمرکز این است که بخش اعظم کاربران جامعهٔ هدف عضوش شوند؛ اتفاقی که به خاطر وجود اثر شبکه‌ای نه تنها برای شبکه‌های داخلی، بلکه حتی برای شبکه‌های تازه‌وارد بین‌المللی با بودجه‌های عظیم نیز بسیار نامحتمل است؛ اوضاع برای شبکه‌های داخلی از این هم بدتر است، اگر بدانیم که بخشی از کاربران ایرانی (ولی قطعاً نه همهٔ آن‌ها) اساساً نمی‌خواهند به شبکه‌ای بپیوندند که داده‌هایش در کنترل نهادهای دولتی است.

من در این نوشته نوع متفاوتی از حمایت دولتی را پیشنهاد می‌کنم که مشکلات بالا را ندارد، برای همهٔ کاربران جذاب است، و در آیندهٔ بلندمدت حتی جایگزین بهتری برای شبکه‌های پیام‌رسانی کنونی است: حمایت از ساخت و گسترش شبکه‌های غیرمتمرکز. این شبکه‌های کوچک و محلی باید پروتکل‌ها و استانداردهای یکسانی را برای انتقال پیام‌ها به کار ببرند و به همین دلیل، با عضو شدن روی هرکدامشان باید بتوان به همهٔ کاربران شبکه‌های مشابه دیگر نیز پیام فرستاد؛ چیزی مانند ایمیل، ولی برای پیام‌رسانی. جزئیات بیشتر دربارهٔ سودمندی چنین شبکه‌هایی را در مقاله‌ام به نام «گفت‌وگویی دربارهٔ پیام‌رسان‌های بومی» بخوانید.

شمای کلی الگوی حمایتی

دولت با برگزاری یک فراخوان عمومی، به همهٔ افراد یا شرکت‌هایی که موارد زیر را پیاده کنند، بسته‌های تشویقی (مالی یا تسهیلاتی) ارائه می‌دهد:

۱. طراحی، پیاده‌سازی، و اجرای زیرساخت یک شبکهٔ پیام‌رسانی در سمت کارساز (سرور) که یک رابط برنامه‌نویسی (API) باز داشته باشد، به طوری که هر کسی بتواند با پیروی از مستندات شبکه در سرور عضو شده، به آن متصل شود، و پیام‌رسان سازگاری برای آن طراحی و پیاده‌سازی کند.

۲. پیاده‌سازی رابط برنامه‌نویسی (API) برای ارتباط میان‌سروری، به طوری که دیگران نیز بتوانند زیرساخت مشابهی را پیاده‌سازی کنند تا کاربران یک سرور بتوانند به کاربران سرورهای مشابه دیگر پیام بفرستند.

۳. پیاده‌سازی پیام‌رسان‌هایی که بتوانند به نرم‌افزارهای سمت سرور متصل شده، از ویژگی‌های متعارف پیام‌رسان‌های اینترنتی پشتیبانی کنند، و نیازهای ویژهٔ کاربران ایرانی را نیز برآورند.

تبصره‌ها

  • در صورتی که هر کدام از پیاده‌سازی‌ها با یک پروانهٔ نرم‌افزاری آزاد۱ منتشر شوند، مقدار بستهٔ تشویقی مربوط به آن دو برابر خواهد شد.
  • اگر پیاده‌سازی‌های سمت سرور بتوانند به توزیع رسمی یکی از پیاده‌سازی‌های مشابه و پرکاربرد موجود (مانند XMPP, Matrix, Tox یا Jami) افزوده شوند و آن را بهبود دهند (مثلاً برای افزایش سرعت یا پایداری یا برای افزودن ویژگی‌های جانبی برای کاربران فارسی‌زبان)، مقدار بستهٔ تشویقی ۵۰٪ بیشتر خواهد شد (در مقابل آن‌هایی که زیرساخت سرور سفارشی و خودساخته‌ای را از صفر پیاده می‌کنند).
  • اگر پیاده‌سازی‌های سمت سرور بتوانند ویژگی‌های یکی از پیاده‌سازی‌های مشابه و پرکاربرد موجود را گسترش دهند و به عنوان بخشی از استاندارد (پروتکل) پیام‌رسانی غیرمتمرکز موجود در جامعهٔ میزبان پذیرفته شوند، مقدار بستهٔ تشویقی ۱۰۰٪ بیشتر خواهد شد.
  • مقدار بستهٔ تشویقی برای پیاده‌سازی پیام‌رسان‌های تازه‌ای که کاملاً با یکی از پروتکل‌های موجود برای پیام‌رسانی غیرمتمرکز (مانند XMPP یا Matrix) سازگار باشند ۵۰٪ بیشتر خواهد بود (در مقابل آن‌هایی که به پیاده‌سازی‌های سمت سرور سفارشی و خودساخته متصل می‌شوند).

انگیزهٔ اصلی من برای تبصره‌های بالا این است که کسب‌وکارهای ایرانی به جای اختراع دوبارهٔ چرخ، از زیرساخت‌های موجود در دنیا برای پیام‌رسانی نامتمرکز کمک بگیرند؛ این زیرساخت‌ها شامل تعاریف، پروتکل‌ها، و استانداردهای موجود برای پیام‌رسانی غیرمتمرکز مانند XMPP یا Matrix، و همچنین پیاده‌سازی‌های نرم‌افزاری این استانداردها (که با پروانه‌های آزاد منتشر شده‌اند) هستند. این موضوع به دو دلیل بسیار مفید است: (۱) زمان لازم برای پیاده‌سازی و رفع اشکال نرم‌افزارها بسیار کمتر خواهد شد، و (۲) کاربران این نرم‌افزارها از همان آغاز خواهند توانست با جامعهٔ بزرگی از کاربران دنیا (که هم‌اینک پیام‌رسان‌هایی سازگار با این استانداردها را به‌کار می‌برند) در ارتباط باشند.

روشن است که پیشنهاد بالا تنها یک شمای کلی و خام برای حمایت دولتی از شبکه‌های غیرمتمرکز است و تنها با هدف روشن‌کردن جهت‌گیری‌های مفید برای چنین حمایتی تنظیم شده است. من هیچ تجربه‌ای در مدیریت منابع مالی یا برگزاری فراخوان‌های عمومی این چنینی ندارم. هدف من از این نوشته فقط روشن کردن بخش فنی ماجراست: اینکه علی‌الاصول چه نوع پیشرفت‌های فنی‌ای باید تشویق شوند و وزن تشویقی مناسب برای انواع گوناگون این پیشرفت‌ها تقریباً چه قدر باید باشد. یک برنامهٔ واقع‌بینانه برای این کار باید با بررسی‌های بسیار دقیق‌تر و با درنظر گرفتن جزئیات بسیار زیاد دیگری (که در این نوشته مجال و سواد پرداختن به آن‌ها نیست) تنظیم و اجرا شود.

۱ یک پروانهٔ (مجوز) نرم‌افزاری آزاد پروانه‌ای است که در فهرست پروانه‌های بنیاد نرم‌افزارهای آزاد از آن به عنوان یک پروانهٔ آزاد (Free Software License) نام برده شده باشد.

راهنمای عملی پیام‌رسانی غیرمتمرکز

با پیروی از این راهنما یک پیام‌رسان اینترنتی روی تلفن هوشمند خود خواهید داشت که مثل واتس‌اپ و تلگرام کار می‌کند، ولی در ضمن به حریم خصوصی و آزادی شما نیز احترام می‌گذارد.

راه حلی که در این‌جا معرفی می‌کنیم،

نرم‌افزاری که معرفی خواهیم کرد (بر پایهٔ XMPP و OMEMO) یک راه حل امن و قدرتمند برای پیام‌رسانی است که همه می‌توانند به کارش ببرند. توصیه می‌کنیم که مرحله‌های این راهنما را همراه با دوستی انجام دهید که می‌خواهید با او پیام‌رسانی به این روش را آغاز کنید. با این روش می‌توانید به یکدیگر کمک کنید و بلافاصله پس از پیروی از این راهنما مطمئن شوید که واقعاً کار می‌کند.

آنچه نیاز دارید

شما به یک گوشی هوشمند اندرویدی نیاز خواهید داشت. اپ‌های مشابهی برای گوشی‌های اپل هم موجودند، ولی ما این‌جا تنها روی اندروید تمرکز می‌کنیم. بهترین حالت این است که روی گوشی اندرویدی شما هیچ یک از اپ‌های انحصاری (غیر آزاد) گوگل نصب نشده باشد.

مرحلهٔ یکم: اپ پیام‌رسان را نصب کنید

اگر نسخهٔ رایگان این اپ را بخواهید، باید آن را از مخزن اف-دروید (F-Droid) نصب کنید. اف-دروید شبیه فروشگاه گوگل‌پلی است، ولی همهٔ اپ‌های روی آن آزاد (متن‌باز) هستند. در ادامه روش نصب اف-دروید را نوشته‌ایم. اگر نسخهٔ گوگل‌پلی را بخواهید، باید چیزی بین ۲ تا ۳ دلار برایش پول بدهید. به دنبال اپی به نام Conversations بگردید (شناسهٔ یکتای اپ این است:eu.siacs.conversations).

روش نصب اف-دروید: با مرورگر گوشی خود به سایت https://f-droid.org بروید. روی دکمهٔ بزرگ بارگیری (Download) بزنید تا برنامهٔ نصب‌کنندهٔ مخزن اف-دروید را بگیرید. آن را نصب و اجرا کنید. برای بار نخست، اف-دروید به پایگاه دادهٔ مرکزی‌اش وصل می‌شود و اطلاعات همهٔ اپ‌هایش را دریافت می‌کند که چند دقیقه طول می‌کشد. وقتی کارش تمام شد، دنبال نام Conversations بگردید و نصبش کنید.

مرحلهٔ دوم: پیام‌رسان را اجرا کنید و رویش حسابی بسازید

برنامهٔ Conversations را که نصب کرده بودید اجرا کنید.

اگر خودتان یک حساب (سازگار با XMPP یا همانJabber) دارید، در این مرحله نام کاربری و رمز خود را وارد کنید. و گرنه روی یکی از سرورهای عمومی حسابی بسازید (فهرست ۱، فهرست ۲).

روش ساخت حساب: نام کاربری دلخواه خود را به همراه نشانی سروری که انتخاب کرده‌اید، به شکل یک نشانی ایمیل در بخش Jabber ID بنویسید. رمز دلخواهتان را نیز بنویسید. روی گزینهٔ «ساخت حساب تازه در سرور» (Register new account on server) تیک بزنید.

وقتی روی دکمهٔ «ادامه» (Next) زدید، فرایند ساخت حساب تازه در سرور ممکن است تا ۲۰ ثانیه طول بکشد. اگر همه چیز به خوبی پیش برود، شما چیزی شبیه این را خواهید دید:

فعلاً روی دکمهٔ چشم‌پوشی (skip) بزنید و به مرحلهٔ بعد بروید.

مرحلهٔ سوم: پیام بفرستید!

تبریک می‌گوییم! شما الان یک حساب پیام‌رسانی برای خودتان ساخته‌اید. بیایید یک گفتگو را آغاز کنیم. روی دکمهٔ + در صفحهٔ اصلی برنامه کلیک کنید.

اگر فهرست تماس‌های شما خالی است، نشانی دوست خود را در این مرحله وارد کنید:

نشانی دوست خود را وارد کنید که باید چیزی شبیه این باشد: your-friend@a-jabber-server.com

تمام شد! شما الان می‌توانید گفتگو با دوستتان را آغاز کنید.

این نوشته ترجمهٔ آزادی از مقالهٔ زیر است:

Mathias Renner, Whatsapp-like chat messaging that respects your privacy, Last updated on 27. August 2019