مدیریت جلسه – این طرح نامیده می شود و چگونه باید دقیقا کار کند؟

بنابراین من درباره ارتباطات سرویس گیرنده سرور و چگونگی حفظ این خصوصی، به ویژه از حملات میان محور، فکر کردم. من با یک طرح که من مطمئن هستم در حال حاضر وجود دارد، اما من می توانم نتایج جستجوی دقیق بتن را پیدا کنید برای کسب اطلاعات بیشتر در مورد آن. [1965،9002] این فکر من آغاز شد که زمانی که یک مشتری به سرور متصل می شود، آنها می خواهم ایجاد یک کانال ارتباطی امن، بنابراین مشتری می تواند یک جفت کلید خصوصی / عمومی تولید کند و کلید عمومی را به سرور ارسال کند. مشکل این است که کلید عمومی را به سرور بطور ایمن (در غیر این صورت یک مرد در وسط می تواند تمام پیام ها را با استفاده از کلید عمومی که از اولین پیام گرفته شده است، رمزگشایی کند، کلید عمومی خود را به پیام متصل کند، از کلید خصوصی مربوط به رمزگشایی استفاده کند پاسخ و پس از ذخیره آن، دوباره رمزگذاری شده با کلید عمومی واقعی مشتری).

بنابراین من یک راه حل ممکن را تصور کردم: مشتری ابتدا کلید عمومی را از سرور دریافت می کند، آن را برای رمزگذاری کلید عمومی خود استفاده می کند. MitM می تواند تمام پیام ها را تحت تأثیر قرار دهد، اما قادر به رمزگشایی هر یک از آنها نیست – فقط سرور واقعی می تواند درخواست مشتری را رمزگشایی کند و پاسخ تنها توسط مشتری واقعی رمزگشایی می شود. هنگامی که سرور کلید عمومی مشتری را می داند، آن را ایمن آن را ذخیره می کند و از آن برای رمزگذاری هر گونه ارتباط بیشتر استفاده می کند.

من چند سوال مرتبط دارم.

  1. این نوع امنیت / دستخط چیست؟
  2. I کلمه nonce را نادیده گرفته است اما درست است که این در مورد جلوگیری از حملات پخش و نه مشکل MitM من در حال تلاش برای حل کردن
  3. کلید اولیه که سرور به مشتری می فرستد، باید ثابت می شود و احتمالا در جایی منتشر می شود، بنابراین مشتریان می توانند "مراحل عمومی کلید من را در جلسات بعدی به من برگردانند؟" یا باید یک کلید تازه تولید شده برای هر مشتری در هر درخواست جلسه جدید باشد؟
  4. در عوض، آیا کلید عمومی مشتری باید با هر جلسه تغییر کند یا مشتری بتواند همان کلید را دوباره استفاده کند، پس از آنکه به طور امن به سرور منتقل شد؟ 19659006] خطراتی برای این مسئله وجود دارد، به غیر از نقص آشکار یکی از طرفین درگیر برای حفظ خصوصی private private؟

من مطمئن هستم که این نسبتا رایج است و احتمالا در حال حاضر چگونه بسیاری از مدارک احراز هویت کار می کنند، از پاسخ دادن به تمام این سؤالات به طور جداگانه، اگر کسی بتواند اصطلاحات مناسب را به من ارائه دهد، من خوشحال خواهم شد (من برخی از ترکیب کلمات کلیدی مانند «سرویس گیرنده / سرور»، «رمزنگاری نامتقارن»، «ایجاد جلسه» را امتحان کردم؛ هر چیزی مفید پیدا کنید) و حتی اگر این یک SE نظری باشد، حدس می زنم که مانند همه ی امنیتی خوب نباید اجرای خود را رول کند، بنابراین هر نمونه از یک برنامه مناسب برای سرویس دهنده / سرور (به عنوان مثال در PHP) با استفاده از کتابخانه های معتبر می تواند خوشایند باشد.