پروتکل تبادل کلید دیفی-هلمن: تفاوت میان نسخه‌ها

جز
اصلاح فاصله مجازی + اصلاح نویسه با استفاده از AWB
جز (مسأله --> مسئله وپ:همزه با استفاده از AWB)
جز (اصلاح فاصله مجازی + اصلاح نویسه با استفاده از AWB)
 
== تاریخچه پروتکل دیفی-هلمن در رمزنگاری ==
تا قبل از انتشار این پروتکل، رمزنگاری بیشتر به صورت رمزنگاری کلید متقارن مورد استفاده قرار می‌گرفته استمی‌گرفته‌است. در سال ۱۹۷۶، با انتشار این پروتکل، پایهٔ اولیهٔ رمزنگاری کلید نامتقارن بنا شد که بعداً با فعالیت‌های [[رالف مرکل]] تکمیل گردید. مدتی بعد نیز الگوریتم رمز مشهور [[آراس‌ای]] که از مبانی مشابهی برخوردار است مطرح گردید.
 
در سال ۱۹۹۷، یک مؤسسه تحقیقاتی جاسوسی در انگلستان ادعا کرد که پروتکل دیفی-هِلمن، قبل از سال ۱۹۷۶ توسط فردی به نام [[مالکولم ویلیامسون]] در آن مؤسسه اختراع شده و تنها به دلایل امنیتی از انتشار آن جلوگیری شده بوده استبوده‌است.
 
در سال ۲۰۰۲، مارتین هِلمن در کتابش خاطرنشان کرد که رالف مِرکل نیز به همان اندازهٔ دیفی و هِلمن در ایجاد و گسترش رمزنگاری کلید نامتقارن تأثیرگذار بوده استبوده‌است و پیشنهاد کرد که این پروتکل به نام دیفی-هِلمن-مِرکل شناخته شود.
 
در سال‌های بعد از ۱۹۷۶ و با گسترش تدریجی رمزنگاری کلید نامتقارن، پروتکل‌های تبادل کلید مختلفی با استفاده از پروتکل دیفی-هلمن و با قابلیت‌های بیشتری نسبت به آن طراحی شده استشده‌است.
 
== جزئیات پروتکل دیفی-هلمن ==
در فرمول‌های پیشنهادی اولیه این پروتکل، از گروه همنهشتی اعداد صحیح با پیمانهٔ [[عدد اول]] ''p'' و عملگر ضرب اعداد صحیح استفاده شده استشده‌است. در این گروه عددی، یک ریشهٔ اولیه محاسبه می‌شود که آن را با ''g'' نشان می‌دهند.
[[پرونده:Diffie-Hellman-Schlüsselaustausch.png|left|thumb|450px|ایجاد و تبادل کلید رمز با پروتکل دیفی-هلمن]]
سپس مراحل زیر که در شکل روبرو هم نشان داده شده است، انجام می‌شود:
 
== مثال عددی ==
در اینجا برای سهولت در فهم مطلب یک مثال عددی از ایجاد و تبادل کلید با پروتکل دیفی-هلمن ارائه شده استشده‌است. در عمل، اعدادی که مورد استفاده قرار می‌گیرند بسیار بزرگ هستند که ممکن است بیش از صد رقم داشته باشند.
 
# دو طرف روی مقدار عدد اول ۲۳ = ''p'' و مقدار اولیهٔ ۵ = ''g'' توافق می‌کنند.
 
در حال حاضر مسائل زیر باید در ارتباط با امنیت پروتکل دیفی-هلمن لحاظ گردد:
* بر اساس قدرت محاسباتی رایانه‌های امروزی، استفاده از عدد اول p با حدود ۳۰۰ رقم و اعداد a و b با حدود ۱۰۰ رقم می‌تواند شکستن امنیت این پروتکل و یافتن کلید رمز مشترک را در عمل غیر ممکنغیرممکن سازد.
* در عمل هر [[عدد اول]] بزرگی را نمی‌توان در این پروتکل به کار گرفت، بلکه لازم است عدد p مورد استفاده یک [[عدد اول امن]] باشد. در غیر این صورت شکستن امنیت این پروتکل و یافتن کلید رمز مشترک، با استفاده از الگوریتم‌هایی مانند [[الگوریتم پولیگ-هلمن]]، نسبتاً آسان و در زمان کمتری قابل انجام خواهد شد.
* اعداد پنهانی a و b باید به صورت [[عدد تصادفی]] تولید شوند و [[مولد عدد تصادفی]] مورد استفاده هم نباید تکرارپذیر و قابل پیش‌بینی باشد. در غیر این صورت، یافتن کلید رمز مشترک آسان‌تر و در زمان کمتری قابل انجام خواهد شد.
 
== مشکل شناسایی دو طرف در پروتکل دیفی-هلمن ==
فرمول‌های پیشنهادی اولیه این پروتکل که در قسمت بالا ارائه شد، امکان [[شناسایی]] متقابل دو طرف را فراهم نمی‌سازد. به همین دلیل اگر طرف سومی روی خط ارتباطی و بین طرف اول و دوم قرار بگیرد، می‌تواند بدون اینکه شناسایی شود، با هر یک از دو طرف به طوربه‌طور جداگانه طبق پروتکل دیفی-هلمن به رد و بدل کلید رمز بپردازد. (به چنین نوع حمله‌ای، [[حمله مرد میانی]] گفته می‌شود). به این ترتیب طرف سوم خواهد توانست بدون اینکه طرف هایطرف‌های اول و دوم متوجه شوند، تمام پیام‌های آن دو را بخواند که برای این کار کافی است ابتدا پیام هر یک از آن‌ها را با کلید رمز مربوط به خودش [[رمزگشایی]] کند و سپس با کلید رمز طرف دیگر [[رمزگذاری]] کرده و برایش ارسال کند.
 
برای مقاوم کردن پروتکل دیفی-هلمن در مقابل این مشکل، لازم است که یک مکانیزم برای [[شناسایی]] دو طرف به مراحل این پروتکل اضافه شود. همین امر باعث شده استشده‌است که پروتکل‌های مختلف شناسایی با استفاده از مکانیزم تبادل کلید دیفی-هلمن ارائه شود.
 
== جستارهای وابسته ==
۱۳۳٬۲۴۲

ویرایش