توافق کلید تصدیق شده بر پایه رمزعبور کیست؟ توضیح بده.
در رمزنگاری، روش وافق کلید تصدیق شده بر پایه رمزعبور (password-authenticated key agreement) یک روش تعاملی برای دو یا تعداد بیشتری بخش، جهت انتشار کلیدهای پنهانی بر پایه یک یا تعداد بیشتری دانش بخش (party's knowledge) از رمز عبور گذرواژه است.یک ویژگی مهم این است که یک استراق سمع کننده یا یک شخص در میانه (middle) نمی‌تواند اطلاعات کافی جهت حدس زدن brute force رمز عبور بدون تعاملات بیشتر با بخش‌ها برای هر حدس به دست آورد. این بدین معناست که امنیت قوی می‌تواند با استفاده از رمز عبورهای ضعیف به دست آید.انواع.Password-authenticated key agreement به طور کلی متدهای زیر را دربرمی گیرد:در بیشتر مدل‌های امنیتی دقیق برپایه تنها رمز عبور(password-only)، هیچ نیازی برای کاربر متد، جهت به یاد آوردن هرگونه رمز یا داده عمومی علاوه بر رمز عبور وجود ندارد.در تبدیل کلید تصدیق شده بر پایه رمز عبورPassword authenticated key exchange(PAKE) دو یا تعداد بیشتری بخش (party) بر پایه تنها دانش خود از یک رمز عبور، یک کلید رمزنگاری را با استفاده از یک تبادلی از پیام‌ها انتشار می‌دهند به طوریکه یک بخش تصدیق نشده (بخشی که کانال ازتباطی را کنترل می‌کند اما رمز عبور را ندارد) نمی‌تواند در متد شرکت کند و تا حد ممکن به حدس زدن رمز عبور brute force تحمیل می‌شود. دو فرم از PAKE، متدهای تقویت شده (augmented) و متوازن (Balanced) هستند.متد متوازن شده به بخش‌ها اجازه می‌دهد که از رمز عبور مشابهی جهت مذاکرده و تصدیق یک کلید مشترک استفاده کنند. مثال‌هایی از این متد شامل:Augmented PAKE یک نوع قابل اعمال به سناریوهای client/server ای است که در آن سرور، داده معادل با رمز عبور را ذخیره نمی‌کند. این به این معناست که یک مهاجم که داده سرور را می دزد نمی‌تواند به عنوان client خود را جا بزند مگر اینکه اول یک جستجوی brute force را برای رمز عبور انجام دهد. مثال‌هایی از این متد شامل موارد زیر است:(بازیابی کلید تصدیق شده بر پایه رمز عبور) Password-authenticated key retrieval یک فرایند است که در آن یک کلاینت یک کلید ایستا (static key) را در یک مذاکرده بر پایه رمز عبور با یک سرور که داده مربوط به رمز عبور را می‌داند به دست می‌آورد، مثل روش‌های فورد (Ford) و کالیسکی (Kaliski). در بیشتر تنظیمات دقیق، یک بخش تنها از یک رمز عبور در ترکیب با دو یا تعداد بیشتری سرور(N) جهت بازیابی یک کلید ایستا استفاده می‌کند به طوریکه رمز عبور (و کلید) محافظت می‌شود حتی اگر تمام N-۱ سرور کاملاً توافقی باشند (compromised).تاریخچه مختصر.اولین متدهای توافق کلید تصدیق شده بر پایه رمز عبور، متدهای تبدیل کلید رمزشده Encrypted Key Exchange (EKE) بودند که توسط Steven M. Bellovin و Michael Merritt در سال ۱۹۹۲ معرفی شدند. اگر چه چندین نمونه از اولین متدها عیب داشتند، باقی‌ماندن(surviving) و فرم‌های افزوده شده EKE به طور موثری یک رمز عبور مشترک را در یک کلید مشترک توسعه می‌دهد که می‌تواند سپس برای تصدیق پیام و / یا پنهان سازی مورد استفاده قرار گیرد. اولین پروتکل‌های PAKE که امنیت آن‌ها اثبات شده‌است بوسیله M.Bellare، D. Pointcheval و P. Rogaway (Eurocrypt 2000) و V.Boyko. P. MacKenzie و S.Patel (Eurocrypt 2000) به کار گرفته شدند. این پروتکل‌ها که امنیت آن‌ها اثبات شده‌است همچنین مدل اوراکل تصادفی random oracle model (یا حتی انواع قوی تر) نیز نامیده می‌شوند، و اولین پروتکل‌هایی هستند که امنیت آن‌ها تحت فرضیات استاندارد O.Goldreich و Y.Lindell(Crypto 2001) و J.Katz، R. Ostrovsky و M.Yung(Eurocrypt 2001) به اثبات رسیده‌است.اولین متدهای بازیابی کلید تصدیق شده بر پایه رمز عبور بوسیله فورد (Ford) و کالیسکی (Kaliski) در سال ۲۰۰۰ معرفی شدند.یک تعداد قابل توجهی از پروتکل‌های PAKE پیشنهادی و امن، که بوسیله M.Bellare، D. Pointcheval و P. Rogaway به کار گرفته شده‌اند ، تنوع و اثبات‌های امنیت آن‌ها در این کلاس در حال رشد از متدهای توافق کلید تصدیق شده بر پایه رمز عبور پیشنهاد شده‌است.استانداردهای رایج برای این متدها شامل :IETF RFC 2945, RFC 5054, RFC 5931, RFC 5998, RFC 6617, RFC 6628 و RFC 6631, IEEE Std 1363.۲-۲۰۰۸، ITU-T X.۱۰۳۵ و ISO-IEC ۱۱۷۷۰-۴:۲۰۰۶.است.