مدل حمله

از ویکی‌پدیا، دانشنامهٔ آزاد

در رمزنگاری، مدل‌های حمله یا انواع سناریوهای حمله،[۱] یک دسته‌بندی از حملات رمزنگاری هستند که نوع دسترسی یک رمزنگار (مهاجم) را به سیستم تحت تهاجم، در هنگام تلاش او برای شکستن رمز یک پیام رمزگذاری شده (همچنین شناخته شده به عنوان متن رمزنگاری شده) مشخص می‌کند. هرچه دسترسی رمزنگار به سیستم بیشتر باشد، با شکستن رمز می‌تواند از اطلاعات مفید بیشتری بهره‌برداری کند.

در رمزنگاری طرف ارسال کننده از یک رمز برای رمزگذاری (تبدیل) یک متن آشکار سرّی به متن رمزنگاری شده استفاده می‌کند که از طریق یک کانال ارتباطی ناامن به طرف دریافت کننده، ارسال می‌شود. طرف دریافت کننده از یک رمز (نگاری) معکوس برای رمزگشایی متن رمزشده لستفده می‌کند تا متن آشکار اصلی را بدست آورد. برای اعمال کردن رمز معکوس روی متن رمزنگاری شده، نیاز به یک دانش سرّی می‌باشد . . این دانش مخفی معمولاً یک عدد کوتاه یا رشته‌ای از متن است که کلید نامیده می‌شود. در یک حمله رمزنگاری، شخص ثالث رمزنگاری، متن رمزنگاری را تجزیه و تحلیل می‌کند تا سعی کند رمز را بشکند، متن آشکار را بخواند و کلید را استخراج کند تا پبام‌های رمزگذاری شدهٔ دیگر هم در آینده قابل خواندن شوند. معمولاً این گونه فرض می‌شود که الگوریتم‌های رمزگذاری و رمزگشایی خود دانش عمومی و در دسترس رمزنگار هستند زیرا این در مورد رمزهای مدرنی که به صورت آزادانه و آشکار منتشر می‌شوند، صدق می‌کند. این فرضیه را اصل کِرکهُوفس مینامند.

مدل‌ها[ویرایش]

برخی از مدل‌های حمله معمول عبارتند از:

  • حمله متن رمز تنها (COA): در این نوع حمله فرض بر این است که رمزنگار تنها متن رمز شده را در اختیار دارد و به متن اصلی دسترسی ندارد. این مدل از حمله نوعی است که بیشترین احتمال مواجهه با آن در دنیای واقعی رمزنگاری وجود دارد اما به دلیل دامنه کم اطلاعاتی که رمزنگار در دسترس دارد، ضعیفترین نوع حمله است. در مورد رمزهای مدرن لازم است تا در برابر این نوع از حمله بسیار مقاوم باشند. در حقیقت، یک رمزنگاری موفقیتآمیز در مدل حمله متن رمز تنها (COA) معمولاً مستلزم این است که که رمزنگار اطلاعاتی را در مورد متن اصلی داشته باشد؛ مانند، توزیع آن، زبانی که متن اصلی به آن نوشته شده، دادههای پروتکل استاندارد یا ساختار فریم بندی که بخشی از متن اصلی است و غیره.[۲]
    • حملهٔ جستجوی فراگیر یا جستجوی کامل کلید (Exhaustive key search) - در این حمله هر کلید ممکن امتحان میشود تا کلید درست پیدا شود. هر رمزی به جز روشهای غیرقابل شکستن امنیت از لحاظ نظریه اطلاعات مانند سیستم پد تک بار زمانه نسبت به این روش آسیبپذیر است و از آن جایی که سختی آن به رمز وابسته نیست و تنها به طول کلید بستگی دارد، یک رمزنگاری واقعی از رمز محسوب نمی‌شود. اگر کلید N بیت داشته باشد، ۲ N حالت کلید وجود که باید امتحان شوند؛ بنابراین یک حملهٔ جستجوی فراگیر می‌تواند در بدترین حالت با تقریب زمانی ۲ N و به‌طور متوسط در تقریب زمانی ۲ N-1 رمز را بازیابی کند. از این الگوریتم عموماً به عنوان استاندارد مقایسه برای حملات دیگر استفاده میشود. حملهی جستجوی فراگیر فقط میتواند در زمینه حملات متن رمز تنها بکار برده شود اما رمزنگار باید اطلاعات کافی دربارهی متن اصلی (حداقل به اندازهی N بیت) داشته باشد تا بتواند کلید صحیح را هنگام امتحان کردن کلیدها شناسایی کند.
  • حمله متن اصلی معلوم (KPA) :در این نوع حمله فرض بر این است که شخص رمزنگار حداقل به تعداد محدودی متن رمز شده و متن اصلی معادل آن‌ها دسترسی دارد. نمونهای جالب به زمان جنگ جهانی دوم برمیگردد که در طی آن متفقین از متون اصلی شناخته شده در رمزنگاری موفقیتآمیز ماشین رمزگذاری Enigma استفاده کردند. نمونههای متن اصلی که Cribs نامیده می‌شوند؛ این اصطلاح از Bletchley Park، عملیات رمزگشایی انگلیس در جنگ جهانی دوم، سرچشمه گرفته‌است.[۳][۴]در اوایل متون اصلی (همان Cribs) از متنهای ساده و متون رمزشدهی بریده بریده و جدا از هم تولید می‌شدند و بدین ترتیب برای طبقهبندی آنها به عنوان حمله متن اصلی معلوم، واجد شرایط میباشند. با این حال، با افزایش دانش و تجربه، متن‌های اصلی شناخت شده عمدتاً از طریق یک سری حدسهای هوشمند مبتنی برتجربه و منطق بدست آمده، تولید می‌شدند و نه از طریق کانالی که دسترسی مستقیم به این متون اصلی را فراهم کند. از نظر فنی حملات ثانوی، به عنوان حملات متن رمز تنهایی طبقه‌بندی میشوند که اجرای آن‌ها سخت‌تر است.
  • حمله متن اصلی منتخب (CPA) - در این نوع از حمله رمزنگار قادر است تعدادی متن اصلی را برای رمز شدن انتخاب کند و به نتیجهٔ متن رمزشده دسترسی داشته باشد. با اینکار این قابلیت به رمزنگار داده می‌شود تا هر قسمتی از فضای حالت متن اصلی که می‌خواهد را مورد جستجو قرار دهد و همچنین این امکان را می‌دهد تا از نقاط ضعف و رفتارهای غیرتصادفی که فقط در متون اصلی مشخصی ظاهر می‌شوند، سوءاستفاده کند. در سیستم‌های رمزنگاری با کلید عمومی که به‌طور گسترده استفاده می‌شوند، کلید مورد استفاده برای رمزگذاری متن اصلی به صورت عمومی توزیع(منتشر) می‌شوند و هر کسی می‌تواند از آن استفاده کند. این مسئله این امکان را برای رمزنگار فراهم می‌کند تا از هر متن اصلی‌ای که می‌خواهد متن رمز شده تولید کند؛ بنابراین الگوریتم‌های با کلید عمومی باید در برابر تمامی حملات متن اصلی منتخب مقاوم باشند.
    • حمله متن اصلی منتخب وفقی (انطباقی)(CPA2)- در این حمله تحلیلگر می‌تواند دنباله ای از متون اصلی را انتخاب کند تا رمزگذاری شوند و به متن‌های رمزشده دسترسی داشته باشد. در هر گام این فرصت را دارد تا نتایج قبلی را پیش از انتخاب متن اصلی بعدی را تجزیه و تحلیل کند. این امر به اوامکان می‌دهد تا هنگام انتخاب متن‌های اصلی اطلاعات بیشتری در دست داشته باشد تا اینکه مجبور باشد همهٔ متن‌های اصلی را طبق حملهٔ متن اصلی منتخب از پیش انتخاب کند.
  • حمله متن رمز شده منتخب (CCA)- در این حمله تحلیلگر می‌تواند متن رمزشده دلخواه خود را انتخاب کند و به متن اصلی رمزگشایی شده از آن دسترسی پیدا کند. در یک مورد حقیقی، این امر نیازمند این است که تحلیلگر به کانال ارتباطی و طرف گیرندهٔ انتهای آن دسترسی داشته باشد.
    • حمله وقت ناهار یا حمله نیمه شب(Lunchtime attack or Midnight attack) - در این نوع فرض بر این است که رمزنگار می‌تواند تنها برای مدت زمانی محدود یا تعداد محدودی از جفت‌های متن اصلی-متن رمزشده به سیستم دسترسی داشته باشد و پس از آن باید پیشرفت نشان دهد. این نام از آسیب‌پذیری امنیتی برگرفته شده‌است که در آن یک کارمند وارد رایانهٔ رمزگذاری شدهٔ خود می‌شود و در هنگام رفتن به ناهار، آن را با بی‌توجهی و بدون مراقبت رها می‌کند و این امکان را به یک مهاجم می‌دهد تا برای مدت زمان کوتاهی به سیستم دسترسی پیدا کند.
    • حمله متن رمزشده منتخب وفقی (انطباقی)(CCA2)- در این حمله رمزنگار می‌تواند یک سری متون رمزشده انتخاب کند و متن اصلی رمزگشایی شده حاصل از آن‌ها را مشاهده کند؛ با این فرصت که در هر گام، قبل از انتخاب متن رمزشدهٔ بعدی، جفت‌های متن رمزشده-متن اصلی را تحزیه و تحلیل کند.
  • حملات مدل کلید باز- در آن‌ها مهاجم مقداری دانش در مورد کلید رمزی که در حال تهاجم به آن است را دارد.[۵]
    • حمله کلید مرتبط- در این حمله، رمزنگار به متن رمز شده‌ای دسترسی دارد که از یک متن اصلی مشخص ولی با کلیدهای نامشخص دیگری رمزنگاری شده‌است که این کلیدها از طریق یک رابطهٔ ریاضی تعریف شده به کلید هدف مرتبط‌اند. به عنوان مثال تحلیلگر ممکن است بداند که N بیت آخر کلیدها باهم یکسان است. این موضوع به این دلیل متناسب و مرتبط است که پروتکل‌های مدرن رمزنگاری کامپیوتر کلیدها را به صورت خودکار تولید می‌کنند که منجر به وجود ارتباطات محتمل بین این کلیدها می‌شود. پروتکل محرمانهٔ معادل سیمی(WEP) که برای محافظت از دستگاه‌های اینترنتی وای فای استفاده می‌شد، به دلیل ضعف در آر سی ۴ (RC4)، در برابر یک حمله کلید مرتبط آسیب‌پذیر شناخته شد.
    • حمله متمایز کننده کلید معلوم و متمایز کننده کلید منتخب- در این حمله مهاجم می‌تواند متن رمزشده را از تصادفی تشخیص دهد؛ به همراه دانش یا توانایی انتخاب کلید.[۵]
  • حمله کانال جانبی- این مبحث موکداً در مورد یک حملهٔ رمزنگارانه نیست و به قدرت رمز بستگی ندارد؛ بلکه اشاره دارد به استفاده از داده‌های دیگر در رابطه با فرایند رمزنگاری و رمزگشایی برای بدست آوردن اطلاعات در مورد پیام، از جمله نویز الکترونیکی تولید شده توسط ماشین‌های رمزگذاری، صداهای تولید شده توسط ضربات کلید هنگامی که متن اصلی در حال تایپ شدن است یا اندازه‌گیری مقدار زمانی که محاسبات مختلف صرف اجرا شدن می‌کنند.

مدل الگوریتم‌های حملهٔ مختلف برای سایر امور اصلی رمزنگارانه و به‌طور کلی همه نوع از سیستم‌های امنیتی استفاده می‌شود. نمونه‌هایی از چنین مدل‌های حمله‌ای عبارتند از:

منابع[ویرایش]

  1. Information Security Laboratory (powerpoint)
  2. Bruce Schneier (2000). "Cryptography". Secrets & Lies: Digital Security in a Networked World (Hardcover ed.). Wiley Computer Publishing Inc. pp. 90–91. ISBN 0-471-25311-1.
  3. Gordon Welchman, The Hut Six Story: Breaking the Enigma Codes, p. 78.
  4. Michael Smith, "How It Began: Bletchley Park Goes to War," in B. Jack Copeland, ed., Colossus: The Secrets of Bletchley Park's Codebreaking Computers.
  5. ۵٫۰ ۵٫۱ Elena Andreeva; Andrey Bogdanov; Bart Mennink (8 July 2014). Towards Understanding the Known-Key Security of Block Ciphers. FSE 2014.

خواندن بیشتر[ویرایش]