مبهمسازی در برابر رمزگذاری
این دو واژه اغلب چنان به کار میروند که انگار یک معنا دارند. ندارند، و همین تفاوت تعیین میکند کدام پروتکل برای یک شبکهٔ مشخص درست است.
به پرسشهای متفاوتی پاسخ میدهند
- رمزگذاری
- به این پرسش پاسخ میدهد: «آیا ناظری میتواند این را بخواند؟» محتوا را چنان دگرگون میکند که تنها دارندهٔ کلید بتواند بازیابیاش کند. تضمینش ریاضی است، بهخوبی شناخته شده، و یک مجموعهرمز مدرن و درست پیادهسازیشده نقطهٔ ضعف هیچ سامانهٔ واقعی نیست.
- مبهمسازی
- به این پرسش پاسخ میدهد: «آیا ناظری میتواند بفهمد این چیست؟» بخشهایی از اتصال را که رمزگذاری آشکار میگذارد — ساختار دستدادن، اندازهٔ بستهها، زمانبندی، فراداده — چنان شکل میدهد که جریان بهعنوان یک پروتکل مشخص جلب توجه نکند. تضمینش تجربی است و فقط در برابر دستهبندهایی برقرار است که برای دیدن از پسِ آن بهروز نشدهاند.
این عدمتقارن اهمیت دارد. رمزگذاری یا کار میکند یا شکسته است، و صرفاً به این دلیل که کسی دقیقتر نگاهش کرده افت نمیکند. مبهمسازی یک رقابت است: تا وقتی کار میکند که طرف مقابل دستهبندهایش را بهروز نکرده باشد، و به همین دلیل بهطور پیوسته نگهداری میشود نه اینکه یکبار عرضه شود.
دشمنان متفاوت
| دغدغه | رمزگذاری | مبهمسازی |
|---|---|---|
| کسی که ترافیک شما را روی وایفای مشترک میخواند | حلش میکند | بیربط |
| گردانندهٔ شبکه که ثبت میکند چه سایتهایی را میبینید | تا حدی — نام میزبان همچنان درز میکند | کمک میکند، با حذف آن نشانه |
| فیلتری که ترافیک شناساییشده بهعنوان VPN را میاندازد | کمکی نمیکند | تمام موضوع همین است |
| گردانندهای که جریان رمزگذاریشده را بهطور اصولی میاندازد | کمکی نمیکند | کمک میکند، اگر جریان شبیه ترافیک مجاز باشد |
| کسی که نقطهٔ پایانی مقصد شما را در اختیار گرفته | کمکی نمیکند | کمکی نمیکند |
ستون نخست را از بالا به پایین بخوانید و الگو روشن است: رمزگذاری دربارهٔ محرمانگی در برابر ناظر است، مبهمسازی دربارهٔ بقا در برابر دروازهبان. پروتکلی که یکی را دارد و دیگری را ندارد به شیوهای مشخص و قابلپیشبینی شکست میخورد.
مبهمسازی در عمل چگونه انجام میشود
سه راهبرد کلی وجود دارد و در هزینه و دوامشان با هم تفاوت دارند.
- تصادفیسازی
- ترافیک را شبیه هیچچیز کن — بدون سرآیند ثابت، بدون ساختار قابلتشخیص، بایتهای یکنواختِ تصادفی از نخستین بسته. این تطبیق الگو را شکست میدهد. در برابر شبکهای که هر چیزِ نشناخته را مسدود میکند شکست میخورد، چون ترافیک دستهبندیناپذیر دقیقاً همان چیزی است که چنین شبکهای میاندازد.
- تقلید
- ترافیک را شبیه یک پروتکل مجاز مشخص کن، معمولاً HTTPS. این در برابر شبکههای با رد پیشفرض دوام میآورد، اما فقط اگر تقلید در همهٔ لایهها وفادار باشد؛ تقلید ناقص از نبودِ تقلید هم آشکارتر است، چون خودِ ناهماهنگی یک امضاست.
- تونلزنی درون خودِ چیز واقعی
- پروتکل مجاز را تقلید نکن — واقعاً از آن استفاده کن و تونل را درون یک نشست حقیقی از آن حمل کن. تقلیدی در کار نیست که بد از آب دربیاید. هزینهاش سربار و اغلب گذردهی است.
مبهمسازی چه هزینهای دارد
هیچکدام از اینها رایگان نیست، و بهتر است بهجای وانمودکردن به نبودِ هزینه، دربارهٔ آن روشن باشیم.
- گذردهی. لایهگذاری بستهها برای پنهانکردن اندازهشان یعنی فرستادن بایتهایی که چیزی حمل نمیکنند. پیچیدن یک تونل در پروتکل دوم به هر بسته سرآیند میافزاید.
- تأخیر. لایههای بیشتر یعنی پردازش بیشتر در هر دو سر، و تنظیم ریتم بستهها برای پنهانکردن زمانبندی یعنی عامدانه آنها را بهمحض آمادهشدن نفرستادن.
- شکنندگی. یک تقلید باید همگام با چیزی که تقلید میکند پیش برود. مرورگرها تغییر میکنند؛ لایهٔ مبهمسازیای که نگهداری نشود خودش به یک اثرانگشت متمایز تبدیل میشود.
- پیچیدگی. اجزای متحرک بیشتر یعنی جاهای بیشتر برای اینکه یک اشکال پیادهسازی همان نشانهای را درز دهد که این لایه برای حذفش وجود دارد.
روی شبکهای بدون فیلتر این هزینهها چیزی نمیخرند، و به همین دلیل مبهمسازی باید چیزی باشد که بتوانید خاموشش کنید. اجرای همیشگی آن بهصورت پیشفرض، کارایی واقعی را با محافظت در برابر مشکلی معاوضه میکند که شاید اصلاً نداشته باشید.
این در عمل چه معنایی دارد
- روشن کنید در برابر چه چیزی دفاع میکنید. محافظت از یک نشست روی شبکهٔ نامطمئن یک کافه مسئلهٔ رمزگذاری است و هر پروتکل شایستهای پیشاپیش حلش کرده است.
- اگر ترافیک بهجای خواندهشدن مسدود میشود، مسئلهٔ مبهمسازی است و انتخاب پروتکل اهمیت زیادی دارد.
- رویکردهایی را که در همهٔ لایهها سازگارند بر آنهایی که صرفاً غیرعادیاند ترجیح دهید. غیرعادیبودن خودش یک نشانه است.
- پیکربندی ساده و سریع را برای شبکههایی که فیلتر نمیکنند در دسترس نگه دارید، و پیکربندی پنهان را فقط جایی به کار ببرید که هزینهاش را جبران میکند.
پرسشهای پرتکرار
آیا VPN مبهمشده امنتر است؟
به معنای رمزنگارانه نه — مبهمسازی هیچ محرمانگیای فراتر از آنچه رمزگذاری پیشاپیش فراهم کرده اضافه نمیکند. آنچه میافزاید مقاومت در برابر شناسایی و مسدودسازی است. اگر چیزی شما را مسدود نمیکند، هزینهای بدون فایده است.
آیا مبهمسازی VPN را کند میکند؟
معمولاً تا حدی بله. لایهگذاری، لایههای پروتکلی اضافی و تنظیم عامدانهٔ ریتم همگی پهنای باند مصرف میکنند یا تأخیر میافزایند. میزانش به فن بهکاررفته بستگی دارد؛ تونلزنی درون یک پروتکل واقعی معمولاً بیشترین هزینه را دارد.
آیا مبهمسازی قابلتشخیص است؟
هر فن مبهمسازی مشخصی سرانجام قابلتشخیص است، چون یک الگوست و الگوها آموختنیاند. به همین دلیل این حوزه پیوسته در حرکت است، و به همین دلیل ادعای غیرقابلتشخیصبودن دائمی را باید با تردید نگریست.