رمزگذاری ارتباطات در پیام‌رسان‌ها - بخش اول

یکی از سوال‌های متداول اغلب کاربران ابزارهای ارتباطی (مانند کاربران پیام‌رسان‌ها)، امنیت مکالمات است. موضوعی که به شیوه‌‌های استاندارد رمزنگاری(Cryptography) و رمزگذاری (Encryption)، همینطور پروتکل‌های ارتباطی و دیگر موارد نرم‌افزاری استفاده شده در ساختار و کارکرد پیام‌رسان‌ها باز می‌گردد.

تا به امروز دانشمندان علم رمزنگاری شیوه‌های مختلفی را برای حفظ محرمانگی داده‌ها به‌هنگام تبادل اطلاعات مورد بررسی قرار داده‌اند و می‌توان گفت که الگوریتم‌های رمزگذاری زیادی در آزمون‌های آن‌ها با شکست مواجه شده‌اند. حال آنکه برآیند تحقیقات این حوزه نشان می‌دهد استفاده از شیوه‌های استاندارد آزموده شده و قدرتمند تا حد قابل قبولی مطمئن هستند که در حفاظت از داده‌ها موثر باشند. از همین رو، یکی از شیوه‌های استاندارد و مورد استفاده برای رمزنگاری اطلاعات و داده‌ها در ارتباطات پیام‌رسان‌ها، رمزگذاری سرتاسری End-to-End Encryption است. سازوکاری که در آن تنها افراد دو طرف ارتباط قادر به خواندن پیام‌ها و دسترسی به اطلاعات هستند.

در شیوه رمزگذاری سرتاسری (E2EE)، شنود کلیدهایی که برای رمزگذاری مکالمات استفاده می‌شوند برای هیچ فردی از جمله ارائه‌دهندگان خدمات مخابراتی/اینترنتی و همچنین سرویس‌دهندگان انتقال اطلاعات میان کاربران و پیام‌رسان امکان‌پذیر نخواهد بود.

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

خوشبختانه در حال حاضر برخی از پیام‌رسان‌ها از این استاندارد برای رمزگذاری اطلاعات کاربران خود استفاده می‌کنند و می‌توان از بابت امنیت آن‌ها تا حد قابل قبولی مطمئن بود. پیام‌رسان‌هایی مانند Signal و WhatsApp و Wire و ChatSecure و... .

اما سوالی که برای اغلب کاربران پس از مطالعه این توضیحات مسلما مطرح می‌شود، آن است که این استاندارد و قاعده درمورد پیام‌رسان تلگرام نیز صدق می‌کند یا خیر؟ پاسخ کوتاه این سوال شاید کمی گیج کننده باشد، چون جواب آن هم خیر است و هم بله!

سازندگان تلگرام تنها برای حالت گفت‌وگوی مخفی در این پیام‌رسان، رمزگذاری سرتاسری را در نظر گرفته‌اند و به بیان ساده‌تر در صورت استفاده از سکرت چت «Secret Chat» تمام مکاتبات شما رمزگذاری استاندارد و مطمئن می‌شود. اما نکته مهم درباره تگرام این است که در صورت ارسال و دریافت اطلاعات در حالت عادی که پیش‌فرض این پیام‌رسان است، اطلاعات و مکالمات شما قابل کشف و شنود خواهند بود. همچنین باید یادآور شد که تمام داده‌های تبادل شده در گروه‌ها و کانال‌ها از این قاعده مستثنی نبوده و می‌توان آن‌ها را نیز ناامن قلمداد کرد. زیرا به‌شیوه‌های مختلف، هر چند پیچیده و سخت، می‌توان به آن‌ها دسترسی یافت.


توضیحات فنی

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

۱- به ادعای تلگرام، این پیام‌رسان از یک رمزگذاری ابداعی میان سرور و کاربر (Server-Client Encryption) برای داده‌های گفت‌وگوهای عمومی، اطلاعات گروه‌ها و کانال‌ها استفاده می‌کند. رمزگذاری جدیدی که تلگرام آن را به عنوان پروتکل ارتباطی مورد استفاده خود تحت عنوان « MTProto» معرفی کرده است.

حال آنکه این قضیه تاثیر آنچنانی در ایمنی قطعی اطلاعات در این پیام‌رسان نداشته و می‌توان صراحتا گفت که در حال حاضر اغلب پیام‌رسان‌ها (چه امن و چه ناامن) از قاعده تقریبا مشابهی برای ایمن سازی داده‌های تبادلی میان سرور و کاربران خود استفاده می‌کنند. استانداردی که عموما آن را در پروتکل‌های HTTPS, TCP UDP می‌توان یافت.

نکته مهم درباره پروتکل MTProto این است که هرچند تلگرام در طراحی و ساخت آن از یک مرحله اضافی برای مبهم‌سازی اطلاعات (obfuscation) استفاده کرده است، اما این شیوه قابل شکستن است و نمی‌توان آن را به تنهایی، تضمین کننده امنیت اطلاعات در بستر ارتباطی دانست. مساله‌ای که محققان دانشگاه فنی چک در شهر پراگ، با کشف آسیب‌پذیری در آن، موفق به اجرای حملاتی برای رمزگشایی اطلاعات شده‌اند. (مطالعه مقاله و مشاهده ویدیو)

۲- رمزگذاری دوم تلگرام، رمزگذاری میان کاربر با کاربر (Client-Client Encryption) است. حالتی که به گفته خود تلگرام، تنها در گفت‌وگوهای مخفی «Secret Chat» مورد استفاده قرار می‌گیرد. روشی که تنها آن را می‌توان مطمئن و امن دانست.