رونمایی واتساپ از رمزگذاری سرتاسری برای بیش از یک میلیارد کاربرش
نوشته: بیل بادینگتون (EFF)
رمزگذاری سرتاسری (end-to-end) به تازگی بسیار فراگیر شده است. واتساپ که شرکتی پیامرسان و متعلق به فیسبوک است، در ۳۱ مارچ تماسها و چت رومهای گروهی خود را بهروز کرد؛ در این بهروزرسانی رمزگذاری سرتاسری پیغامها بدون اینکه از پیش اطلاعرسانی شود، به صورت پیشفرض گنجانده شده بود.
آنها روز سهشنبه تغییری را اعلام عمومی کردند که بر اساس آن به بیش از ۱ میلیارد کاربر فعال ماهانهی واتساپ ضمانت داده میشود که با یک رمزگذاری قدرتمند از اطلاعاتشان محافظت شود – چه وقتی که به همدیگر پیغام میدهند، یا فایلهایی به هم میفرستند، در چت رومهای گروهی مشارکت میکنند، یا مستقیماً با هم تماس میگیرند.
بگذارید مشخص کنیم که این به چه معناست؟ این یعنی واتساپ در یک حرکت سریع و ناگهانی، بدنهی کاربرانی که از ارتباط رمزگذاری شدهی سرتاسری استفاده میکردند را از کسانی که به مبادلات پنهانی میپرداختند، کسانی که برای لذت و سرگرمی از ارتباط کدگذاریشده استفاده میکردند، و افشاگران، به بخش بزرگی از جمعیت دنیا افزایش داد. از هفتهی آینده صدها هزار نفر کاربر برای اولین بار از ارتباط سرتاسری رمزگذاریشده استفاده خواهند کرد.
نه تنها از [اطلاعات] کاربران محافظت میشود، بلکه این رمزگذاری [حفاظی] مستحکم است. واتساپ در یک سند تخصصی که در ۴ آوریل منتشر شده، با جزئیات توصیف میکند که در پس رمزگذاری تبادل اطلاعات، هنگامی که کاربران به هم پیام میدهند چه خواهد گذشت. این رمزگذاری براساس پروتکل “سیگنال” (née Axolotl) است محصول “Open Whisper Systems” و از الگوریتم دو ضامنه بهره میبرد که در صورت لو رفتن کلیدهای جلسهای، محرمانگی مکالمات پیشین کاربر را به خطر نمیاندازد. این به این معنی است که حتی اگر مهاجمی موفق به یافتن کلیدهای جلسهای، رمزگذاریشده در اپلیکیشن شود، قادر نخواهد بود به ارتباطات گذشته دسترسی پیدا کند و این مکالمات محافظت خواهند شد. پروتکل سیگنال برای ساختن و انتقال پیام از سازههای رمزگذاری قوی و آزمایش شدهای مثل ECDH (از طریق Curve25519 ) استفاده میکند.
به غیر از امکانات خدماتی رمزگذاری سرتاسری، تمامی ارتباطات بین نرمافزار کاربری و سرورهای واتساپ هم توسط Noise Pipes کاری از “Noise Protocol Framework” رمزگذاری شده است.
آنها که با “سیگنال” آشنا هستند، روش کار رمزگذاری واتساپ را مانند سیگنال خواهند یافت. هردو نرمافزار، سعی میکنند برای کاربری آسان، زیرساخت رمزنگاری را از دید کاربران خود خارج کنند و آن را به صورتی کمنظیر و زیرپوستی (عادی) در اینترفیسِ نرمافزارشان ادغام کنند. البته تفاوتهایی بینشان وجود دارد؛ تفاوت اصلی در نحوهی اثباتِ اصالت کاربران است.
نرمافزارهای [رمزگذاری] سرتاسری ارتباطی در گذشته بر بررسی صحت اثرانگشت کاربران به صورت غیرخودکار تکیه میکردند. اگر آلیس میخواست از هویت باب مطمئن شود، باید از او میخواست که “اثر انگشت” اش (چکیدهای از کلید رمز عمومی شخص) را برای او بخواند (یا کد تصویری QR اش را به او نمایش دهد). اگر آلیس همان اثر انگشت را از باب داشت، میتوانست مطمئن باشد که کدی که از اینترنت بدست آورده به اشتباه یا از روی عمد با اثر انگشت کسی دیگر جابهجا نشده است (اگر این دو یکی نباشند باید به نیت نفر دیگر شک کرد). در ادامه هم باب از آلیس میخواست که کلیدش را برای او بخواند.
واتساپ تصمیمی جالب گرفته تا این پروسه را در نرمافزارش وارد نکند. به جای آن، یک کد QR ثابت و منحصر به فرد را به هر تماس اختصاص میدهد. بدین ترتیب آلیس و باب هر دو یک کد را با دستگاه خودشان اسکن میکنند. احتمالاً به این علت که به لحاظ شهودی منطقیتر است که هر دو صحت یک کد را مورد بررسی قرار دهند (که اتفاقاً از ترکیب اثر انگشتهای هر دو به دست آمده است). چیزی که در مورد این تصمیم جالب است این است که نشان میدهد واتساپ به این فکر کرده که چطور ایدهی شناسایی [طرف مراوده] از طریق بررسی کلید را برای میلیونها نفر آسان کند. در نقطهی مقابل پلتفرم پیامرسان شرکت اپل که سال گذشته برایشان بدنامی به بار آورد، هم از رمزگذاری سرتاسری استفاده میکند، ولی به هیچوجه اجازه شناسایی از طریق بررسی کلید طرف مراوده را به کاربرها نمیدهد. واتساپ میخواهد به دنیا ثابت کند که نیازی به قربانی کردن ایدهی باارزش اثبات اصالت کاربران نیست تا اینکه نرمافزار قابل استفاده و راحت باشد.
برای اینکه هویت کسانی که با آنها تماس دارید حفظ شود، بهتر است که مطمئن شوید که آنها هم از آخرین واتساپ به روزشده استفاده میکنند؛ نسخهای از واتساپ که از امکانات امنیتی جدید استفاده میکند. در اندروید شما میتوانید این را از مشاهدهی جزئیات کاربر بفهمید:
یک قفل سبز نشاندهندهی این است که ارتباط شما رمزگذاریشده خواهد بود. بعد با کلیک بر روی قفل میتوانید یک کد امنیتی را همانطور که بالاتر گفته شد مورد بررسی قرار دهید:
با بررسی این تصویر میتوانید هویت افراد مورد نظرتان را تشخیص دهید و آنها نیز هویت شما را تأیید کنند.
افرادی که دغدغهی امنیت دارند، باید تغییراتی در مشخصات پیشفرضشدهی نرمافزار بدهند: مثل فعال کردن هشدارهای امنیتی. این تغییر تضمین میکند زمانی که کلید رمز فرد مورد تماس عوض میشود، اخطاری به شما فرستاده شود تا شما بدانید که باید کدهای امنیتی ارتباطتان را دوباره تأیید کنید. سیگنال این هشدارها را به صورت پیشفرض فعال دارد، در حالیکه برای واتساپ کاربر باید آنها را از حالت غیرفعال خارج کند. برای این منظور در اندروید، به قسمت مشخصات (Settings) بروید، سپس به حساب کاربری (account) و بعد بخش امنیت (Security) و در آخر دکمهی “Show security notifications” را به سمت راست بگردانید:
ما نیز نمرهی پیامرسانی امن مربوط به واتساپ را از ۶ به ۷ ستاره ارتقا دادیم. متأسفانه واتساپ همچنان به لحاظ برنامهنویسی یک سیستم بسته باقی مانده، به این معنا که یک ناظر مستقل نمیتواند کد برنامهنویسی و امنیتاش را بررسی کند. به همین دلیل، اگر شما از سیگنال برای ارتباط با دیگران استفاده میکنید، نگهاش دارید! استفاده از یک محصول کاملاً باز (با کدهای قابل دسترسی) و رایگان بهتر است. اما به علت گستردگی استفاده از واتساپ شما احتمالاً کسانی را در فهرست تماسهای خود دارید که هیچ گاه فکر نمیکردید که با آنها رابطهی رمزگذاریشدهی سرتاسری داشته باشید. برای محافظت از امنیت و حریم خصوصی آنها واتساپ را نصب کرده و هنگامی که میخواهید با آنها تماس بگیرید از آن استفاده کنید. از این کار خوشحال خواهید شد!
*نوشتهای که خواندید ترجمهی مقالهای بود که برای نخستین بار در سایت Electronic Frontier Foundation منتشر شد.