פרוטוקול דיפי-הלמן – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
שורה 9:
==תיאור הפרוטוקול==
'''הכנה חד-פעמית:'''
להלן תיאור הפרוטוקול ב[[שדה (מבנה אלגברי)|שדה]] ראשוני. המשתתפים בפרוטוקול אליס ובוב מסכמים ביניהם באופן גלוי על מספר ראשוני <math>p</math> [[מספרים גדולים|גדול]] כך שפתרון בעיית לוגריתם דיסקרטי ב[[חבורה (מבנה אלגברי)|חבורה]] הכפלית <math>\mathbb{F}^{*}_p</math> יהיה קשה. ו[[יוצרים של חבורה|יוצר]] <math>g</math> של <math>\mathbb{F}^{*}_p</math> (דוגמה בהמשך). אם <math>p</math> ראשוני לשדה <math>\mathbb{F}_p</math> יש <math>\phi(p-1)</math> יוצרים כאשר <math>\phi</math> היא [[פונקציית אוילר]] כך שבחירת יוצר יכולה להתבצע תוך דגימה אקראית והסיכויים למצוא יוצר תוך מספר ניסיונות קצר גבוהים. אליס בוחרת ערך אקראי סודי <math>0<a<p-1</math> ומחשבת את <math>A=g^a\text{ mod }p</math> אותו היא שולחת לבוב. באופן דומה בוב בוחר ערך אקראי סודי <math>0<y<p-1</math> ומחשב את <math>B=g^b\text{ mod }p</math> אותו הוא שולח לאליס. בהינתן <math>a</math> ו-<math>B</math> אליס מחשבת את המפתח המשותף <math>K=B^a\text{ mod }p\equiv g^{yxab}\text{ (mod }p)</math> וכן בוב באמצעות הערכים <math>b</math> ו-<math>A</math>, מחשב את <math>K=A^b\text{ mod }p\equiv g^{ab}\text{ (mod }p)</math>. כעת הם משתפים ביניהם את המפתח הסודי <math>\ K</math> בצורה בטוחה.
 
אליס ובוב שידרו זה לזה את הערכים <math>A=g^a</math> ו-<math>B=g^b</math> (מודולו <math>p</math>) בהתאמה. המידע שהשיגה המצותתת איב (ראה תרשים) שהאזינה למהלכי הפרוטוקול, כולל את הערכים: <math>g,p,A,B</math>. כאשר הערכים <math>a</math> או <math>b</math> לא שודרו כלל. כדי לחשוף את המפתח המשותף עליה לחשב את <math>K\equiv A^b\equiv B^a\equiv g^{ab}\text{ (mod }p)</math>. בעיה זו (חישוב <math>g^{ab}</math> מתוך <math>g^a</math> ו- <math>g^b</math> מודולו <math>p</math>), נקראת '''בעיית דיפי-הלמן''' (להלן), אם הערכים נבחרו בקפידה, הדעה הרווחת היא שאין לה פתרון קל.