אבטחת מידע/תקשורת מאובטחת: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
שורה 8:
 
= הצפנת "מפתח פומבי" =
הצפנת '''מפתח פומבי''' (או '''מפתח ציבורי''') היא ענף ב[[w:קריפטוגרפיה|קריפטוגרפיה]] הנקרא גם '''הצפנה אסימטרית''' - שבה מפתח ההצפנה שונה ממפתח הפענוח. כלומר כל משתמש מכין לעצמו זוג מפתחות: '''מפתח פומבי''' (Public key) שהוא מפתח הצפנה הנגיש לכל ו'''מפתח פרטי''' (Private key) מתאים, הנשמר בסוד ומשמש לפענוח. ההתאמה הנה [[w:חד חד ערכית|חד-חד ערכית]] (לכל מפתח פומבי קיים אך ורק מפתח פרטי יחיד המתאים לו). כדי להצפין מסר בשיטה זו, על המצפין להשיג לידיו עותק אותנטי של המפתח הפומבי של המקבל, בעזרתו הוא מצפין ושולח לו את המסר. רק המקבל מסוגל לשחזר את הטקסט המוצפן בעזרת המפתח הפרטי המתאים שברשותו. בטיחות שיטת מפתח פומבי נשענת על הקושי שב[[w:חישוב|חישוב]] המפתח הפרטי מתוך המפתח הפומבי. מסיבה זו מכונה שיטה זו א-סימטרית, בניגוד לשיטת הצפנה [[w:צופן סימטרי|סימטרית]] שבה מפתח הפענוח זהה למפתח ההצפנה (על כל פנים ניתן לחישוב בקלות מתוך מפתח ההצפנה).
 
ניתן להמחיש זאת באנלוגיה ל[[w:מנעול צירופים|מנעול צירופים]]. בוב שולח לאליס תיבה פתוחה שעליה תלוי מנעול צירופים פתוח כאשר לסגירת המנעול אין צורך בידיעת הצירוף הסודי. אליס יכולה לשים בתיבה מכתב ולנעול אותה, כעת היא יכולה לשלוח את התיבה לבוב ללא חשש. כיוון שרק בוב מכיר את הצירוף הסודי, רק הוא מסוגל לפתוח את התיבה ולקרוא את המכתב. אפילו אליס עצמה אינה מסוגלת לפתוח את התיבה לאחר שננעלה.
 
שני הענפים העקריים של מפתח פומבי הם:
שורה 17:
 
== בטיחות ==
מערכות הצפנת מפתח פומבי מבוססות ברובן על מספר מצומצם של בעיות מתמטיות הידועות כקשות לפתרון מבחינה [[w:חישוביות|חישובית]] בין בעיות אלו נמנות [[w:פירוק לגורמים|בעיית פירוק לגורמים]], [[w:בעיית לוגריתם דיסקרטי]] ובעיית [[w:שורש ריבועי|שורש ריבועי]] [[w:מודולו|מודולו]] שלם [[w:מספר פריק|פריק]]. בעיות אלו מאפשרות יישום [[w:פונקציה חד כיוונית|פונקציה חד כיוונית]] מיוחדת הנקראת פונקציה חד-כיוונית עם דלת סתרים או דלת צונחת (Trapdoor). שהיא פונקציה חד-סטרית הקלה לחישוב בכיוון אחד אך קשה ביותר לשחזור בכיוון ההפוך. אולם מכילה מידע נוסף בעזרתו חישוב הפונקציה ההפוכה הופך לקל. ללא המידע הנסתר יהיה קשה ביותר לחשב את הפונקציה ההפוכה אלא אם כן תמצא [[w:יעילות אלגוריתמית|דרך יעילה]] לפתרון הבעיה המתמטית האמורה. יש לציין כי קיומן של פונקציות חד-כיווניות אינו מוכח מבחינה מתמטית, הדעה הרווחת בין מתמטיקאים היא כי קיומן ייתכן. כמו כן אין הוכחה מתמטית כי הבעיות המנויות הנן בלתי פתירות, אם כי כל דרך [[w:זמן ריצה פולינומי|פולינומית]] שתתגלה לפתרון אחת מבעיות אלו תהווה הפתעה מרעישה, מאחר שמרבית [[w:אבטחת מערכות מידע|מערכות האבטחה]] המסחריות הקיימות בשוק, נשענות על הקושי המשוער של בעיות אלו.
 
==יעילות==
חסרונה העיקרי של שיטת המפתח-הפומבי הוא ביעילותה החישובית. הצפנת מפתח פומבי דורשת עוצמת חישוב גבוהה עשרות מונים מהצפנה סימטרית. הסיבה לכך היא הצורך [[w:חשבון מודולרי|באריתמטיקה מודולרית]] במספרים ארוכים מאוד. בעוד שבהצפנה סימטרית קונבנציונלית, הדרך היחידה לפיצוח אלגוריתמים סימטריים טובים היא באמצעות [[w:כוח גס|כוח גס]], הרי שבהצפנה אסימטרית אין המצב כך. קיימים אלגוריתמים טובים היעילים בהרבה מכח גס, לפתרון הבעיות המתמטיות עליהן נשנעת המערכת, לדוגמה [[w:RSA|RSA]] מסתמכת על הקושי שבפירוק מספרים גדולים לגורמים, קיימים כיום אלגורתמים מהירים כמו [[w:נפת שדה מספרים|אלגוריתם נפת שדה המספרים]] המסוגלים לפרק מספר לגורמיו בדרך מהירה, היעילה בהרבה מניסיון לפצח את האלגוריתם על ידי ניסוי כל המפתחות האפשריים. על כן כדי לסכל ניסיון לשבירת הצופן באמצעות אלגוריתמים אלו, מפתחות ההצפנה בשיטה האסימטרית חייבים להיות גדולים הרבה יותר, מה שמעלה את רמת סיבוכיותם. יישום כל מערכת מפתח פומבי דורשת כלים לביצוע חישובים אריתמטיים במספרים בני מאות ספרות.
 
גם הצפנה אסימטרית אינה פותרת את בעיות ה[[w:אימות|אימות]] והבטחת השלמות. שיטה זו אינה מבטיחה את זהות השולח או המקבל כלומר את אמינות מקור המפתח. היא אינה מבטיחה הגנה מפני מצותת אקטיבי המסוגל ליירט, לשנות ולשלוח מסרים זדוניים לכל אחד מהצדדים המתקשרים. מצותת כזה עשוי להחליף את המפתח הפומבי של המקבל במפתח משלו כך שהמסר יוצפן במפתח הלא נכון בלא ידיעת השולח. לאחר מכן יכול התוקף ליירט את כל המסרים המוצפנים, לפענחם לקרוא את תוכנם ולהצפינם שוב במפתח פומבי הלגיטימי של המקבל ולשולחם אליו בלא שיבחין בכך. התקפה זו נקראת Man in the middle והיא ישימה כנגד כל סוג של מערכת מפתח פומבי, אם לא מופעל אמצעי לאימות המפתחות.
 
===מערכת היברידית===