20580 מבוא לקריפטוגרפיה
4 נקודות זכות ברמה מתקדמת ללא אפשרות לכתיבת עבודה סמינריונית
שיוך: מדעים / מדעי המחשב
תנאי קבלה: עמידה בדרישות האנגלית ובדרישות ההדרכה הביבליוגרפית בספרייה. ידע קודם דרוש: הקורסים אלגברה לינארית 1, הסתברות ומבוא לסטטיסטיקה למדעי המחשב, מבוא למדעי המחשב ושפת Java.1 ידע קודם מומלץ: הקורסים מבני נתונים ומבוא לאלגוריתמים, מבוא לתורת החישוביות והסיבוכיות, מתמטיקה בדידה: תורת הקבוצות, קומבינטוריקה ותורת הגרפים.
פיתוח הקורס: פרופ' תמיר טסה
יועצים: פרופ' אלי ביהם, פרופ' יהודה לינדל
קריפטוגרפיה היא מדע העוסק באבטחת מידע. אבטחת מידע אינה רק הצפנה ופענוח, אלא גם אותנטיקציה, זיהוי, שלמות המידע, שיתוף סודות, הסתרת מידע ועוד נושאים רבים הקשורים לאבטחת ההעברה והעיבוד של מידע.
הקורס מכסה את הנושאים הבסיסיים בקריפטוגרפיה: שיטות קריפטוגרפיות קלאסיות, "תורת שֶנוֹן" של סודיות, שיטות סימטריות מודרניות (ביחוד DES, DES-3, AES), אופני הפעלה שונים של שיטות סימטריות, קודים לאותנטיקציה של הודעות, פונקציות תמצות (hash), שיטות מפתח פומבי – הצפנה (RSA, רבין ואל-גמאל), פרוטוקול דיפי-הלמן, חתימות דיגיטליות (אל-גמאל, שנור, DSA ורבין), וסכמות לשיתוף סודות.
ספר הקורס
D.R. Stinson, Cryptography: Theory and Practice, 4th ed. (Chapman & Hall/CRC, 2018)
הסטודנטים ילמדו את ספר הקורס באנגלית בעזרת מדריך למידה בעברית.
1 או שני הקורסים מבוא למדעי המחשב ושפת Java א (20453, 3 נ"ז) ומבוא למדעי המחשב ושפת Java ב (20454, 3 נ"ז).