XMPP یک پروتکل پیام فوری طولانی مدت است، اما یک پلت فرم خصوصی نیست. بنابراین چگونه می توانید پیام ها را هنگام استفاده از XMPP رمزگذاری کنید؟
XMPP شاید تا آنجایی است که می توانید از یک پلت فرم چت قفل شده دریافت کنید. این یک استاندارد پیام رسانی فوری است که شبیه به ایمیل است. هرکسی که یک حساب XMPP در یک سرور ثبت میکند، میتواند با هر شخص دیگری در سرور دیگری ارتباط برقرار کند.
به طور پیش فرض، این چت های XMPP رمزگذاری نشده هستند. اینجاست که OMEMO وارد میشود. با رمزگذاری سرتاسر OMEMO، XMPP امنیت قابل مقایسه با Signal، Session و هر برنامه چت خصوصی دیگری که نام آن را شنیدهاید، ارائه میکند، اما بدون خطرات مرتبط با وابستگی به یک پلت فرم متمرکز.
XMPP چیست؟
XMPP یک پروتکل پیام رسانی فوری است که از سال 1999 وجود داشته است و در ابتدا با نام Jabber شناخته می شد. مخفف عبارت Extensible Messaging and Presence Protocol است. این یک استاندارد باز برای ارسال پیام از طریق اینترنت بدون نیاز به داشتن حساب کاربری در همان سرور است. شخصی می تواند یک حساب کاربری در یک ارائه دهنده ثبت کند و به شخصی که در جای دیگری ثبت نام کرده است پیام ارسال کند.
به همین دلیل، نام های کاربری XMPP شبیه آدرس های ایمیل است. برای مثال، اگر یک حساب کاربری با talks.im ایجاد کنید، نام شما به عنوان “username@conversations.im” ظاهر می شود.
توجه: Conversations.im محبوبترین برنامه XMPP را برای اندروید ارائه میکند. اگر از آیفون استفاده می کنید ChatSecure گزینه خوبی است.
ممکن است قبلاً از XMPP بدون اطلاع از آن استفاده کرده باشید. چندین پلتفرم چت محبوب به عنوان مشتریان XMPP مانند Google Talk و Facebook Messenger شروع به کار کردند. WhatsApp با استفاده از نسخه سفارشی XMPP کار می کند. برخی از پروژهها، مانند ابزار کنفرانس ویدیویی رایگان و منبع باز Jitsi، از XMPP در backend نیز استفاده میکنند.
OMEMO چیست؟
به طور پیش فرض، XMPP یک روش ارتباط خصوصی به خصوص نیست. در حالی که ترافیک به و از یک سرور ممکن است رمزگذاری شده باشد، هر کسی که سرور را اجرا کند میتواند پیامها را بخواند.
خوشبختانه XMPP قابل توسعه است (در نهایت در نام آن وجود دارد). OMEMO افزونه ای است که رمزگذاری سرتاسری را به XMPP اضافه می کند. اولین نیست روشهای دیگر مانند OpenPGP و OTR (ارتباط خارج از رکورد) اول شدند. آنچه OMEMO ارائه می دهد صرفاً رمزگذاری سرتاسر نیست، بلکه رمزگذاری چند انتها به چند انتها است. از این رو نام، OMEMO Multi-End Message و Object Encryption (بله، یک مخفف بازگشتی است).
رمزگذاری چند انتها به چند انتها به چه معناست؟ به طور خلاصه، به این معنی است که وقتی از لپ تاپ خود پیامی ارسال می کنید، همچنان می توانید آن پیام را از تلفن خود و هر دستگاه دیگری که وارد حساب کاربری خود شده اید مشاهده کنید. سپس گیرنده می تواند پیام را در هر یک از دستگاه های خود نیز مشاهده کند. با این حال OMEMO پیام ها را روی سرورهای مختلف رمزگذاری می کند، بنابراین فقط شما و گیرنده مورد نظر می توانید آنها را بخوانید.
OMEMO در ابتدا بر اساس پروتکل سیگنال بود که Open Whisper Systems برای برنامه سیگنال ایجاد کرد. برخلاف پروتکل سیگنال، که متمرکز است، OMEMO باید رمزگذاری را در چندین سرور مدیریت کند. OMEMO به عنوان یک پروژه تابستانی کد Google در سال 2015 برای پیاده سازی رمزگذاری چند انتها به چند انتها در برنامه Android Conversations آغاز شد.
OMEMO فقط به پیام های خصوصی اجازه نمی دهد. همچنین می توانید فایل ها را به صورت خصوصی انتقال دهید.
نحوه فعال کردن OMEMO
اگر ارائه دهنده شما از آن پشتیبانی کند، OMEMO به راحتی روشن می شود. وقتی با کسی چت میکنید، به دنبال نماد قفل بگردید. اگر پیامهای شما رمزگذاری نشده باشند، قفل و در صورت وجود قفل به نظر میرسد. برای انتخاب از میان گزینه های رمزگذاری موجود، روی این قفل کلیک کنید.
میتوانید پیامهای رمزگذاریشده را برای هر کسی که حسابش با ارائهدهندهای است که از رمزگذاری پشتیبانی میکند، ارسال کنید و مشتری آنها نیز باید از آن پشتیبانی کند. در غیر این صورت، مشتری شما ممکن است پیام خطایی را نشان دهد که به شما اطلاع می دهد رمزگذاری به عنوان یک گزینه در دسترس نیست. با این حال، XMPP سالهاست که از رمزگذاری پشتیبانی میکند و اکثر ارائهدهندگان نیز از آن پشتیبانی میکنند. یک وب سایت وجود دارد که پشتیبانی OMEMO را در مشتریان XMPP ردیابی می کند.
مزایا و معایب رمزگذاری OMEMO
XMPP با رمزگذاری OMEMO سرتاسر یک راه خصوصی برای برقراری ارتباط است، اما مانند هر روشی، هم نقاط قوت و هم نقاط ضعف خود را دارد.
نقاط قوت XMPP با رمزگذاری OMEMO
- XMPP غیرمتمرکز است. برخلاف گزینههای جایگزین مانند سیگنال یا WhatsApp، شما به عملیاتی بودن یک ارائهدهنده وابسته نیستید. چیزی به نام “خاموش بودن XMPP” وجود ندارد. سرورهای یک ارائه دهنده ممکن است از کار بیفتند، اما دیگران به ارسال و دریافت پیام ادامه خواهند داد.
- XMPP و OMEMO استانداردهای باز هستند. هر کسی می تواند کد را بخواند تا بفهمد چگونه کار می کند. این به دیگران اجازه می دهد تا کد را بررسی کرده و تأیید کنند که پیام ها واقعاً خصوصی هستند.
- محرمانه بودن جلو. این بدان معناست که کلیدهای رمزگذاری در دستگاه شما ذخیره میشوند و هر دستگاهی که در زمان ارسال پیامها به پیامها دسترسی نداشته باشد، نمیتواند پیام را مشاهده کند.
- می توانید از هر مشتری XMPP با پشتیبانی OMEMO استفاده کنید. شما به هیچ اپلیکیشنی وابسته نیستید. و شما این آزادی را دارید که رابطی را پیدا کنید که مناسب شما باشد.
- زمان تست شده XMPP برای مدت طولانی در دسترس بوده است. OMEMO جوان تر است، اما بعید است به این زودی ها از بین برود. از این گذشته، روشهای رمزگذاری قدیمیتر همچنان در دسترس هستند. اما اگر زمان تغییر به شکل جدیدی از رمزگذاری فرا رسیده باشد، میتوانید بدون نیاز به حذف حساب XMPP موجود خود این کار را انجام دهید.
ضعف XMPP با رمزگذاری OMEMO
- پیام ها به طور پیش فرض رمزگذاری نمی شوند. شما باید OMEMO را برای حساب خود فعال کنید. سپس میتوانید پیامها را بر اساس هر چت رمزگذاری کنید یا همه پیامهای خود را رمزگذاری کنید. مورد دوم ارتباط شما را به افرادی محدود می کند که دارای حساب های XMPP با پشتیبانی OMEMO هستند.
- محرمانه بودن جلو. اگر قبل از ورود به تلفن خود از لپ تاپ خود پیامی ارسال کنید، تلفن شما نمی تواند پیام را مشاهده کند. این با آن چیزی که بیشتر ما انتظارش را داریم متفاوت است.
- تکنولوژی قدیمی تر ارتباطات را محدود می کند. XMPP با OMEMO بیشتر موارد ضروری را به صورت کاربردی ارائه می دهد، اما ممکن است تجربه کمی قدیمی به نظر برسد. شما توانایی «لایک کردن» پیامها، پاسخ دادن به هر پیام فردی با یک شکلک، یا شروع رشتههای درون یک چت را ندارید.
- نسبتا ناشناخته اکثر مردم هرگز نام XMPP یا OMEMO را نشنیده اند. اگر میخواهید با دوستان و اعضای خانواده چت کنید، فرصت خوبی وجود دارد که باید هر فرد را با این فناوری آشنا کنید و آنها را متقاعد کنید که هر بار یک نفر تغییر را انجام دهند. در حالی که برنامههایی وجود دارند که فرآیند را بسیار ساده میکنند، مانند Quicksy و Conversations برای Android، ممکن است برای آشنا کردن افراد با برنامهای مانند Signal که به تدریج معروفتر میشود، کار آسانتری داشته باشید.
آیا باید از XMPP با رمزگذاری OMEMO استفاده کنید؟
XMPP و OMEMO به طور یکسان ابزارهای ساده ای با نام های بسیار فنی هستند. هر کسی که مهارت فنی کافی برای ایجاد یک حساب ایمیل و استفاده از یک سرویس گیرنده ایمیل داشته باشد، مهارت های لازم برای استفاده از XMPP و شروع ارسال پیام های خصوصی را دارد.
سوالات مهم مانند همیشه این است: با چه کسی می خواهید صحبت کنید و آیا آنها با شما تغییر خواهند کرد؟ اگر نه، لزوماً به طور پیشفرض به یک پلتفرم جریان اصلی برنگردید، و همچنین به سیگنال گیر نکردهاید. Matrix امنیت و تمرکززدایی مشابه را ارائه می دهد، اما با تجملات مدرن تر.