تعاریف امنیتی و مدلهای مهاجم
تعاریف دقیق امنیتی و مدلهای مهاجم به وضوح مشخص میکنند که یک طرح رمزنگاری باید در برابر چه چیزی محافظت کند و مهاجم چه قدرتهایی دارد، و مفاهیم مبهم «امن» را به ادعاهای قابل آزمایش تبدیل میکنند.
Definition
تعریف امنیتی به طور رسمی هدفی را که یک طرح باید به آن دست یابد و مدل مهاجمی را که باید در برابر آن به آن دست یابد، بیان میکند. این معمولاً به صورت یک بازی یا مقایسه عملکرد ایدهآل است که در آن احتمال موفقیت مهاجم باید ناچیز باشد.
Scope
این موضوع چگونگی رسمیسازی اهداف و تهدیدات امنیتی را پوشش میدهد: تعاریف هدف (امنیت معنایی، عدم تمایز، عدم جعلپذیری) و مدلهای حمله که به مهاجمان قدرت فزایندهای میدهند (حمله با متن آشکار انتخابی، حمله با متن رمزشده انتخابی، حملات تطبیقی)، چارچوبهای ایدهآل/واقعی و مبتنی بر بازی، و شکاف بین مهاجمان مدلسازی شده و واقعی (کانالهای جانبی). این موضوع شامل کاهشها و فرضیات سختی مورد استفاده برای برآورده کردن این تعاریف نمیشود که در موضوعات مرتبط دیگر بررسی میشوند.
Core questions
- چرا اهداف امنیتی باید به جای شهودی، دقیقاً تعریف شوند؟
- چه چیزی اهداف محرمانگی (امنیت معنایی) را از اهداف یکپارچگی (عدم جعلپذیری) متمایز میکند؟
- مدلهای حمله (CPA، CCA، تطبیقی) چگونه قابلیتهای یک مهاجم را به تصویر میکشند؟
- تعاریف مبتنی بر بازی و ایدهآل/واقعی چگونه امنیت را بیان میکنند؟
- چرا یک طرح که در مدل خود اثبات شده امن است، ممکن است همچنان در برابر حملات دنیای واقعی مانند کانالهای جانبی شکست بخورد؟
Key concepts
- امنیت معنایی
- عدم تمایز متن رمزشده (IND)
- حمله با متن آشکار انتخابی (CPA)
- حمله با متن رمزشده انتخابی (CCA)
- عدم جعلپذیری وجودی
- مهاجمان تطبیقی
- تعاریف مبتنی بر بازی
- پارادایم ایدهآل/واقعی
- شکاف کانال جانبی
Key theories
- امنیت معنایی و عدم تمایز
- محرمانگی به گونهای تعریف میشود که متنهای رمزشده هیچ اطلاعات مفیدی را فاش نکنند: یک مهاجم نمیتواند رمزنگاری دو پیام انتخابی را تشخیص دهد، تعریفی که توسط گلدواسر و میکالی معرفی شد و تمام امنیت رمزنگاری مدرن را پایه ریزی میکند.
- مدلهای حمله و قدرت مهاجم
- امنیت نسبت به آنچه مهاجم میتواند انجام دهد بیان میشود — مشاهده غیرفعال، انجام حملات متن آشکار انتخابی یا متن رمزشده انتخابی تطبیقی — با مدلهای قویتر (امنیت CCA) که برای طرحهای مورد استفاده در محیطهای خصمانه و تعاملی مورد نیاز است.
Mechanisms
یک تعریف مبتنی بر بازی، یک چالشگر را در برابر یک مهاجم قرار میدهد: برای امنیت IND-CPA، مهاجم دو پیام را ارسال میکند، چالشگر یکی را به صورت تصادفی رمزگذاری میکند، و امنیت مستلزم آن است که مهاجم نتواند حدس بزند کدام یک فراتر از شانس است. تعاریف قویتر CCA همچنین به مهاجم یک اوراکل رمزگشایی میدهند. پارادایم ایدهآل/واقعی به جای آن، یک طرح را امن میداند اگر تعامل با آن از تعامل با یک عملکرد قابل اعتماد ایدهآل غیرقابل تشخیص باشد. مهاجمان واقعی ممکن است از نشت زمانبندی یا توان خارج از این مدلها سوءاستفاده کنند، که انگیزهای برای تعاریف آگاه از کانال جانبی است.
Clinical relevance
انتخاب تعریف صحیح پیامدهای مهمی دارد: رمزنگاری مورد استفاده در پروتکلهای تعاملی به امنیت CCA نیاز دارد، نه فقط CPA، و حملات اوراکل پدینگ در سیستمهای واقعی (مانند TLS اولیه) مستقیماً ناشی از استقرار طرحهایی بود که تعریف بسیار ضعیفی را برآورده میکردند. مدلهای مهاجم همچنین روشن میکنند که یک استقرار در برابر چه چیزی محافظت نمیکند — برای مثال، مدلهایی که کانالهای جانبی را نادیده میگیرند، توضیح میدهند که چرا حملات زمانبندی و توان در برابر پیادهسازیهای «امن» موفق میشوند.
Evidence & guidelines
استانداردهای مدرن مستلزم آن است که طرحها تعاریف قوی را برآورده کنند: رمزنگاری احراز هویت شده (IND-CCA به علاوه یکپارچگی) پیشفرض برای محرمانگی است، و امضاها باید تحت حمله پیام انتخابی تطبیقی، غیرقابل جعلپذیری وجودی باشند. چارچوب ترکیبپذیری جهانی تعاریفی را ارائه میدهد که تحت ترکیب دلخواه امن باقی میمانند. پیادهسازیها علاوه بر مدل رسمی، به کدنویسی مقاوم در برابر کانال جانبی (زمان ثابت) نیز نیاز دارند.
History
قبل از دهه ۱۹۸۰، امنیت به طور غیررسمی قضاوت میشد. امنیت معنایی گلدواسر و میکالی (۱۹۸۲-۱۹۸۴) تعاریف دقیق و مبتنی بر عدم تمایز را معرفی کرد که به زودی به مدلهای متن رمزشده انتخابی و به عدم جعلپذیری برای امضاها و MACها گسترش یافت. پارادایم شبیهسازی ایدهآل/واقعی و چارچوب ترکیبپذیری جهانی کانتی (۲۰۰۱) به امنیت تحت ترکیب پرداختند و یک پایه تعریفی را تکمیل کردند که اکنون بر تمام تحلیلهای جدی رمزنگاری حاکم است.
Key figures
- Shafi Goldwasser
- Silvio Micali
- Oded Goldreich
- Ran Canetti
- Mihir Bellare
Related topics
Seminal works
- goldwasser1984
- katz2020
- goldreich2004
Frequently asked questions
- تفاوت بین امنیت CPA و CCA چیست؟
- امنیت حمله با متن آشکار انتخابی (CPA) فرض میکند که مهاجم میتواند رمزنگاری پیامهایی را که انتخاب میکند به دست آورد. امنیت حمله با متن رمزشده انتخابی (CCA) علاوه بر این به مهاجم اجازه میدهد تا رمزگشایی متنهای رمزشدهای را که انتخاب میکند به دست آورد، یک مدل قویتر که هر زمان که مهاجم بتواند متنهای رمزشده را ارسال کند و نحوه واکنش سیستم را مشاهده کند، مورد نیاز است.
- اگر یک طرح اثبات شده امن باشد، چرا حملات کانال جانبی کار میکنند؟
- تعاریف امنیتی مهاجمی را مدلسازی میکنند که ورودیها و خروجیها را میبیند، نه نشت فیزیکی مانند زمانبندی، مصرف برق یا انتشار الکترومغناطیسی. یک پیادهسازی واقعی میتواند اسرار را از طریق این کانالها فاش کند، حتی اگر طرح انتزاعی تعریف خود را برآورده کند، به همین دلیل پیادهسازیهای مقاوم در برابر نشت و زمان ثابت نیز مورد نیاز است.