קריפטוגרפיה
קריפטוגרפיה היא ענף במתמטיקה ובמדעי המחשב העוסק באלגוריתמים של אבטחת מידע על רבדיה השונים, ובביסוס המתמטי שלהם. תחום הקריפטוגרפיה מאגד תחתיו נושאים רבים ובהם: הצפנה של מידע חסוי ממי שלא הוסמך לראותו; אימות זהות (כמו באמצעות סיסמה) ובקרת הרשאות גישה; פרוטוקולים להוכחת ידיעה, כמו פרוטוקול אתגר מענה והוכחה באפס ידע; מנגנוני חתימה דיגיטלית לאימות זהות המקור ומניעת התכחשות, והבטחת שלמות המידע. מערכת קריפטולוגית מבוססת על אבני בניין קריפטולוגיות, כגון צופן בלוקים, צופן זרם, פונקציות גיבוב (ובהן פונקציות אימות מסרים – MAC), מחולל פסבדו אקראי קריפטוגרפי ועוד.
קריפטוגרפיה מודרנית נמצאת בשימוש ביישומים מעשיים רבים, החל מאבטחת רשתות תקשורת (גם אלחוטיות כמו רשת סלולרית), דרך דואר אלקטרוני, מסחר אלקטרוני, כרטיסי אשראי ואבטחת מסופי משיכת מזומנים.
השם "קריפטוגרפיה" מקורו במילה היוונית "קריפטו" (κρυπτός) שמשמעותה נסתר או אמנות ההסתרה, ו"גרפיה" (γράφω) שמשמעותה רישום. בתרגום חופשי נעשה שימוש בשם באופן חליפי למונח קריפטולוגיה שפירושו תורת ההסתרה (Crypto-logia, κρυπτός-λογία), אם כי משמעותו רחבה יותר מתחום ההצפנה בלבד.
תוכן עניינים |
[עריכה] מונחים כלליים
במובן הבסיסי, הצפנה היא הסתרת משמעותו של מסר קריא באמצעות פונקציות ההופכות את המסר לרצף של סימנים המכונה צופן, כך שהצופן אינו קריא למי שאין בידיו מפתח ההצפנה המתאים כדי לשחזרו. שחזור הטקסט המוצפן למצבו הקריא באמצעות מפתח ההצפנה, קרוי פענוח.
המונח קריפטוגרפיה משמש לתיאור הענף המדעי שעוסק במחקר שיטות הצפנה, אלגוריתמים קריפטוגרפיים, פרוטוקולים ומנגנוני אבטחת מידע, הדרכים ליישומן והשיטות לפיצוחן. בניסוח פורמלי, משמשת המילה קריפטוגרפיה לתיאור חקר ויישום שיטות הצפנה ואילו קריפטאנליזה מתמקדת בחקר שיטות פיצוח או שבירת ההצפנה. את תחום המחקר המאגד את הקריפטוגרפיה והקריפטאנליזה מכנים קריפטולוגיה. לעתים בניסוח לא פורמלי, משמשת המילה קריפטוגרפיה כדי לתאר את הענף כולו.
המונח צופן (Cipher) מתייחס לאלגוריתם הצפנה, כאשר קלט האלגוריתם נקרא "טקסט קריא" או "טקסט גלוי" (באנגלית: Plaintext). ואילו פלט האלגוריתם נקרא "טקסט מוצפן" או "כתב סתר" (באנגלית: Ciphertext). בשפה העברית משמשת המילה צופן גם כשם עצם לכתב סתר או קוד.
[עריכה] רקע היסטורי
[עריכה] קריפטוגרפיה בעת העתיקה
שורשיה של הקריפטוגרפיה נעוצים בשחר ההיסטוריה. קיימים ממצאים המעידים כי המצרים הקדמונים השתמשו בהצפנה בכתב חרטומים, לערך 3000 שנה לפנה"ס.[1] בראשית דרכה עסקה הקריפטוגרפיה בעיקר בשיטות הצפנה בסיסיות והחבאה של המידע (סטגנוגרפיה). בתנ"ך ובמקורות יהודיים נוספים[2] קיימות עדויות נוספות להצפנה. לדוגמה, בספר ירמיהו (נכתב בשלהי תקופת בית ראשון, לפני שנת 586 לפנה"ס), נעשה שימוש בצופן אתב"ש: "ומלך ששך ישתה אחריהם" (ירמיהו כה כו), "..אל ישבי לב קמי רוח משחית" (ירמיהו נא א). "ששך" היא "בבל" בצופן אתב"ש, ו"לב קמי" היא "כשדים".
השימוש בהצפנה התרחב בתקופת יוון העתיקה. צופן הזזה פשוט היה בשימוש צבא ספרטה[3], בצופן זה, כל אות משנה את מיקומה לפי חוק מסוים. צפנים אלו מומשו, למשל, בעזרת גליל הצפנה (ראו תמונה). יוליוס קיסר (102 עד 40 לפנה"ס) נהג להשתמש בשיטת הצפנה מתקדמת יותר, צופן החלפה, בו כל אות נשארת במקומה אך מוחלפת באות שונה לפי חוקיות מסויימת. הצופן בו השתמש יוליוס קיסר נודע לימים כצופן קיסר. (ראה בהמשך הסבר על צפני הזזה והחלפה.) בתקופה זו נעשה שימוש בשיטות סטגנוגרפיות, כגון קעקוע המסר על ראשו המגולח של חייל ושליחתו ליעד לאחר שצמחו שערותיו, או כתיבת המסר על לוחות עץ וציפויים בשעווה לאחר מכן.
[עריכה] קריפטוגרפיה בעת החדשה
בימי הביניים ובעת החדשה נעשה שימוש רב בהצפנה מסוגים שונים. צופן הזזה ב"שיטת הרשת" שימש את האפיפיור.[4] צפני הזזה (אנגרמות) שימשו מדענים כגון גלילאו גלילי (המאה ה-16) להחבאת סודות או על מנת להוכיח זכות ראשונים על גילויים מדעיים. מרי, מלכת הסקוטים (המאה ה-16) עשתה שימוש בצופן החלפה על מנת להתכתב עם קבוצת אצילים קתוליים שרצו להדיח את המלכה אליזבת הראשונה מהכתר. שבירת צופן זה על ידי שרות הריגול של המלכה אליזבת עלתה למלכה מרי בחייה.[5]
בתקופה זו החל גם העיסוק בנסיונות שבירה של צפנים פשוטים. במהלך המאה ה-9 פותחה על ידי איש האשכולות העיראקי אל-קינדי (801-873) שיטת פיצוח צפנים המבוססת על ניתוח תדירויות. ככל הנראה, ניתוח התדירויות החל בעקבות בחינה של כתבי הקוראן ונסיון לנתח אותם. שיטה זו הייתה שימושית לפיצוח צפנים עד שלהי המאה ה-20 ופיתוח ההצפנה המודרנית. אל-קינדי פרט את ממצאיו בספר שהכיל, בין היתר, מספר שיטות לפיצוח צפנים (חלקן עבור צפנים פוליאלפביתיים), סיווג צפנים שונים, וניתוח תדירויות אותיות בשפה הערבית.[6]
הסופר והמתמטיקאי המצרי אל-קאלקשנדי (1355 - 1418) כתב אנציקלופדיה שהכילה פרק בנושא קריפטוגרפיה. כתבים אלו הכילו צפני הזזה וצפני החלפה פשוטים, וכן צפני החלפה בהם כל אות מוחלפת באות אחרת מתוך מבחר של מספר אותיות שונות. כמו כן מתוארים שיטות קריפטאנליטיות מבוססות ניתוח תדירויות של אותיות, וצרופי אותיות שלא יופיעו זו אחר זו בטקסט. ייתכן שכתבים אלו מקורם בעבודתו של טאג' א-דין עלי (1312 - 1361).
מחוץ לאירופה ולעולם המוסלמי, תחום הקריפטוגרפיה לא התפתח רבות. לדוגמה, קריפטוגרפיה ביפן החלה להתפתח ככל הנראה רק בשנת 1510.
[עריכה] קריפטוגרפיה עד אמצע המאה ה-20
בשנת 1854 המציא המדען הבריטי צ'ארלס ויטסטון שיטת הצפנה חדשה אשר נודעה לימים כצופן פלייפייר. בשיטה זו התבצעה ההצפנה לראשונה על קבוצת אותיות ולא על כל אות בנפרד. בצופן פלייפייר ההצפנה מבוצעת על זוגות של אותיות (דיגרפים). עובדה זו מקשה את שבירת הצופן בטכניקה של ניתוח תדירויות, כיוון שכעת יש לנתח תדירויות של כ-600 דיגרפים (צירופי אותיות) שונים, לעומת כמות של כ-26 אותיות. הרחבה של רעיון זה הובילה למושג צופן בלוקים הנפוץ בקריפטולוגיה המודרנית.
עם התפתחות הטכנולוגיה גבר גם השימוש בהצפנה ובפרט הצפנה ממוכנת (ראו מכונות מבוססות רוטור בהמשך). הקריפטוגרפיה הפכה כלי בסיסי להצפנת ידיעות צבאיות טרם שליחתן בטלגרף או ברדיו. במקביל גורמי מודיעין רבים עסקו בניסיונות פיצוח צפנים של צבאות אויב. בשנת 1917 הגה המהנדס גילברט סטנפורד ורנם (1890 - 1960) שיטה ממוכנת לביצוע הצפנה בטלגרף, בה המידע מוצפן תו אחר תו בעת שידורו, בניגוד לביצוע ההצפנה מראש ולאחר מכן שידור הטקסט המוצפן. בשיטה זו המפתח מוכן מראש על גבי סרט מנוקב ומחובר על ידי ממסר חשמלי אל מכונת הטלגרף. שיטת הצפנה זו ידועה בשם צופן ורנם, על שם ממציאה, והיוותה את הבסיס להצפנת פנקס חד-פעמי הבלתי-שבירה.
בתקופה זו הקריפטוגרפיה עדיין לא הייתה מפותחת דיה, והייתה קלה יחסית לשבירה. במקביל, התפתחות הטכנולוגיה הובילה להעברת מסרים רבים בקשר רדיו, שהוצפנו בצורה חלשה יחסית והיו מועדים לשבירה על ידי גורמי המודיעין של מדינות מפותחות כגון בריטניה, יפן וארצות הברית. פער זה הוביל למספר אירועים ידועים שגרמו לשינויים מהותיים בקבלת ההחלטות במדינות העולם:
- מברק צימרמן: מברק מוצפן שנשלח במהלך מלחמת העולם הראשונה (16 בינואר 1917) על ידי שר החוץ של גרמניה, ארתור צימרמן, לשגריר גרמניה בארצות הברית, ומטרתו ליזום ברית בין גרמניה למקסיקו כנגד מדינות ההסכמה. המברק הוצפן באמצעות ספר צופן שנפל בידי המודיעין הבריטי. פענוח המברק היה בין הגורמים להצטרפות ארצות הברית ללחימה לצד מדינות ההסכמה.
- פרויקט ונונה (מסמכי וינונה): פרויקט ביון משותף לארצות הברית ואנגליה, לפענוח מסמכים מוצפנים של ברית המועצות שיורטו במהלך מלחמת העולם השנייה, ופוענחו במשך 40 השנים הבאות. מסמכים אלו היוו מקור מידע חשוב עבור הביון של הגוש המערבי במהלך המלחמה הקרה. פיצוח הצופן נבע מטעות שימוש בצד הסובייטי: הצופן בו נעשה שימוש היה מסוג פנקס חד-פעמי, בו כל מפתח משמש פעם יחידה בלבד. ככל הנראה, עקב רצון לחסוך בכמות המפתחות, או עקב הזמן הארוך הנדרש לייצור מפתחות, נעשה שימוש חוזר בחלק מהפנקס החד-פעמי, דבר שהוביל לפענוח חלקי של המסמכים. כ-3,000 מסמכים שיורטו בין השנים 1942 - 1945 פוענחו באופן חלקי או מלא על ידי כוחות הברית, והחל מ-1948 כלל התשדורות שיורטו הפכו בלתי פציחות.[7]
- שפת הנאוואחו: השפה המדוברת על ידי אינדיאנים בני שבט הנאוואחו. ניתן לראות בה צופן פשוט הידוע רק לדוברי השפה וזאת מכמה סיבות:
-
- בשל מיעוטם היחסי של דוברי השפה והעובדה כי איש מדובריה לא גר בתקופה ההיא בארץ אויב.
- עקב השונות הגבוהה (יחסית) של שפה זו משפות מודרניות אחרות ושפות נחקרות אחרות, עקב העובדה ששום מוסד לא מלמד שפה זו, הקלטות של השפה היו נדירות ביותר והעובדה כי היא שפה מדוברת בלבד ולא כתובה, קיים קושי רב ב"פיצוח" השפה על ידי בלשנים.
- במהלך מלחמת העולם השנייה עשתה ארצות הברית שימוש באלחוטנים בני שבט הנאוואחו להעברת מסרים ברשתות הרדיו, שימוש שהחל עוד בשלהי מלחמת העולם הראשונה לאחר ההבנה שגרמניה בעלת יכולת יירוט של כלל התקשורת הצבאית של ארצות הברית.[8] צופן זה אינו נחשב חזק במיוחד, שכן על מנת לפענחו המודיעין הנגדי צריך להשיג מרגל בן שבט הנאוואחו.
- אניגמה: מכונת הצפנה מבוססת רוטור, ששימשה את גרמניה במהלך מלחמת העולם השנייה. בעלות הברית הצליחו לפצח את ההצפנה, ובמשך רוב המלחמה פענחו מספר גדול של הודעות מוצפנות. על מנת שלא לחשוף את העובדה שהמערכת נפרצה על ידי בעלות הברית, נעשה שימוש זהיר ביותר במודיעין שהופק מיירוט מסרים שהוצפנו באניגמה. כמות המידע שהופק מהודעות אלו ואיכותו הובילו את צ'רצ'יל לומר "הודות לאולטרה (המודיעין שהופק מהאניגמה) ניצחנו במלחמה".[9]
[עריכה] קריפטוגרפיה בת ימינו
עד מלחמת העולם השנייה עסקו בקריפטוגרפיה בעיקר גורמים צבאיים, גופי מודיעין, דיפלומטים ומרגלים. עם המצאת המחשב והתרחבות היקף השימוש בו, גבר הצורך באמצעי אבטחה גם במגזר הפרטי והעסקי. ההתפתחויות החשובות בהצפנה המודרנית החלו עם עבודתו של קלוד שנון, אבי תורת האינפורמציה, שביסס ב-1949 את התאוריה המתמטית של ההצפנה.[10] שנון הגדיר לראשונה, באופן מתמטי, עד כמה צופן מסויים הוא בטוח לשימוש, והמידע המוצפן ישאר סודי. בעבודתו הראה שנון כי צופן פנקס חד-פעמי מספק סודיות מושלמת (ראה בהמשך).
תקן ההצפנה הראשון, DES, שהתקבל ב-1975, פיתוח של צוות מתמטיקאים מיבמ בשיתוף פעולה עם NSA, היה נקודת ציון חשובה שהגבירה את ההתעניינות הציבורית בתחום. פריצת הדרך אולי החשובה ביותר, אירעה באותה שנה, עם המצאת ענף חשוב בתורת ההצפנה הקרוי מפתח-פומבי, על ידי ויטפילד דיפי ומרטין הלמן.[11]
במרוצת השנים הפכה אמנות הקריפטוגרפיה לתורה מדעית לכל דבר שקשורה בהיבט המעשי בעיקר לתחום תקשורת מחשבים ובהיבט התאורטי לענפים שונים במתמטיקה כמו תורת הסיבוכיות, תורת המספרים וסטטיסטיקה, עד לימינו אנו, בהם הקריפטוגרפיה חדרה כמעט לכל היבט בחיינו. כל אדם שברשותו טלפון סלולרי או כרטיס אשראי עושה שימוש בקריפטוגרפיה. צעד נוסף להתרחבות השימוש בהצפנה נעשה עם התרחבות המסחר האלקטרוני, ברשת האינטרנט, שהביא לכך שכמעט כל גולש נדרש לעתים להשתמש בתקשורת מוצפנת, אם לביצוע רכישה מקוונת באמצעות כרטיס אשראי או סתם לכניסה לחשבון הבנק.
[עריכה] אזכורים בספרות
- קיימים אזכורים רבים בספרות לאורך השנים.[2]
- הסיפור "חיפושית הזהב" (אדגר אלן פו) מתאר פיצוח של צופן החלפה, על ידי ניתוח תדירויות.
- הספר "מסע אל בטן האדמה" (ז'ול ורן) נפתח בקבלת כתב חידה הכתוב בסימנים לא מובנים, אשר מעורר את תחילת ההרפתקה.
- בספר "עמק הפחד" ובסיפור הקצר "תעלומת הדמויות המרקדות" (ארתור קונן דויל) מתמודד שרלוק הולמס עם כתבי חידה ומפצח אותם.
- בסדרת הספרים "הארי פוטר" (ג'יי קיי רולינג), שמו של לורד וולדמורט הוא אנגרמה של הדמות טום ונדרולו רידל.
- בספר "צופן דה וינצ'י" (דן בראון) משולבים מספר קטעים קריפטוגרפיים וסטנוגרפיים לרבות אנגרמות וכתב ראי. הספר "מבצר דיגיטלי" מאת אותו סופר עוסק בהצפנה (אך כולל טעויות רבות [2]).
- הספר זוכה פרס הפוליצר "גדל, אשר, באך" (דאגלס הופשטטר) מכיל מספר רב של חידות מילים מסוגים שונים ה"מוחבאים" כחלק מהטקסט. בנוסף, מכיל הספר קטעים הכתובים בשפה לא ידועה (לא ברור האם קטעים אלו בעלי משמעות או לא).
[עריכה] הצפנה קלאסית
[עריכה] סוגי הצפנה קלאסית
בעת העתיקה נעשה שימוש בשני צפנים קלאסיים עיקריים: צופן הזזה (שינוי מקום) וצופן החלפה.
צופן הזזה (טרנספוזיציה) הוא צופן בו כל אות משנה את מיקומה לפי חוקיות מסוימת. אנגרמות מופיעות כבר ביוון העתיקה וברומא העתיקה, וכן בתלמוד ובמדרשים, שבהם הן קרויות "היפוך אותיות" או "סירוסי מקרא". כיום אנגרמות אינן נחשבות ככלי קריפטוגרפי, בשל העובדה כי קל לפצחן, הן נחשבות כשעשוע-מוחי, ומופיעות בתשבצי היגיון.
צופן החלפה הוא שם כללי לצופן בו כל אות מוחלפת על ידי אות אחרת, לפי חוקיות ידועה (המפתח). דוגמה ידועה לצופן החלפה היא צופן קיסר בו השתמש יוליוס קיסר. בצופן זה כל אות מוחלפת באות הבאה אחריה באלפבית בהיסט מסוים וקבוע (באופן מעגלי). לדוגמה, אם ההיסט הוא 3 אותיות (גודל ההיסט בו השתמש יוליוס קיסר), המילה "קיסר" תוחלף במילה "תמצא". בצופן זה, גודל ההיסט הוא המפתח לפענוח המסר. צופן טרנספוזיציה קל לזיהוי ולשבירה כיוון שהוא משמר את תדירות האותיות שבמסר המקורי, וקל לפצחו מכיוון שמספר ההיסטים האפשריים מוגבל מאוד. במובן הכללי יותר, החלפת האותיות בצופן החלפה מתבצעת לפי מפתח המגדיר את ההמרה בין כל אות (או קבוצת אותיות) בטקסט הגלוי, לאות (או קבוצת אותיות) מוצפנות. צופן ויז'נר וצופן ורנם הם דוגמאות נפוצות של צפני החלפה. פעמים רבות המפתח בצופן החלפה הוא ספר צופן, המכיל כמות גדולה של מפתחות לשימוש, למשל דף מפתח ייעודי עבור כל יום בו עושים שימוש בצופן.
[עריכה] הצפנה קלאסית במאה ה-20: מכונות הצפנה מבוססות רוטור
בראשית המאה ה-20, עם התפתחות הטכנולוגיה, בעיקר המצאת הרדיו והטלפון, גבר הצורך באמצעי אבטחה קריפטוגרפיים מתקדמים, עקב קלות היירוט של שדר אלחוטי. אז החלו להופיע לראשונה מכונות הצפנה מבוססות רוטור.
מקור הרעיון החל ב"גליל ג'פרסון" על שם ממציאו תומאס ג'פרסון, לימים הנשיא השלישי של ארצות הברית. זהו גליל שהיקפו מחולק ל-26 חלקים בהם מוטבעות האותיות A - Z בסדר מסוים. הגליל מורכב למעשה על גבי ציר יחד עם מספר גלילים נוספים המסוגלים לנוע בחופשיות ללא תלות זה בזה. כל גליל מכיל סדר שונה של אותיות. הגליל יכול לשמש מכונת כתיבה שמדפיסה את הצופן על פי סדר האותיות שהוטבע בה. גליל ג'פרסון הוא למעשה צופן החלפה רב-אלפביתי. לאחר מכן החלו להופיע מכונות הצפנה מורכבות יותר בהן הורכבו גלילים בהיקפים שונים ובסדר שונה והוספו מנגנונים אלקטרוניים שונים, כדי להתאימם לתקשורת אלחוטית. הדוגמה הקלאסית היא מכונת אניגמה הגרמנית ששימשה את הנאצים במלחמת העולם השנייה.
למכונות ההצפנה מבוססות הרוטור היה משקל מכריע במלחמת העולם השנייה. המכונות שימשו בעיקר לתקשורת מאובטחת בין כוחות הצבא לבין המפקדות ובחילות הים. רוב מכונות ההצפנה פוצחו על ידי מנתחי הצפנים של כוחות המודיעין. יחידת המודיעין הסודית של הבריטים בבלצ'לי פארק, הצליחה בזמן מלחמת העולם השנייה ליירט ולפענח שדרים מוצפנים של הצבא הגרמני ששודרו באמצעות מכונות הצפנה מסוג זה. אלן טיורינג, שהניח את היסודות להמצאת המחשב המודרני, היה בראש צוות מנתחי הצפנים הבריטיים שפיצח את האניגמה. הודות לכך, השיגו בעלות הברית יתרון משמעותי במלחמה. גם בעלות הברית עשו שימוש במכונות הצפנה שונות כמו TypeX הבריטית ו-SIGABA האמריקאית (שככל הידוע לא פוצחה בעודה בשירות פעיל).
בספרו של וינטרבותאם The Ultra Secretes צוטט גנרל דווייט אייזנהאואר לאחר המלחמה שלמודיעין האולטרה הייתה השפעה "נחרצת", כלשונו, על ניצחון בעלות הברית במלחמת העולם השנייה [12]. כמו כן טוען וינטרבותאם בספרו שהמלחמה הייתה עשויה להיגמר במפלה מוחלטת אילו לא הייתה קיימת אולטרה.
[עריכה] ניתוח סטטיסטי של צפנים קלאסיים
|
|
ערך מורחב – ניתוח תדירויות (קריפטוגרפיה) |
לצפנים רבים חשיבות היסטורית בלבד והם אינם בטוחים כיום לשימוש. צפנים אלו סובלים מבעיית היתירות. בכל שפה ישנן אותיות ששכיחותן גבוהה מזו של האחרות. בשפה העברית למשל, האות יו"ד מופיעה בשכיחות של 12 אחוז בערך מסך כל האותיות בטקסט נפוץ. לעומת האות זי"ן שמופיעה בכאחוז אחד בקירוב. מידע סטטיסטי על התפלגות האותיות בשפה ספציפית, עשוי לסייע בידי מנתח הצופן בחשיפת המסר ללא צורך במפתח, או אף בחשיפת המפתח עצמו מתוך טקסט מוצפן קצר יחסית.
קיימות מספר שיטות לפענוח צופן רב-אלפביתי עם מפתח קצר, בהן שיטת קסיסקי או מבחן קסיסקי, בה מנסים לאתר את גודל המפתח מתוך מקטעים החוזרים על עצמם בטקסט המוצפן. משנמצא אורך המפתח, מחלקים את הטקסט המוצפן לגושים באורך המפתח ומפעילים ניתוח סטטיסטי על כל גוש בנפרד בהתבסס על שכיחות האותיות. וכן שיטת מדד צירופי מקרים של ויליאם פרידמן שפענח את צופן PURPLE היפני, בה המתקיף מנסה לחשוף את מחזוריות הצופן (אורך המפתח) על ידי מדידת שכיחות יחסית של מקבצי אותיות בטקסט המוצפן בהתבסס על טבלת שכיחויות שהוכנה מראש, שיטה זו טובה כנגד צופן רב-אלפביתי, כגון ספר-צופן (Running key) וכן צופן ויז'נר.
[עריכה] הצפנה מודרנית
תהליך התקשרות מאובטחת כולל שני שלבים בסיסיים:
- הצפנה: שנעשית על ידי השולח ובמסגרתה המסר הגלוי מועבר למצב מוצפן.
- פענוח: שנעשה על ידי המקבל ובמסגרתו המסר המוצפן חוזר להיות גלוי.
בשני השלבים האמורים משתמשים המצפין והמפענח בפרוטוקולים ובאלגוריתמים קריפטוגרפיים ידועים לביצוע משימות ההצפנה. כאשר השיטות בהן השתמשו השולח והמקבל גלויות ומוסכמות מראש, רק מפתח ההצפנה הנו סודי. במערכת קריפטוגרפית שלמה, מתווספים בדרך כלל תהליכים נלווים כמו תהליך הכנת מפתחות הצפנה, מנגנון העברת מפתחות, פרוטוקול אימות זהויות והבטחת שלמות ועוד, כשחלקם אינם קריפטוגרפיים. תהליכים אלו בדרך כלל שקופים מבחינת המשתמש. כאשר משתמש מתחבר לשרת או כאשר מתבצעת עסקה מקוונת, נעשות ההכנות הדרושות ברקע מבלי שהמשתמש יחוש בכך מלבד הדרישה מעת לעת לספק אמצעי זיהוי כלשהם כמו סיסמה, מספר כרטיס וכדומה.
אלגוריתמים להצפנה מתחלקים לשני סוגים עיקריים, הצפנה סימטרית וא-סימטרית.
[עריכה] הצפנה סימטרית
|
|
ערך מורחב – צופן סימטרי |
הצפנה סימטרית היא הוותיקה ביותר ושורשיה החלו עם ההצפנה הקלאסית לפני מאות שנים. בהצפנה סימטרית נעשה שימוש במפתח יחיד להצפנה ולפענוח. על מנת שניתן יהיה להעביר מידע סודי בין הצדדים המתקשרים, שני הצדדים נדרשים להחזיק באותו מפתח הצפנה. יתרונותיה של ההצפנה הסימטרית הם ביעילותה (מפתח הצפנה באורך של 128 סיביות ומעלה באלגוריתם טוב נחשב כמספק) ובכוח המחשוב הנמוך הדרוש ליישומה לעומת הצפנה אסימטרית. דוגמה לאלגוריתם כזה הוא אלגוריתם DES, שהיה לאלגוריתם הסימטרי הראשון שהופץ בקנה מידה גדול ואף הפך לתקן הצפנה רשמי. DES שימש בעיקר בתחום הבנקאות והוא עדיין בשימוש מוגבל. למרות שכיום נחשב לאלגוריתם לא-בטוח, חשיבותו ההיסטורית נותרה בעינה מאחר שהטכניקות שיושמו באלגוריתם מהוות בסיס למרבית האלגוריתמים הסימטריים המודרניים. כיום הוחלף DES באלגוריתם AES שהפך ב-2001 לתקן ההצפנה הרשמי של ארצות הברית. אלגוריתמים סימטריים נוספים הם 3DES, IDEA, FEAL, SAFER, RC5, RC4, ו-Serpent.
הצפנה סימטרית סובלת מבעיה בסיסית: הצורך בהעברת מפתח ההצפנה לידי מקבל הצופן על מנת שיוכל לפענחו. נגישות למפתח ההצפנה מצד גורם זר תאפשר לו לפענח את כל המסרים שהוצפנו באמצעות אותו מפתח. שמירה על מפתח הצפנה בסוד לאורך זמן גם היא בעייתית, במיוחד אם מספר המפתחות שצריך לזכור גדול. ניתן לפתור בעיות אלו באמצעות פרוטוקולים בטוחים להעברת מפתח הצפנה, לעתים בשילוב שיטות אסימטריות ולעתים בסיוע צד-שלישי נאמן (TTP). פרוטוקול דיפי-הלמן היה לאלגוריתם הראשון שהתמודד עם בעיית העברת המפתחות בשיטה האסימטרית. פרוטוקול זה מאפשר העברת מפתח הצפנה סימטרי בצורה מאובטחת בתשתית גלויה מבלי שהמשתתפים יאלצו להיפגש כלל. לעתים משלבים בין השיטות הסימטריות והאסימטריות, תוך ניצול יתרונותיהן, להשגת בטיחות אופטימלית.
[עריכה] סודיות מושלמת
|
|
ערך מורחב – סודיות מושלמת |
בשנת 1949 הראה קלוד שאנון, בשיטות השאולות מתורת האינפורמציה, שיטת הצפנה (סימטרית) "מושלמת" המכונה פנקס חד-פעמי (One time pad). שיטה זו המבוססת על צופן ורנם, בה מצפינים מחרוזת מסר על ידי חיבור XOR של סיביות המסר בזו אחר זו, עם מפתח שנבחר באופן אקראי. אם המפתח אקראי "אמיתי" וחד-פעמי ובאורך המסר המיועד להצפנה, הצופן יהיה בעל סודיות מושלמת (Perfect Secrecy) והוא בטוח ללא סייג. אין שום דרך לשחזרו ללא המפתח (אפילו במקרה שמנחשים מפתח, אין דרך לדעת האם הוא המפתח הנכון). פנקס חד-פעמי מחייב שימוש יחיד במפתח. המפתח חייב להיות ממקור אקראי אמיתי (בניגוד למספרים פסבדו אקראיים המיוצרים על ידי מחשב).
שיטה זו אינה מעשית ביישומים רבים משתי סיבות עיקריות: ראשית, הכנת מפתח אקראי (אמיתי) באורך המסר הופכת קשה כאשר מדובר במסר גדול מאוד. שנית, הצורך בהעברת מפתח ההצפנה הסודי לידי המקבל כרוך בסיכון רב. דרוש לשם כך ערוץ התקשרות בטוח שישמש להעברת המפתח, מה שהופך את השיטה ללא ישימה בסיטואציות רבות, בעיקר כאשר לא היה קשר מוקדם בין הצדדים המתקשרים (דוגמת מסחר ברשת האינטרנט). עם זאת, עדיין קיימים שימושים מעשיים מעטים לשיטה זו. קיימים אלגוריתמים קוונטיים המאפשרים להתגבר על מכשול בעיית העברת המפתח, ומספקים בטיחות מוכחת.
[עריכה] הצפנה א-סימטרית
|
|
ערך מורחב – מפתח ציבורי |
סוג חדש יותר של הצפנה הוא הצפנה אסימטרית. רעיון ההצפנה האסימטרית עלה לראשונה ב-1976 במאמרם המפורסם[11] של ויטפילד דיפי ומרטין הלמן הנחשבים להוגי השיטה וממציאיה. בהצפנה זו, בניגוד להצפנה סימטרית, נעשה שימוש בשני מפתחות, האחד נקרא מפתח פומבי איתו מצפינים את המסר. מכאן שמה של השיטה – Public Key Cryptography. המפתח הפומבי אינו נשמר בסוד אלא גלוי ונגיש לכל. לא ניתן לשחזר את המסר המוצפן באמצעות שימוש במפתח זה. המפתח השני נקרא מפתח פרטי שעליו להישמר בסוד בידי המקבל ורק באמצעותו ניתן לפענח את המסר המוצפן.
הקשר בין מפתחות ההצפנה בצופן אסימטרי הוא חד-חד ערכי, כלומר לכל מפתח הצפנה ישנו מפתח פענוח יחיד המתאים לו ולהפך. שני המפתחות הופכיים זה לזה כך שניתן להצפין עם אחד ולפענח עם האחר ולהפך. בשיטה זו המקבל מייצר לעצמו צמד מפתחות, האחד פרטי והאחר פומבי. את המפתח הפרטי שומר בסוד ואילו את המפתח הפומבי מעמיד לרשות הציבור. כאשר משתמש אחר רוצה להעביר מסר מוצפן לגורם זה, כל שעליו לעשות הוא להצפין את המידע באמצעות המפתח הציבורי שלו. היחיד שיוכל לפענח את המסר הוא המחזיק במפתח הפרטי התואם.
עם המצאת ההצפנה האסימטרית, התפתח ענף חשוב בקריפטוגרפיה הנקרא "חתימה דיגיטלית". ניתן ליישם חתימה כזו באמצעות שיטות הצפנה אסימטריות, תוך ניצול תכונת החילופיות של פונקציות המפתח באמצעות החלפת תפקידים בין המפתח הפרטי והמפתח הפומבי. החותם מצפין באמצעות המפתח הפרטי "תווית" הנגזרת מהמסר עליו הוא מעוניין לחתום, באמצעות פונקציית גיבוב. את התווית המוצפנת יחד עם המסר עצמו הוא שולח למקבל, שמאמת את החתימה באמצעות המפתח הפומבי השייך לחותם. בשל העובדה שהמסר עצמו אינו מוצפן, חתימה דיגיטלית אינה נחשבת להצפנה במובן זה. לעובדה זו השלכות מסוימות, כאשר קיימות מגבלות חוקיות או אחרות על הצפנה.
חסרונותיה של השיטה האסימטרית נעוצים באורך מפתחות ההצפנה, הגדל בהתאם לכוח המחשוב (נכון לינואר 2005 נעשה שימוש במפתחות באורך של 2048 סיביות כסטנדרט). בשל כך כוח המחשוב הנדרש להצפנה אסימטרית גדול משמעותית מהצפנה סימטרית. עקב כך, מקובל שההצפנה האסימטרית אינה מהווה חלופה להצפנה הסימטרית אלא משלימה אותה. מערכות הצפנה מתקדמות מנצלות את שתי השיטות תוך ניצול יתרונותיהן להפקת מרב התועלת. בין האלגוריתמים אסימטריים המפורסמים נמנים: RSA, DSA, אל-גמאל,רבין וECC. האחרונה הינה סוג חדש של מערכת מפתח-פומבי הנקראת הצפנה מבוססת עקומים אליפטיים, לדעת מומחים רבים, השימוש בה מאפשר הקטנת מפתחות ההצפנה במידה ניכרת (בסדר גודל של 256 סיביות) מבלי לאבד מבטיחותה ובכך לייעל את מערכת ההצפנה. עובדה זו אטרקטיבית במיוחד עבור מפתחי חומרה ייעודית להצפנה, שמטבע הדברים מוגבלת בכוח המחשוב ובכמות הזיכרון.
[עריכה] קריפטאנליזה מודרנית
מטרת הקריפטאנליזה היא מציאת נקודות תורפה בסכמות הצפנה בפרט ובמערכות אבטחת מידע בכלל. קיימת מעין תחרות סמויה בין ממציאי האלגוריתמים ומפתחי מערכות ההצפנה לבין האנליסטים שמנתחים אותם. התפתחות הקריפטוגרפיה המודרנית נעשית בשני מסלולים מקבילים - התפתחות של שיטות הצפנה מתקדמות יותר ויותר ומאידך התפתחות של שיטות פיצוח החושפות חולשות בשיטות אילו וחוזר חלילה. לעתים די בהוכחה תאורטית כי אלגוריתם מסוים ניתן לפיצוח בכמות עבודה נמוכה מזו שהצהירו עליה מפתחי האלגוריתם. בדרך זו התפתחו אלגוריתמים רבים, לאחר שממציאיהם נאלצו להתמודד עם שיטות פיצוח חדשות שהתגלו ובכך המציאו גרסאות משופרות שנועדו לסכל שיטות אלו.
בעבר נטו מפתחי אלגוריתמים להצפנה לשמור בסוד את פרטי האלגוריתם שפיתחו. אולם כיום מקובל לאמץ את עקרון קרקהופס הקובע ששמירת אלגוריתם הצפנה בסוד אינה מהווה חלופה לבטיחותו. גם בעת המודרנית הוכרזו מספר אלגוריתמי הצפנה כסודיים. אלגוריתם Skipjack שפותח על ידי NSA נשמר בסוד עד 1998. צופן זרם RC4 היה סוד מסחרי כשהומצא ב-1987 על ידי רונלד ריבסט במעבדות RSA. אולם בדרך כלשהי הצליח מישהו להנדס לאחור את האלגוריתם ופרטיו דלפו באופן אנונימי לרשת האינטרנט והפכו במהרה לנחלת הכלל.
בקריפטוגרפיה מודרנית, אלגוריתמים מוצלחים הם כאלו שזכו לביקורת הציבור, במיוחד לעיון מדוקדק של פרטיהם בידי אנליסטים ומומחי הצפנה מסביב לעולם. אלגוריתם AES הוא דוגמה טובה לאלגוריתם שנבחר בקפידה מבין מספר מועמדים טובים, לאחר תחרות שאורגנה על ידי NIST שנמשכה כמספר שנים, בה נבחנו האלגוריתמים המועמדים על ידי מומחים רבים.
אלגוריתם הצפנה טוב צריך להישען אך ורק על סודיות המפתח. כך שאם ייחשף אין צורך להחליף את האלגוריתם כולו אלא רק להחליף מפתח. באנלוגיה למנעול צירופים, כאשר בעל המנעול חושד כי עוד מישהו מכיר את הצירוף הנכון לפתיחת המנעול, כל שעליו לעשות הוא להחליף צירוף, אין צורך לרכוש מנעול חדש.
מלבד פנקס חד-פעמי, לא ידוע על אלגוריתם בלתי שביר. כל אלגוריתם ניתן לשבירה עם די זמן וכוח חישוב. הבחירה היא תמיד בין קלות יישום לעומת בטיחות. קיימות שיטות ניתוח רבות, בחלקן מנתח הצופן (המכונה לעתים "המתקיף"), מחזיק בצופן בלבד ועליו לגלות את הטקסט הקריא או המפתח מתוכו (התקפת קופסה שחורה), בחלקן המתקיף מחזיק בידיו חלק מהטקסט המקורי שהוצפן, במקביל לצופן שהתקבל ממנו (התקפת גלוי ידוע, known plaintext attack) ובחלקן המתקיף מסוגל לבחור בעצמו בטקסט שהוא מעוניין, כמקור להצפנה וללמוד את תוצאותיו (התקפת גלוי נבחר, chosen plaintext attack). בחירת טקסט כאסטרטגיה לשבירת הצופן אפשרית בהרבה מערכות.
למעשה, הדעה הרווחת היא כי מרבית האלגוריתמים הידועים שזכו לביקורת ובדיקה מדוקדקת של מומחים, אכן בטוחים. הסיבה שמערכות רבות נפרצו או כשלו לא נבעה ישירות מליקויים כלשהם באלגוריתמים שעליהם התבססו, אלא בעיקר בשל כשלים או שגיאות אנוש שחלקן נבעו מבורות, ביישום אותם אלגוריתמים או מרשלנות ואי-שמירה על נוהלי בטיחות. בדרך כלל קל הרבה יותר לשחד אדם בסכום הגון, מאשר לנתח אלגוריתם. כדי להקים מערכת אבטחה, תחילה יש להבין היטב את האלגוריתמים המשמשים אותה ובמיוחד את תכונותיהם, פגיעותם ומגבלותיהם. ולוודא כי המערכת כמכלול אינה חדירה או מדליפה מידע עקיף המסכן את בטיחותה. כגון מידע תזמון (timing). בגרסת WAP (פרוטוקול אבטחה סלולרי) המקורית לדוגמה, התגלתה פרצה בטיחותית חמורה שנבעה מאופן יישום אלגוריתם RC4 וגרמה לדליפת מידע שאיפשר לפרוץ את המערכת בקלות.
[עריכה] אנליזה של אלגוריתמים סימטריים
ככלל שיטות הפיצוח הקלאסיות המבוססות על ניתוח סטטיסטי אינן ישימות כנגד אלגוריתמים סימטריים מודרניים, כיוון שנעשה שימוש בגושי טקסט גדולים (64 סיביות ומעלה) עובדה שמאלצת את המתקיף לנתח כמות טקסט גדולה פי כמה ולכן אינה מעשית. מלבד זאת קיימות שיטות לביטול יתירות הצופן (ראה מצבי הפעלה). כיום קיימות שיטות אחרות לפיצוח וניתוח אלגוריתמים סימטריים ביניהן נמנים:
- כוח גס (Brute Force): חיפוש ממצה של לפחות מחצית מטווח המפתחות האפשריים במקרה הממוצע עד למציאת המפתח שאיתו נעשה שימוש. עם מספיק זמן וכוח חישוב, שיטה ברוטלית וישירה זו תביא בסופו של דבר לתוצאות, אולם סיבוכיותה אינה מעשית ברוב המקרים. ממציאי אלגוריתמים סימטריים שואפים כי האלגוריתם שלהם יהיה טוב עד כי רק כוח גס מסוגל לפצח אותו. לצורך המחשה, כוח גס כנגד הצופן DES מצריך בדיקה של לפחות
מפתחות במקרה הממוצע עד שיימצא המפתח. מספר זה הוא כמחצית מטווח המפתחות האפשרי. - קריפטאנליזה לינארית: שיטת שבירת צופן המיוחסת לקריפטוגרף היפני מיצורו מצואי. בשיטה זו ניתן לפצח את DES ב-
ניסיונות הצפנה בהינתן
טקסטים מוצפנים שמקורם ידוע. קריפטאנליזה לינארית היא התקפת גלוי ידוע, המתמקדת בחיפוש אחר קירובים לינאריים היעילים ביותר המתאימים למספר ספציפי של סבבים בצופן המותקף, עם שיעור הצלחה גבוה מחצי, תוך ניצול חולשות בתיבות ההחלפה (S-box) של האלגוריתם. כל ביטוי כזה מאפשר לחלץ סיבית מפתח אחת באמצעות תהליך הסתברותי של חיפוש התאמות בכמות גדולה של טקסט מוצפן ומקור ידועים ובסופו של תהליך ניחוש המפתח כולו.[13] למרות שזהו שיפור משמעותי לעומת כח גס, השיטה אינה יעילה עבור מחשב ממוצע בהתחשב בכמות הטקסט הדרושה. - קריפטאנליזה דיפרנציאלית: הומצאה על ידי אלי ביהם ועדי שמיר (מכון ויצמן למדע 1980).[14] זו שיטה רבת עוצמה לניתוח אלגוריתמים סימטריים מכל סוג כמעט. בשיטה זו נבחנת מידת ההשפעה של הבדלים בקלט על פלט הצופן. בשיטה זו ניתן לפצח את DES ב-
ניסיונות, אף בלא ידיעת מקור הצופן. כמו כן נפרצו בשיטה זו ב-1989 וב-1991 כל וריאציות צופן FEAL (ארבעה ושמונה סבבים). הוכח גם שגרסאות מתקדמות יותר של האלגוריתם FEAL-N וכן FEAL-NX שפותחו עקב כך ניתנות לשבירה (עד 31 סבבים) בפחות מהזמן הדרוש לכוח גס. ובכך הקיץ הקץ על האלגוריתם [15].
- ממציאי אלגוריתם DES היו מודעים לאנליזה דיפרנציאלית עוד בשנת 1970, אולם שמרו ידיעה זו בסוד מטעמים של ביטחון לאומי. הסברה היא, כי ממציאי האלגוריתם לא פרסמו מלכתחילה את שיקולי העיצוב שהנחו אותם בבניית האלגוריתם, מן הסיבה שלאחר התייעצות עם NSA הוחלט כי פרסום חומר זה עשוי לחשוף את האנליזה הדיפרנציאלית, שלמעשה הקנתה לארצות הברית עליונות על פני מדינות אחרות בתחום ההצפנה באותה עת.
[עריכה] ניתוח אלגוריתמים א-סימטריים
אלגוריתמים המבוססים על מפתח-פומבי נשענים בעיקר על מספר מצומצם של בעיות מתמטיות קשות מאוד. בהן נמנות בעיית פירוק לגורמים (עליה מבוססת, למשל, הצפנת RSA), בעיית הלוגריתם הדיסקרטי (עליה מבוססת הצפנת אל-גאמל) ובעיית הוצאת שורש ריבועי מודולו מספר פריק (עליה מבוססת הצפנת רבין). בעיות אלו מאפשרות יישום פונקציות חד-כיווניות, במובן שהן קלות לחישוב בכיוון אחד אולם קשות ביותר לשחזור בכיוון ההפוך. במיוחד מדובר על פונקציות חד-כיווניות עם דלת סתרים (Trap-door), שהיא פונקציה חד-כיוונית שקל לחשבה גם בכיוון ההפוך אם קיים "מידע נסתר" נוסף (למשל בבעית הפירוק לגורמים, דלת הסתרים היא הגורמים הראשוניים או חלקם). על פונקציה חד-כיוונית מבוססים מרבית האלגוריתמים האסימטריים, כאשר דלת הסתרים היא המפתח הפרטי. אף שמשערים כי הפונקציות בהן משתמשים היום בפועל הן חד-כיווניות, מעולם לא ניתנה לכך הוכחה פורמלית, ושאלת קיומן של פונקציות חד-כיווניות קשות באופן ודאי היא בעיה פתוחה חשובה במדעי המחשב (בפרט, תשובה חיובית לשאלה זו תהווה הוכחה לכך ש-P שונה מ-NP, מה שישים קץ לשאלה הפתוחה המרכזית במדעי המחשב).
טרם נמצא אלגוריתם יעיל המסוגל לפתור בזמן ריצה פולינומי את אחת מהבעיות שבבסיס האלגוריתמים האסימטריים הנפוצים בימינו ובכך לסכנם (ובפועל, להוציאם מכלל שימוש). קיימים עם זאת אלגוריתמים רבים לפתרון בעיות יסודיות אלו, היעילים במידה ניכרת מכוח גס. הדוגמה הידועה ביותר היא בעיית פירוק לגורמים עתיקת היומין, שמתמטיקאים רבים וטובים התחבטו בה. האלגוריתם הטוב ביותר הידוע כיום לפתרונה הוא נפת שדה מספרים.[16] בנובמבר 2005 הצליח צוות מתמטיקאים לפרק לגורמים את RSA-200 (בגודל 663 סיביות) מתוך מספרי האתגר של מעבדות RSA במאמץ שנמשך כמעט שלוש שנים, תוך שימוש במספר גדול של מחשבים שעבדו במקביל. במאי 2007 הצליח צוות מתמטיקאים לפרק לגורמים את המספר
(המכונה מספר מרסן) המספר הגדול ביותר שפורק לגורמים נכון להיום (בגודל 1039 סיביות), במאמץ שנמשך קרוב לשנה תוך שימוש בגרסה מותאמת של נפת שדה המספרים. למרות שהמספר אינו מהסוג הנפוץ בשימוש במערכות מפתח פומבי דוגמת RSA, הדעה הרווחת היא כי בקרוב תמצא הדרך להרחיב את השיטה לפירוק מספרים בגודל 1024 סיביות מהסוג הנפוץ במערכות מפתח פומבי רבות בימינו.
בשל הפגיעות היחסית של הבעיות שעליהן מבוססים האלגוריתמים האסימטריים, משתמשים במפתחות הצפנה ארוכים יותר משמעותית מאלו המשמשים להצפנה סימטרית בדרך כלל וכתוצאה מכך נדרש זמן חישוב גבוה כעשרת מונים מאלגוריתמים סימטריים. כיום מקובל להניח שמפתח באורך 2048 סיביות מהווה מרווח ביטחון מספיק לתקופה הקרובה עבור הצפנות א-סימטריות (אם כי הדבר תלוי בשיטה - בהצפנה מבוססת עקומים אליפטיים משערים שמפתח קצר בהרבה מספק את אותה רמת ביטחון).
[עריכה] פרימיטיבים קריפטוגרפיים
פרימיטיב קריפטוגרפי הוא הגדרה לאלגוריתם קריפטוגרפי שייעודו ספציפי למטרה או יעד מוגדר. אלגוריתם AES הוא פרימיטיב קריפטוגרפי שתפקידו להצפין מידע בשיטה סימטרית. פרימיטיבים אחרים הם RSA, פונקציית גיבוב SHA-1 וכן DSA. מהות הרעיון הוא שבהקמת מערכת אבטחת מידע שלמה, אין די באלגוריתם אחד דהיינו בפרימיטיב קריפטוגרפי אחד, אלא משלבים מספר אלגוריתמים שלכל אחד מהם תפקיד אחר. יחדיו הם משלימים זה את זה למערכת שלמה. על כן נודעת חשיבות רבה לבדיקת המאפיינים והיחסים שבין הפרימיטיבים השונים, על מנת לוודא כי השילוב ביניהם בטוח ואינו מכיל פרצות. לעתים אי-הבנה באשר למהות פרימיטיב מסוים והניסיון לשלבו במערכת או להשתמש בו באופן שלא יועד לו, עשוי לפגוע בבטיחות המערכת כולה. לדוגמה פונקציית גיבוב טובה ליצירת ערכים ייחודיים, אולם אינה טובה כשלעצמה לצורך הצפנה. יתרונה הברור בא לידי ביטוי במערכת הצפנה דוגמת PGP בה יש צורך בערך חד-כיווני של המידע המשמש תווית לצורך החתימה על המסר באמצעות חתימה דיגיטלית.
[עריכה] פרוטוקולים ומנגנונים קריפטוגרפיים
|
|
ערך מורחב – פרוטוקול קריפטוגרפי |
פרוטוקול קריפטוגרפי הוא אלגוריתם מבוזר המכיל רצף מוגדר של צעדים, המפרטים במדויק את הפעולות הדרושות לשתי ישויות (משתמשים) או יותר, להשגת יעד אבטחה ספציפי כמו העברת מפתח או אימות זהות. פרוטוקולים קריפטוגרפיים משלבים מספר פרימיטיבים קריפטוגרפיים שונים, על מנת להגיע למטרה לשמה נועדו.
מנגנון קריפטוגרפי, בניגוד לפרוטוקול, הנו הגדרה מקיפה יותר הכוללת אלגוריתמים (המבוצעים על ידי ישות אחת), פרוטוקולים וכן טכניקות לא בהכרח קריפטורגפיות כגון פרוצדורות ונהלי בטיחות, להשגת יעד אבטחה ספציפי.
[עריכה] קריפטוגרפיה ותורת הקוונטים
במהלך המאה ה-20 החל להתפתח בקצב מהיר ענף החישוביות הקוונטית, שעלולות להיות לו השלכות קריטיות על הקריפטוגרפיה המודרנית. אם ניתן יהיה לבנות מחשב קוונטי בעל יכולת גידול (סקאלבילי), אזי למעשה מרבית האלגוריתמים האסימטריים כגון RSA ודומיו יצאו מכלל שימוש. יהיה צורך בשדרוג מקיף של כל מערכות ההצפנה. זאת בשל קיומם של אלגוריתמים קוונטיים שמאפשרים פיצוח צפנים אילו בזמן פולינומי, לאור היכולת לבצע חישובים בצורה מהירה יותר מאשר במחשב "רגיל".
הרעיון שבבסיס החישוביות הקוונטית הועלה לראשונה על ידי הפיזיקאי ריצ'רד פיינמן, שמסתמך על עקרון השזירה הקוונטית: אם מספר גדול מאוד של קיוביטים שזורים זה בזה, אזי חישובים על ביטים אלו מקבילים לביצוע חישובים רבים בו זמנית. רעיון זה קרם עור וגידים כאשר פותחו מספר אלגוריתמים קוונטיים שדורשים זמן ריצה קטן יותר מאשר מקבילם הקלסי.
שני האלגוריתמים הבולטים בנושא זה הם אלגוריתם שור לפירוק מספר לגורמים שעל מחשב קוונטי מתבצע בזמן פולינומי ולא מעריכי, ואלגוריתם גרובר לחיפוש במערך לא ממוין, המתבצע בסיבוכיות זמן שהיא שורש הזמן הנדרש בחישוב קלאסי. אלגוריתם שור פירושו שאם אכן ייבנה מחשב קוונטי אזי ביכולתו לפרוץ מערכות הצפנה פומביות (בהן הסוד הוא פירוק לגורמים של מספר גדול). משמעות אלגוריתם גרובר הינה שניתן לקצר באופן משמעותי את זמן מציאת המפתח בשיטת כוח גס.
מכאן החל העיסוק בניסיון למצוא פרימיטיבים קריפטוגרפים שיהיו עמידים גם בפני מערכות חישוב קוונטיות, דוגמת הצפנה מבוססת סריג.
עד כה לא נמצאה דרך מעשית לבניית מחשבים בעלי מספר רב מאוד של ביטים קוונטיים (מחשבים סקאלאבילים), ולכן שימוש במחשבים קוונטים לפריצת מערכות הצפנה מודרניות הוא בגדר בלתי אפשרי בטכנולוגיה הקוונטית הנוכחית.
[עריכה] הצפנה קוונטית
|
|
ערכים מורחבים – הצפנה קוונטית, החלפת מפתחות קוונטית |
על פי תורת הקוונטים, ובפרט על פי עקרון אי הוודאות של הייזנברג, לא ניתן לבצע 'מדידה' מבלי להשפיע על המצב של האובייקט הנמדד. המשמעות של עקרון זה הינה שאדם המאזין לשיחה, בהכרח משפיע עליה, ומכאן שניתן לזהות את ההאזנה. בעקרון זה נעשה שימוש להעברת מידע בצורה לגמרי מאובטחת - המזהה כל ניסיון להאזין למידע. בשנת 1984 פותח פרוטוקל ראשון המיישם עקרון זה על-מנת לבצע החלפת מפתחות קוונטית (QKD) באופן בטוח, ולאחריו פותחו מספר פרוטוקולים נוספים אשר עושים שימוש בשיטות שונות, דוגמת שימוש במצבי EPR). ניתן לראות בפרוטוקולים אלו את המקביל הקוונטי של פרוטוקול דיפי-הלמן. בפרוטוקולים אלו הסודיות המתקבלת היא "מושלמת" במובן תורת האינפורמציה. כל ניסיון של גורם זר להתערב בפרוטוקול מסתיים בגילויה של התקיפה. אם לא נתגלתה תקיפה, מוכח כי כמות האינפורמציה שזלגה אל גורם שלישי היא זניחה.
[עריכה] חוקיות וזכויות שימוש
מטבע הדברים, סגולותיה של הקריפטוגרפיה, ככלי לשמירה על פרטיות, מנוצלות לרעה על ידי גורמים זדוניים כמו ארגוני פשע, טרור וריגול. מאז ומתמיד ממשלות וגורמי ביטחון במדינות שונות גילו עניין רב בהתפתחויות בתחום זה. בכל מדינה כמעט קיים גוף האחראי על השימוש בהצפנה, מחקר ופיתוח וכן ניטור וניתוח של חומרים מוצפנים שקיים חשש שהם מסכנים את ביטחונה הלאומי. גם ארגוני זכויות אדם ברחבי העולם מגלים עניין בתחום זה בשל תרומתו לשמירת הפרטיות. בשל כך היו בעבר בארצות הברית מספר אירועים שערורייתיים, הקשורים בנושאים חוקתיים בתחום זה. ישנן מדינות (בהן ישראל) שבהן עד היום קיימות מגבלות חוקיות לעיסוק בקריפטוגרפיה ובכל מה שקשור אליה. בישראל קיים החל מ-1974 "צו צופן" ([3], תוקן ב-1998) המחייב כל גורם המעוניין לעסוק בהצפנה בקבלת רישיון עיסוק בהצפנה ממנכ"ל משרד הביטחון (בעבר מקצין קשר ראשי בצה"ל). במדינות אחרות (כמו ארצות הברית), העיסוק בקריפטוגרפיה לא מוגבל מקומית אך קיימות מגבלות ייצוא של חומרים קריפטוגרפיים מחוץ לתחומי המדינה. למעשה בארצות הברית קריפטוגרפיה סווגה כסוג של "תחמושת" בדומה לטנק או טיל בליסטי, ובעבר אף נאסר שימוש בהצפנה חזקה בארצות הברית, כאשר הפיקוח על ההצפנה היה באחריות הסוכנות לביטחון לאומי (NSA) של ארצות הברית. NSA הנו הארגון הממשלתי הגדול והמצויד ביותר בעולם שעוסק בקריפטוגרפיה ומעסיק עשרות אלפי עובדים. מטרתו העיקרית ניטור, פענוח וחשיפת תשדורות או מידע דיגיטלי אחר ברחבי העולם, שלהם זיקה לביטחונה הלאומי של ארצות הברית. מדינות אחרות (בעיקר מדינות ארופיות) נוקטות בגישה יותר ליברלית בכל הקשור להצפנה.
על אלגוריתמים קריפטוגרפיים אפשר להגן (במדינות מסויימות, כגון ארצות הברית) בפטנטים. על המימוש שלהם אפשר להגן בזכויות יוצרים (אולם אם המפרט מפורסם, כל אחד יכול לממש אותם מחדש). אפשר לנסות גם לשמור אותם כסוד מסחרי. בארצות הברית, בקנדה ובמדינות רבות אחרות רשומים מאות פטנטים על סוגים שונים של אלגוריתמים קריפטוגרפיים. לדוגמה אלגוריתם RSA נרשם כפטנט שתוקפו פג בשנת 2000. בשל המגבלה שנוצרה מהפטנט נאלצה ממשלת ארצות הברית ליצור תקן חתימה אלקטרונית חלופי בשם DSA שלא מוגן בפטנטים[17]. אי הבהירות סביב הפטנטים שעל ההצפנה בעקומים אליפטיים (ר' בהמשך) היא אחת הסיבות לחוסר הפופולריות שלהם[דרוש מקור].
בארצות הברית (וגם בישראל) רשומים מספר פטנטים על אלגוריתמים שונים להצפנה. החברה האמריקאית מעבדות RSA מחזיקה כיום במספר פטנטים הקשורים לאלגוריתמי הצפנה שונים[18]. למרות ששם החברה הינו "RSA", הפטנטים שבבעלותה כיום אינם בהכרח קשורים לאלגוריתם המקורי. החברה הקנדית Certicom מחזיקה בכמאה ועשרים פטנטים בהיבטים שונים של ECC (הצפנת עקום אליפטי) בארצות הברית ובקנדה בלבד.
החל מאמצע שנות ה-90 של המאה העשרים היו כמה תחרויות של ממשלות לבחירת פרימיטיבים קריפטוגרפיים חדשים: תחרות AES של מכון התקנים האמריקאי[19], NESSIE של האיחוד האירופי[20], CRYPTEC ביפן[21]. בכל המקרים הללו אחד מהתנאים היה שהזוכים ישחררו את התוכנה ללא מגבלות שימוש כלשהן.
[עריכה] ראו גם
| עיינו גם בפורטל: | |||
|---|---|---|---|
| פורטל מדעי המחשב | |||
[עריכה] לקריאה נוספת
- ברוס נורמן, מלחמת הצפנים, תל אביב: הוצאת מערכות, 1978.
- סיימון סינג, סודות ההצפנה, תל אביב: הוצאת ידיעות אחרונות, 2003.
- A. S. Tanenbaum, Computer Networks, 4th ed. (Prentice Hall, 2003).
[עריכה] קישורים חיצוניים
| מיזמי קרן ויקימדיה |
|---|
- מבוא להצפנה ואבטחת מידע
, מבוסס על קורס מאת פרופ' שלמה קיפניס. - אתר אית"ן ללימוד הצפנה, אתר ללימוד מקיף של סוגי ההצפנה השונים: PGP, RSA, SSH ועוד
- ספר/מדריך מקוון המגדיר מונחים בקריפטוגרפיה, מכיל השוואות בין סכימות קריפטוגרפיות ומספק דוגמאות מוחשיות (אנגלית)
- הספר Handbook of Applied Cryptography, לשימוש פרטי בלבד.
- האתר הבינלאומי של PGP
- הסבר על איך עובדת PGP (אנגלית)
- הסדר העיסוק באמצעי הצפנה, מדינת ישראל, משרד הביטחון אגף הפיקוח על היצוא הביטחוני, פיקוח ורישוי אמצעי הצפנה.
- ערכת כלים קריפטוגרפיים של חטיבת אבטחת מחשבים (CSD) של NSA, כולל מידע מפורט על שלל אלגוריתמים קריפטוגרפיים למטרות שונות שאומצו על ידי ממשלת ארצות הברית (FIPS) להגנה על מידע מסווג ולא מסווג ונבדקו ואושרו לשימוש על ידי מומחי ממשל בכירים.
- יפתח הייטנר, קריפטוגרפיה - לא רק הצפנה

[עריכה] הערות שוליים
- ^ ראו: כתב הירוגליפי מוצפן
- ^ 2.0 2.1 אברהם טוביאס, על כתב סתרים צופן וחידות בספרותנו העתיקה
- ^ קוד וצופן בראי ההיסטוריה(באנגלית)
- ^ אלוביץ יובל, קריפטוגרפיה

- ^ זאב גלילי, החיים והמוות בידי כתבי הסתר
- ^ Al-Kindi, Cryptgraphy, Codebreaking and Ciphers
- ^ Haynes, John Earl and Klehr, Harvey, Venona: Decoding Soviet Espionage in America, Yale University Press, 2000, ISBN 0-300-08462-5
- ^ Leighton C. Peterson, Tuning in to Navajo: The Role of Radio in Native Language Maintenance, Teaching Indigenous Languages, 1997
- ^ מתוך תערוכת "Secret Wars", מוזיאון המלחמה האימפריאלי, 2003.
- ^ C.E. Shannon, "Communication Theory of Secrecy Systems", 1946 (pdf)
- ^ 11.0 11.1 Whitfield Diffie and Martin Hellman, "New Directions in Cryptography", IEEE Transactions on Information Theory, vol. IT-22, Nov. 1976, pp: 644–654. (pdf)
- ^ F.W. Winterbotham, The Ultra Secret, New York, Dell, 1974, pp. 16–17.
- ^ M. Matsui, "Linear cryptanalysis method for DES cipher", Advances in Cryptology - EUROCRYPT 1993, (pdf)
- ^ Eli Biham, Adi Shamir, Differential Cryptanalysis of the Data Encryption Standard, Springer Verlag, 1993. ISBN 0-387-97930-1, ISBN 3-540-97930-1.
- ^ Eli Biham, Adi Shamir: Differential Cryptanalysis of Feal and N-Hash. EUROCRYPT 1991: 1–16
- ^ .A. K. Lenstra, H. W. Lenstra, M. S. Manasse and J. M. Pollard "The number field sieve". Lecture Notes in Mathematics Vol. 1554, 1993
- ^ ליתר דיוק: תקן DSA מוגן בפטנט, אולם השימוש בפטנט הותר ללא שום מגבלות. ר' הערך לפרטים נוספים
- ^ למשל, עבור אלגוריתמי ההצפנה RC6 וRC6, [1].
- ^ דף הבית של תחרות AES
- ^ דף הבית של תחרות NESSIE. התחרות כונתה גם Crypto NESSIE. אולי במטרה ליצור בלבול עם קריפטוזואולוגיה
- ^ דף הבית של תחרות CRYPTEC
מפתחות במקרה הממוצע עד שיימצא המפתח. מספר זה הוא כמחצית מטווח המפתחות האפשרי.
ניסיונות הצפנה בהינתן
ניסיונות, אף בלא ידיעת מקור הצופן. כמו כן נפרצו בשיטה זו ב-1989 וב-1991 כל וריאציות צופן