קריפטוגרפיה
מתוך ויקיפדיה, האנציקלופדיה החופשית
קריפטוגרפיה היא ענף במתמטיקה ובמדעי המחשב העוסק בהיבטים השונים של אבטחת מידע בכלל והצפנה בפרט. דוגמאות לנושאים שקשורים באבטחת מידע:
- הצפנה והסתרה של מידע חסוי ממי שלא הוסמך לראותו.
- בקרת זכויות גישה מרחוק של משתמשים ברשת מחשבים.
- אימות זהויות, (כמו באמצעות סיסמה).
- פרוטוקולים להוכחת ידיעה, כמו פרוטוקול אתגר מענה והוכחה באפס ידע.
- מנגנוני חתימה דיגיטלית.
- מחוללי מספרים אקראיים.
- אלגוריתמים להבטחת שלמות מידע.
- אימות מקורות מידע כמו MAC.
- אנונימיות, תיעוד, אישור ומניעת הכחשה.
השם "קריפטוגרפיה" מקורו במילה היוונית "קריפטו" שמשמעותה נסתר או אמנות ההסתרה. בתרגום חופשי פירוש השם הוא תורת ההצפנה, אם כי משמעותו מקיפה יותר.
תוכן עניינים |
[עריכה] מונחים כלליים
משמעותה המקובלת של הצפנה היא הסתרת משמעות מסר קריא, לא באופן של הסתרת עצם קיומו (שיטה שכזו מכונה סטגנוגרפיה), אלא בעזרת שיטה מתמטית בה הופכים את המסר לבליל של סימנים אותו מכנים צופן, שאינו קריא לאף אדם זולת מי שבידיו הכלי (מפתח) על מנת לשחזר את המידע הקריא מתוכו.
תורת ההצפנה נוגעת להיבטים מעשיים רבים של השימוש במחשבים. החל מאבטחת רשתות תקשורת (גם אלחוטיות כמו רשת סלולרית), דרך דואר אלקטרוני, מסחר אלקטרוני ושימוש בכרטיסי אשראי וכן אבטחת מסופי משיכת מזומנים.
המונח קריפטוגרפיה משמש בדרך כלל כדי לתאר את הענף המדעי שעוסק במחקר שיטות הצפנה, אלגוריתמים קריפטוגרפיים, פרוטוקולים ומנגנוני אבטחת מידע, הדרכים לישומן והשיטות לפיצוחן. בניסוח פורמלי, משמשת המילה קריפטוגרפיה לתיאור חקר ויישום שיטות הצפנה ואילו קריפטואנליזה - חקר השיטות לפיצוח או שבירת ההצפנה. את תחום המחקר המאגד את הקריפטוגרפיה והקריפטואנליזה מכנים קריפטולוגיה. כאמור, באופן לא פורמלי לעתים קרובות משמשת המילה קריפטוגרפיה על מנת לתאר את הענף כולו.
המונח צופן (Cipher) מתייחס לאלגוריתם הצפנה, כאשר קלט האלגוריתם נקרא "טקסט קריא" או "טקסט גלוי" (באנגלית: Plaintext). ואילו פלט האלגוריתם נקרא "טקסט מוצפן" או "כתב סתר" (באנגלית: Ciphertext). צופן בשפה העברית משמש גם כשם עצם לכתב סתר או קוד.
[עריכה] ההיסטוריה של ההצפנה
שורשיה של הקריפטוגרפיה נעוצים בשחר ההיסטוריה. בראשית דרכה הייתה הקריפטוגרפיה בעיקר אמנות שעסקה בשיטות הצפנה בלבד, תחילה באופנים בסיסיים מאוד. יש ממצאים המעידים כי המצרים הקדמונים השתמשו בהצפנה. הנביא ירמיהו מתייחס בנבואותיו (ירמיהו כ"ה, כ"ו ונ"א, מ"א) ל"ששך" ול"לב קמי", שהן "בבל" ו"כשדים" בצופן אתב"ש (צופן שבו האות א מוחלפת באות ת, האות ב מוחלפת באות ש וכו').
הצפנים הקלאסיים מתחלקים לשני סוגים עיקריים: צופן טרנספוזיציה (שינוי מקום) וצופן החלפה (תמורה). דוגמה לצופן החלפה היא צופן קיסר שבו השתמש יוליוס קיסר. בצופן זה כל אות מוחלפת באות הבאה אחריה באלפבית בהיסט מסוים (באופן מעגלי). לדוגמה, אם ההיסט הוא 3 אותיות (גודל ההיסט בו השתמש קיסר), המילה "קיסר" תוחלף במילה "תמצא". בצופן זה, גודל ההיסט הוא המפתח לפענוח המסר. צופן טרנספוזיציה קל לזיהוי כיוון שהוא משמר את תדירות האותיות שבמסר המקורי, וקל לפצחו מכיוון שמספר ההיסטים האפשריים מוגבל מאוד.
צופני החלפה מתחלקים לצופן החלפה מונו-אלפביתי או חד-אלפביתי וצופן החלפה פולי-אלפביתי או רב-אלפביתי. דוגמה לצופן החלפה חד-אלפביתי, בהינתן האלפבית האנגלי A-Z (עשרים ושש תווים) והפונקציה:
. אם המפתח
, אזי המילה "CAESAR" תוצפן למילה "NHTJNG". צופן חד-אלפביתי משבש אמנם תדירות של אותיות בודדות אולם אינו מסתיר את ההתפלגות הכוללת של השפה, כלומר התפלגות האותיות בצופן זהה לזו של הטקסט הקריא. לצופן החלפה רב-אלפביתי גרסאות רבות ביניהן דיגרם, פוליגרם, צופן החלפה הומופוני, צופן ויז'נר - שבו משתמשים באלפבית שונה עבור כל תו במסר, ספר-צופן - שבו המפתח מהווה למעשה רצף אותיות מתוך ספר כלשהו. מסר מפורסם שהוצפן בשיטה זו הוא "מברק צימרמן", שפענוחו באמצעות עותק של ספר הצופן הביא לכניסת ארצות הברית למלחמת העולם הראשונה. וכן צופן ורנם בו מחברים בחיבור בינארי (פעולת XOR) את מחרוזת המסר עם מפתח אקראי.
[עריכה] סודיות מושלמת
-

ערך מורחב – סודיות מושלמת
קיימת שיטת הצפנה המכונה פנקס חד פעמי (One time pad), המבוססת על צופן ורנם האמור, שבה מצפינים מחרוזת מסר על ידי חיבור בינארי (XOR) של סיביות המסר עם מפתח שנבחר באופן אקראי. אם המפתח אקראי וחד-פעמי ובאורך המסר המיועד להצפנה, צופן זה מכונה "הצפנה מושלמת" והוא בטוח ללא סייג. אין שום דרך לשחזרו ללא המפתח. עובדה שהוכחה מתמטית על ידי קלוד שנון, אבי תורת האינפורמציה. פנקס חד-פעמי נקרא הצפנה מושלמת, אך ורק אם לא משתמשים באותו מפתח פעמים נוספות. המפתח חייב להיות אקראי "אמיתי", וזאת בניגוד למספרים הפסאודו אקראיים המיוצרים על ידי מחשב.
שיטת הצפנה זו אינה מעשית ביישומים רבים משתי סיבות עקריות: ראשית, הכנת מפתח אקראי (אמיתי) באורך המסר בעייתית, כאשר מדובר במסר גדול מאוד. שנית, הצורך בהעברת מפתח ההצפנה הסודי לידי המקבל מהווה סיכון רב. דרוש לשם כך ערוץ תקשורת בטוח שישמש להעברת המפתח, מה שהופך את השיטה ללא ישימה בסיטואציות רבות. בעיקר כאשר לא היה קשר מוקדם בין הצדדים המתקשרים, דוגמת מסחר ברשת האינטרנט. עם זאת, עדיין קיימים שימושים מעשיים מעטים לשיטה זו. מצפים שכאשר תהיה פריצת דרך בתחום המחשבים הקוונטיים ייתכן שמכשול בעיית העברת המפתח יפתר באמצעות הצפנה קוונטית, מה שיאפשר ליישם את השיטה ביעילות. עובדה שיהיו לה השלכות מרחיקות לכת.
[עריכה] ניתוח סטטיסטי של צפנים קלאסיים
לצפנים המנויים לעיל (מלבד פנקס חד-פעמי), חשיבות היסטורית בלבד ואינם בטוחים לשימוש. צפנים אלו סובלים מבעיה מהותית, המכונה יתירות (Redundancy). כידוע בכל אלפא-בית ישנן אותיות שתדירותן גבוהה מאלו של האחרות. בשפה העברית למשל, האות יו"ד מופיעה בתדירות של 12 אחוז בערך מסך כל האותיות בטקסט נפוץ, לעומת האות זי"ן שמופיעה בכאחוז אחד בקירוב. מידע סטטיסטי כזה על התפלגות האותיות בשפה ספציפית, עשוי לסייע בידי מנתח הצופן, בחשיפת המסר ללא המפתח, או אף בחשיפת המפתח עצמו מתוך טקסט מוצפן קצר יחסית.
קיימות מספר שיטות לפענוח צופן רב-אלפביתי עם מפתח קצר כגון צופן ויג'נר האמור, ביניהן שיטת קסיסקי או מבחן קסיסקי, בה מנסים לאתר את גודל המפתח מתוך מקטעים החוזרים על עצמם בטקסט המוצפן. משנמצא אורך המפתח, מחלקים את הטקסט המוצפן לגושים באורך המפתח ומפעילים ניתוח סטטיסטי על כל גוש בנפרד בהתבסס על תדירויות האותיות. וכן שיטת מדד צירופי מקרים של ויליאם פרידמן שפענח את צופן PURPLE היפני, בה המתקיף מנסה לחשוף את מחזוריות הצופן (אורך המפתח) על ידי מדידת תדירות יחסית של אותיות מוצפנות ובהתבסס על טבלת תדירויות, שיטה זו טובה כנגד צופן רב-אלפביתי, כגון ספר-צופן (Running key) וכן צופן ויז'נר.
[עריכה] מכונות הצפנה מבוססות רוטור
בראשית המאה ה-20, עם התפתחות הטכנולוגיה, בעיקר המצאת הרדיו והטלפון, גבר הצורך באמצעי אבטחה קריפטוגרפיים מתקדמים יותר, בשל הקלות שביירוט שדר אלחוטי. אז החלו להופיע לראשונה מכונות הצפנה מבוססות רוטור. רעיון הרוטור החל במה שקרוי "צילינדר ג'פרסון" על שם ממציאו, זהו גליל שהיקפו מחולק ל-26 חלקים בהם מוטבעות האותיות A-Z בסדר מסוים. הגליל מורכב למעשה ממספר גלילים שלהם ציר משותף, המסוגלים לנוע בחופשיות ללא תלות זה בזה. כל גליל מכיל סדר שונה של אותיות. הגליל יכול לשמש כמכונת כתיבה, שמדפיסה את הצופן על פי סדר האותיות שהוטבע בה. גליל ג'פרסון מיישם למעשה צופן החלפה מרובי אלפבית. לאחר מכן החלו להופיע מכונות הצפנה מורכבות יותר. בהן הורכבו מספר גלילים, בהקפים שונים או בסדר שונה והוספו מנגנונים אלקטרוניים שונים, כדי להתאימם לתקשורת אלחוטית. הדוגמה הקלאסית היא מכונת האניגמה הגרמנית ששימשה את הנאצים במלחמת העולם השנייה.
למכונות ההצפנה מבוססות הרוטור היה משקל מכריע בתוצאות מלחמות העולם הראשונה והשנייה. רוב מכונות ההצפנה פוצחו על ידי מנתחי הצפנים של כוחות המודיעין. יחידת המודיעין הסודית של הבריטים בבלצ'לי פארק, הצליחה בזמן המלחמה ליירט ולפענח שדרים מוצפנים של הצבא הגרמני ששודרו באמצעות מכונות הצפנה מסוג זה. אלן טיורינג שהניח את היסודות להמצאת המחשב המודרני, היה בראש צוות מנתחי הצפנים הבריטים שפיצח את האניגמה. הודות לכך, השיגו בעלות הברית יתרון משמעותי במלחמה. גם בעלות הברית עשו שימוש במכונות הצפנה שונות כמו ה-TypeX הבריטית וה-SIGABA האמריקאית (שככל הידוע לא פוצחה בעודה בשירות פעיל).
[עריכה] הצפנה מודרנית
עד מלחמת העולם השנייה, עסקו בקריפטוגרפיה, בעיקר גורמים צבאיים, גופי מודיעין, דיפלומטים ומרגלים. עם המצאת המחשבים והתרחבות היקף השימוש בהם, גבר הצורך באמצעי אבטחה גם במגזר הפרטי והעסקי. ההתפתחויות החשובות בהצפנה המודרנית החלו עם עבודתו של קלוד שנון אבי תורת האינפורמציה שביסס ב-1949 את התאוריה המתמטית של ההצפנה. תקן ההצפנה הראשון DES שהתקבל ב-1975, פיתוח של צוות מתמיטקאים מיבמ בשיתוף פעולה עם ה-NSA, הווה נקודת ציון חשובה והגביר את ההתעניינות הציבורית בתחום ההצפנה. פריצת הדרך אולי החשובה ביותר, ארעה באותה שנה, עם המצאת ענף חשוב בתורת ההצפנה הקרוי מפתח-פומבי על ידי ויטפילד דיפי ומרטין הלמן. במרוצת השנים הפכה אמנות הקריפטוגרפיה לתורה מדעית לכל דבר שקשורה בעיקרה לתחום המחשבים ועם קשרים הדוקים לתורת הסיבוכיות, עד לימינו אנו בהם הקריפטוגרפיה חדרה כמעט לכל היבט בחיינו. כל אדם שברשותו מכשיר טלפון סלולרי או כרטיס אשראי עושה שימוש בקריפטוגרפיה. צעד נוסף להתרחבות השימוש בהצפנה נעשה עם התרחבות השימוש בתקשורת מחשבים ובפרט מסחר אלקטרוני, באמצעות האינטרנט, שהביא לכך שכמעט כל גולש נדרש לעתים להשתמש בתקשורת מוצפנת, למשל לשם העברת פרטי כרטיס אשראי.
התהליך של תקשורת מאובטחת כולל שני שלבים:
- הצפנה: נעשית על ידי השולח, ובמסגרתה המסר הגלוי מועבר למצב מוצפן.
- פענוח: נעשה על ידי המקבל, ובמסגרתו המסר המוצפן חוזר להיות גלוי.
בשני השלבים האמורים, משתמשים המצפין והמפענח באלגוריתם הצפנה ובמפתח, לשם ביצוע משימות ההצפנה והפענוח ובאלגוריתמים ופרוטוקולים נוספים שנועדו לטיפול בנושאים נלווים כמו העברת מפתח או אימות זהויות. בדרך כלל התהליך שקוף מבחינת המשתמש, כאשר הוא מבצע עסקה או מתחבר לשרת, נעשות ההכנות הדרושות ברקע מבלי שהמשתמש יחוש בכך מלבד הדרישה לספק אמצעי זיהוי כלשהם כמו סיסמה מספר כרטיס וכדומה.
אלגוריתמים להצפנה מתחלקים לשני סוגים עיקריים, הצפנה סימטרית וא-סימטרית.
[עריכה] הצפנה סימטרית
בהצפנה זו נעשה שימוש במפתח יחיד, להצפנה ופענוח המידע. שני הצדדים המתקשרים נדרשים להחזיק את אותו המפתח. יתרונותיה של שיטה זו ביעילותה הקריפטוגרפית (מפתח הצפנה באורך של 128 סיביות ומעלה באלגוריתם טוב, מספק). וכן בכוח המחשוב הזעום הדרוש לישומה לעומת שימוש בהצפנה אסימטרית (להלן). דוגמה טובה לאלגוריתם כזה היא DES שהיה לאלגוריתם הסימטרי הראשון שהופץ בקנה מידה גדול ואף הפך לתקן הצפנה רשמי. שימושו היה בעיקר בתחום הבנקאות והוא עדיין בשימוש מוגבל. למרות שכיום אלגוריתם זה אינו בטוח, חשיבותו ההיסטורית נותרה בעינה. מאחר והטכניקות שיושמו באלגוריתם זה מהוות בסיס לכל אלגוריתם סימטרי מודרני. כיום AES הפך לתקן הצפנה הרשמי בארצות הברית, שמחליף את קודמו DES. אלגוריתמים סימטריים נוספים הם 3DES, IDEA, FEAL, SAFER, AES, RC5, RC4.
הצפנה סימטרית סובלת מבעיה בסיסית: הצורך בהעברת מפתח ההצפנה לידי מקבל הצופן על מנת שיוכל לפענחו. זהו ענין רגיש כיוון שנגישות למפתח מצד גורם שלישי תאפשר לו לפענח את כל המסרים שהוצפנו עם אותו מפתח. שמירה על מפתח הצפנה בסוד לאורך זמן גם היא בעייתית, במיוחד אם מספר המפתחות שצריך לזכור, גדול. בעיות אלו פותרים באמצעות פרוטוקולי העברת מפתח בטוחה לעתים בשילוב שיטות אסימטריות ולעתים בסיוע צד-שלישי נאמן. פרוטוקול דיפי-הלמן היה האלגוריתם הראשון שהתמודד עם בעיה זו בשיטה האסימטרית. פרוטוקול זה מאפשר העברת מפתח הצפנה סימטרי בצורה מאובטחת בתשתית גלויה מבלי שהמשתתפים יאלצו להיפגש כלל. לעתים משלבים בין השיטות הסימטריות והאסימטריות, תוך ניצול יתרונותיהן להשגת בטיחות אופטימלית.
[עריכה] הצפנה א-סימטרית
בהצפנה זו נעשה שימוש בשני מפתחות. מפתח אחד הוא מפתח הצפנה הנקרא מפתח-פומבי גלוי איתו מצפינים את המסר, כאשר במפתח זה לא ניתן לשחזר את המסר. רק באמצעות מפתח פענוח הנקרא מפתח-פרטי, שנמצא בידי המקבל, ניתן לשחזר את המידע. ניתן לתאר את המפתח-הפומבי בתור "מנעול" שאליו מתאים רק מפתח אחד. ה"מנעול" הוא ציבורי, וכל אחד יכול לראות אותו (ולהעתיק אותו או לשמור אותו), אך רק המפתח-הפרטי הוא זה שיפתח את המנעול ויפענח את המידע.
הקישור בין המפתחות הנו חד-חד ערכי, כלומר לכל מפתח הצפנה ישנו רק מפתח פענוח יחיד ולהיפך. שני המפתחות הופכיים זה לזה, כך שניתן להצפין עם אחד ולפענח עם אחר ולהיפך. בשיטה זו משתמש מייצר לעצמו צמד מפתחות, האחד פרטי והאחר פומבי (מכאן שמה של השיטה - Public Key Cryptography). את המפתח הפרטי שומר בסוד ואילו המפתח הפומבי עומד לרשות הציבור. כאשר משתמש אחר רוצה להעביר מסר מוצפן לגורם זה, כל שעליו לעשות הוא להצפין את המידע באמצעות המפתח הציבורי של אותו הגורם והיחידי שיוכל לפענח את המידע הוא המחזיק במפתח הפרטי התואם.
חסרונותיה של שיטה זו הנה באורך המפתח הנדרש, העולה משנה לשנה בהתאם לכוח המחשוב (נכון לינואר 2005 נעשה שימוש במפתחות באורך של 2048 סיביות כסטנדרט). כמו כן כוח החישוב הנדרש להצפנה א-סימטרית הנו רב יותר משמעותית מהצפנה סימטרית. אלגוריתמים ידועים: RSA, DSA, אל-גמאל, ECC, רבין.
[עריכה] קריפטואנליזה מודרנית
מטרת קריפטואנליזה היא מציאת נקודות תורפה בסכמות הצפנה בפרט ובמערכות אבטחת מידע בכלל. קיימת מעין תחרות סמויה בין ממציאי האלגוריתמים ומפתחי המערכות לבין האנליסטים שמנתחים אותם. התפתחותה של הקריפטוגרפיה נעשית בשני מסלולים מקבילים, התפתחות של שיטות הצפנה מתקדמות יותר ויותר ומאידך התפתחות של שיטות לפיצוח צפנים, שמאפשרים גם למי שאין בידו מפתח מתאים, לקרוא את המסר המוסתר. בדרך זו התפתחו אלגוריתמים רבים, לאחר שממציאיהם נאלצו להתמודד עם שיטות פיצוח חדשות שהתגלו ובכך המציאו גרסאות משופרות יותר שנועדו לסכל שיטות אלו.
בעבר הרחוק נטו ממציאי אלגוריתמים להצפנה לשמור בסוד את פרטי האלגוריתם שפיתחו. אולם כיום ברור ששמירת אלגוריתם הצפנה בסוד אינה מהווה חלופה לבטיחות האלגוריתם עצמו. גם בתקופה האחרונה הוכרזו מספר אלגוריתמי הצפנה כסודיים. אלגוריתם Skipjack שפותח על ידי ה-NSA נשמר בסוד עד 1998. ההיסטוריה מלמדת שהישענות על סודיות אלגוריתם לא תחזיק מעמד לאורך זמן, סודות מסוג זה נוטים להחשף ביום מן הימים. צופן זרם RC4 היה סוד מסחרי כשהומצא ב-1987 על ידי רונלד ריבסט במעבדות RSA. אולם בדרך כלשהי הגיעו פרטי האלגוריתם באופן אנונימי לרשת האינטרנט והפכו במהרה לנחלת הכלל.
בקריפטוגרפיה מודרנית, אלגוריתמים מוצלחים הם כאלו שזכו לביקורת הציבור, במיוחד לעיון מדוקדק של פרטיהם בידי אנליסטים ומומחי הצפנה מסביב לעולם. אלגוריתם AES הוא דוגמה טובה לאלגוריתם שנבחר בקפידה מבין מספר מועמדים טובים על ידי מומחים מרחבי העולם, לאחר תחרות שאורגנה על ידי NIST ונמשכה כמספר שנים.
אלגוריתם הצפנה טוב צריך להשען אך ורק על סודיות המפתח. כך שאם יחשף המפתח, אין צורך להחליף את האלגוריתם כולו אלא רק להחליף מפתח. באנלוגיה למנעול צירופים, כאשר בעל המנעול חושד כי עוד מישהו מלבדו מכיר את הצירוף הנכון לפתיחת המנעול, כל שעליו לעשות הוא להחליף צירוף, אין צורך לרכוש מנעול חדש.
אין אלגוריתם בלתי שביר (מלבד פנקס חד-פעמי). כל אלגוריתם ניתן לשבירה עם מספיק זמן וכוח חישוב. הבחירה היא תמיד בין קלות יישום לעומת בטיחות. קיימות שיטות ניתוח רבות, בחלקן מנתח הצופן או "המתקיף" לצורך העניין, מחזיק בצופן בלבד ועליו לגלות את הטקסט הקריא או המפתח מתוכו, בחלקן המתקיף מחזיק בידיו חלק מהטקסט המקורי שהוצפן, במקביל לצופן שהתקבל ממנו ובחלקן המתקיף מסוגל לבחור בעצמו בטקסט שהוא מעוניין, כמקור להצפנה וללמוד את תוצאותיו. בחירת טקסט כאסטרטגיה לשבירת הצופן אפשרית בהרבה מערכות.
למעשה הדעה הרווחת היא כי מרבית האלגוריתמים הידועים שזכו לביקורת ובדיקה מדוקדקת של מומחים, אכן בטוחים. הסיבה שמערכות רבות נפרצו או כשלו, לא נבעה ישירות מבטיחות האלגוריתמים שעליהם נשענת המערכת, אלא בעיקר בשל כשלים או שגיאות אנוש שחלקן נבעו מבורות ביישום אותם אלגוריתמים או מרשלנות ואי-שמירה על נוהלי בטיחות. בדרך כלל קל הרבה יותר לשחד אדם בסכום כסף הגון, מאשר לנתח אלגוריתם. כדי להקים מערכת אבטחה, תחילה יש להבין היטב את האלגוריתמים המשמשים אותה ובמיוחד את תכונותיהם, פגיעותם ומגבלותיהם. ולוודא כי המערכת כמכלול, אינה חדירה או שאינה מדליפה מידע עקיף שמסכן את בטיחות המערכת, כמו מידע תזמון (timing), לדוגמה בגרסה המקורית של WAP - פרוטוקול אבטחה סלולרי, התגלתה פרצה בטיחותית חמורה שנבעה מאופן יישום אלגוריתם RC4 וגרמה לדליפת מידע שאפשר לפרוץ את המערכת בקלות.
[עריכה] אנליזה של אלגוריתמים סימטריים
קיימות שיטות שונות לפיצוח וניתוח אלגוריתמים סימטריים:
- כוח גס (Brute Force). הוא חיפוש ממצה של כל טווח המפתחות האפשריים עד למציאת המפתח שאיתו נעשה שימוש. עם מספיק זמן וכוח חישוב, שיטה ברוטלית וישירה זו תביא בסופו של דבר לתוצאות. אולם סיבוכיותה אינה מעשית ברוב המקרים. ממציאי אלגוריתמים סימטריים שואפים כי האלגוריתם שלהם יהיה טוב עד כי רק כח גס מסוגל לפצח אותו. לצורך המחשה, כח גס כנגד DES מצריך בדיקה של לפחות 255 הצפנות, שזה בעיקרון ניסוי של כמחצית מטווח המפתחות האפשריים עד שיימצא המפתח, במקרה הממוצע.
- קריפטואנליזה לינארית. היא שיטת שבירת צופן המיוחסת לקריפטוגרף היפאני מיצורו מצואי. בשיטה זו ניתן לפצח את DES ב-243 נסיונות הצפנה ו-243 טקסטים מוצפנים ידועים (שמקורם ידוע). זהו שיפור משמעותי לעומת כח גס, אולם עדיין לא כל כך מעשי.
- קריפטואנליזה דיפרנציאלית. שהומצאה על ידי אלי ביהם ועדי שמיר (מכון ויצמן 1980). היא שיטה רבת עוצמה לניתוח אלגוריתמים סימטריים מכל סוג כמעט. בשיטה זו נבחנת מידת ההשפעה של הבדלים בקלט על פלט הצופן. בשיטה זו ניתן לפצח את DES ב-247 נסיונות, אף בלא ידיעת מקור הצופן.
לאמיתו של דבר, ממציאי אלגוריתם DES היו מודעים לאנליזה דיפרנציאלית עוד בשנת 1970, אולם שמרו ידיעה זו בסוד מטעמים של ביטחון לאומי. הסברה היא, כי ממציאי האלגוריתם לא פרסמו מלכתחילה את שיקולי העיצוב שהנחו אותם בבניית האלגוריתם, מן הסיבה שלאחר התייעצות עם ה-NSA הוחלט כי פרסום חומר זה עשוי לחשוף את האנליזה הדיפרנציאלית, שלמעשה הקנתה לארצות הברית עליונות, על פני מדינות אחרות, בתחום ההצפנה.
[עריכה] ניתוח אלגוריתמים א-סימטריים
אלגוריתמים המבוססים על מפתח-פומבי, נשענים על מספר מצומצם מאוד של בעיות מתמטיות קשות. ביניהן נמנות בעיית פירוק לגורמים, בעיית לוגריתם דיסקרטי ובעיית שורש ריבועי מודולו מספר פריק (עליה מבוססת הצפנת רבין). בעיות אלו מאפשרות יישום פונקציות חד-כיווניות במובן שהן קלות לחישוב בכיוון אחד אולם קשות ביותר לשחזור בכיוון ההפוך. במיוחד מדובר על פונקציות חד-כיווניות עם דלת צונחת או דלת מלכודת (Trap-door), שהיא פונקציה חד-כיוונית המכילה מידע נסתר, שבאמצעותו ניתן לחשבה בקלות גם בכיוון ההפוך. על פונקציה כזו מבוססים מרבית האלגוריתמים של מפתח-פומבי, כאשר דלת הסתרים היא המפתח הפרטי. חשוב לציין כי קיומן של פונקציות חד-כיווניות מעולם לא הוכח ולמעשה זוהי שאלה פתוחה בתחום המתמטיקה.
טרם נמצא אלגוריתם יעיל המסוגל להגיע לזמן ריצה פולינומי, שמסוגל לפתור אחת מבעיות אילו ולסכן בכך אלגוריתמים אסימטריים המבוססים עליהן, באופן ישיר. אולם קיימים אלגוריתמים רבים לפתרון בעיות יסודיות אלו היעילים מכוח גס במידה נכרת. לדוגמה בעיית פירוק לגורמים היא סוגיה עתיקת יומין, שמתמטיקאים רבים וטובים התמודדו עמה. האלגוריתם הטוב ביותר הידוע כיום לפתרון בעיה זו הנו אלגוריתם נפת שדה המספרים הכללי. בנובמבר 2005 הצליח צוות מתמטיקאים לפרק לגורמים את RSA-200 (בגודל 663 סיביות) מתוך מספרי האתגר של מעבדות RSA במאמץ שנמשך כמעט שלוש שנים, תוך שימוש במספר גדול של מחשבים שעבדו במקביל. במאי 2007 הצליח צוות מתמטיקאים לפרק לגורמים את המספר
(המכונה מספר מרסן) המספר הגדול ביותר שפורק לגורמים נכון להיום (בגודל 1039 סיביות), במאמץ שנמשך קרוב לשנה תוך שימוש בגרסה מותאמת של אלגוריתם נפת המספרים הכללי. למרות שמהספר אינו מהסוג הנפוץ בשימוש במערכות מפתח פומבי דוגמת RSA, הדיעה הרווחת היא כי בקרוב תמצא הדרך להרחיב את השיטה לפירוק מספרים בגודל 1024 סיביות מהסוג הנפוץ במערכות מפתח פומבי רבות בימינו.
אלגוריתמים אסימטריים דורשים זמן חישוב גבוה כעשרת מונים מאלגוריתמים סימטריים. הסיבה לכך היא שהם סובלים מקיומם של שיטות טובות לפתרון הבעיות המתמטיות עליהן הם מבוססים. כדי להתמודד עם איום זה מפתחות ההצפנה באלגוריתמים אילו חייבים להיות ארוכים מאוד. סוגיית אורך המפתחות הדרוש לבטיחות אלגוריתמים אסימטריים, היא שאלה פתוחה שמתחבטים בה כיום מומחי הצפנה מסביב לעולם. הדיעה הרווחת היא כי מפתחות בסדר גודל של 2048 סיביות מהווים מרווח ביטחון מספק לתקופה הקרובה. לאחרונה התפתח סוג חדש של מערכת מפתח-פומבי הנקראת הצפנה מבוססת עקומים אליפטיים (ECC), שיטה זו מאפשרת שימוש במפתחות הצפנה הרבה יותר קטנים (בסדר גוד לשל 256 סיביות) מבלי לאבד מבטיחותה, לדעת מומחים רבים.
[עריכה] פרימיטיבים קריפטוגרפיים
פרימיטיב קריפטוגרפי הוא הגדרה לאלגוריתמים בעלי מאפיינים קריפטוגרפיים בסיסיים. AES הוא פרימיטיב קריפטוגרפי במובן שהוא משמש כאלמנט בסיסי בעל ייעוד ספציפי. RSA או פונקציית ערבול SHA-1, הנם פרימיטיבים קריפטוגרפיים. מהות הרעיון הוא שבהקמת מערכת הצפנה שלמה, אין די באלגוריתם אחד, אלא משלבים מספר אלגוריתמים שלכל אחד מהם ייעוד אחר, שיחדיו משלימים זה את זה למערכת שלמה. יש חשיבות בבדיקת המאפיינים והיחסים שבין הפרימיטיבים השונים, על מנת לוודא כי השילוב ביניהם בטוח ואינו מכיל פרצת אבטחה. לעתים אי-הבנה באשר למהות פרימיטיבים מסוימים והנסיון לשלבם יחד באופן שלא יועדו לו, עשוי לפגוע בבטיחות המערכת כמכלול. לדוגמה, פונקציית ערבול טובה ליצירת ערכים ייחודיים, אולם אינה טובה כשלעצמה לצורך הצפנת מידע. יתרונה הברור בא לידי ביטוי במערכת הצפנה דוגמת PGP בה יש צורך בערך חד-כיווני של המידע לצורך החתימה עליו באמצעות חתימה דיגיטלית.
[עריכה] פרוטוקולים ומנגנונים קריפטוגרפיים
-

ערך מורחב – פרוטוקול קריפטוגרפי
פרוטוקול קריפטוגרפי הנו אלגוריתם מבוזר המכיל רצף מוגדר של צעדים, המפרטים במדויק את הפעולות הדרושות לשני ישויות (משתמשים) או יותר, להשגת יעד אבטחה ספציפי כמו העברת מפתח או אימות זהויות. פרוטוקולים קריפטוגרפיים משלבים מספר פרימיטיבים קריפטוגרפיים שונים, על מנת להגיע למטרה לשמה נועדו. מנגנון קריפטוגרפי, בניגוד לפרוטוקול הנו הגדרה מקיפה יותר הכוללת אלגוריתמים (המבוצעים על ידי ישות אחת), פרוטוקולים וכן טכניקות לא בהכרח קריפטורגפיות כגון פרוצדורות ונהלי בטיחות, להשגת יעד אבטחה ספציפי.
[עריכה] חוקיות וזכויות שימוש
מטבע הדברים, סגולותיה של הקריפטוגרפיה ככלי לשמירה על פרטיות, מנוצלות לרעה על ידי גורמים זדוניים כמו ארגוני פשע, טרור וריגול. מאז ומתמיד ממשלות וגורמי ביטחון במדינות שונות גילו עניין רב בהתפתחויות בתחום זה. בכל מדינה כמעט קיים גוף האחראי על השימוש בהצפנה מחקר ופיתוח וכן ניטור וניתוח של חומרים מוצפנים שיש חשש שהם מסכנים את ביטחונה הלאומי. גם ארגוני זכויות אדם ברחבי העולם מגלים עניין בתחום זה בשל תרומתו לשמירת צנעת הפרט. בשל כך היו בעבר מספר אירועים שערוריתיים, הקשורים בנושאים חוקתיים בתחום זה. ישנן מדינות (ביניהן ישראל) שבהן עד היום קיימות מגבלות חוקיות לעיסוק בקריפטוגרפיה ובכל מה שקשור אליה. בישראל קיים החל מ-1974 "צו צופן" (תוקן ב-1998) המחייב כל גורם המעוניין לעסוק בהצפנה בקבלת רישיון עיסוק בהצפנה, ממנכ"ל משרד הביטחון (בעבר מקצין קשר ראשי בצבא הגנה לישראל). במדינות אחרות (כמו ארצות הברית), העיסוק בקריפטוגרפיה לא מוגבל מקומית אך קיימות מגבלות ייצוא של חומרים קריפטוגרפיים מחוץ לתחומי המדינה. למעשה בארצות הברית קריפטוגרפיה סווגה כסוג של "תחמושת" בדומה לטנק או טיל בליסטי ובעבר אף נאסר שימוש בהצפנה חזקה בארצות הברית, כאשר הפיקוח על ההצפנה היה באחריות הסוכנות לביטחון לאומי (NSA) של ארצות הברית. NSA הנו הארגון הממשלתי הגדול והמצויד ביותר בעולם המעסיק עשרות אלפי עובדים, שמטרתו ניטור, פענוח וחשיפת תשדורות או מידע דיגיטלי אחר ברחבי העולם, הקשורים לביטחונה הלאומי של ארצות הברית. מדינות אחרות (בעיקר מדינות ארופיות) נוקטות בגישה יותר ליברלית בכל מה שקשור להצפנה.
מרבית האלגוריתמים הקריפטוגרפיים מוגנים בזכויות יוצרים. בארצות הברית, בקנדה ובמדינות רבות אחרות רשומים מאות פטנטים על סוגים שונים של אלגוריתמים קריפטוגרפיים. לדוגמה על RSA רשומים מספר פטנטים בארצות הברית (וגם בישראל). הזכויות הקנייניות על RSA בארצות הברית שייכות למעבדות RSA. החברה הקנדית Certicom מחזיקה בכמאה ועשרים פטנטים בהיבטים שונים של ECC (הצפנת עקומה אליפטית) בארצות הברית ובקנדה בלבד. במדינות נאורות נחקקו חוקים לאכיפת זכויות קנייניות של אלגוריתמים להצפנה. למרות שלא תמיד חוקים אלו נאכפים כראוי. ישנן מדינות בהם החוק פרוץ לחלוטין בתחום זה.
[עריכה] ראו גם
[עריכה] קישורים חיצוניים
| מיזמי קרן ויקימדיה |
|---|
- אתר אית"ן ללימוד הצפנה, אתר ללימוד מקיף של סוגי ההצפנה השונים: PGP, RSA, SSH ועוד
- ספר/מדריך מקוון המגדיר מונחים בקריפטוגרפיה, מכיל השוואות בין סכימות קריפטוגרפיות ומספק דוגמאות מוחשיות
- הספר Handbook of Applied Cryptography, לשימוש פרטי בלבד.
- האתר הבינלאומי של PGP
- הסבר על איך עובדת PGP
- הסדר העיסוק באמצעי הצפנה, מדינת ישראל, משרד הביטחון אגף הפיקוח על היצוא הביטחוני, פיקוח ורישוי אמצעי הצפנה.
- ערכת כלים קריפטוגרפיים של חטיבת אבטחת מחשבים (CSD) של ה-NSA, כולל מידע מפורט על שלל אלגוריתמים קריפטוגרפיים למטרות שונות שאומצו על ידי ממשלת ארצות הברית (FIPS) להגנה על מידע מסווג ולא מסווג ונבדקו ואושרו לשימוש על ידי מומחי ממשל בכירים.
[עריכה] לקריאה נוספת
- ברוס נורמן, מלחמת הצפנים, הוצאת מערכות, 1978.
- סיימון סינג, סודות ההצפנה, הוצאת ידיעות אחרונות, 2003. (לקריאת הפרק הראשון ברשת)

