2.3 - הצפנות - פתרון
פתרון לתרגול: הצפנה ברשתות מחשבים¶
חלק 1: הצפנה סימטרית עם OpenSSL¶
-
הצפנה סימטרית: על מנת להצפין את הקובץ
myfile.txtבאמצעות אלגוריתם AES-256, השתמש בפקודה הבאה:בפקודה זו, אנחנו משתמשים באלגוריתם AES-256 עם מצב CBC להצפנה. הפרמטר
-saltמוסיף תיבול להצפנה, מה שמקשה על ההתקפה. -
פענוח קובץ מוצפן: על מנת לפענח את הקובץ המוצפן
myfile.encולשחזר את הקובץ המקוריmyfile.dec, השתמש בפקודה:כאן הוספנו את הפרמטר
-dלצורך פענוח. -
שאלות לתרגול:
- יתרון: הצפנה סימטרית היא מהירה ויעילה.
- חיסרון: הצורך לשתף את הkey בצורה מאובטחת, אחרת המידע יהיה חשוף.
- שדרוג רמת הביטחון: ניתן לשדרג את הביטחון באמצעות שימוש בkeys באורך גדול יותר או שיטות חיזוק נוספות כמו HMAC (Hash-based Message Authentication Code) להבטחת שלמות המידע.
חלק 2: הצפנה לא סימטרית עם OpenSSL¶
-
הצפנה עם key ציבורי: על מנת להצפין את הקובץ
myfile.txtבעזרת הkey הציבוריpublic.pem, השתמש בפקודה: -
פענוח עם key פרטי: על מנת לפענח את הקובץ
myfile.encבעזרת הkey הפרטיprivate.pem, השתמש בפקודה: -
שאלות לתרגול:
- הגנה על הkey הפרטי: הkey הפרטי חשוב לשמירה על סודיות המידע, ואם הוא נגנב, האקר יכול לפענח את המידע המוצפן.
- הבדלים: בהצפנה סימטרית הkey משותף בין השולח למקבל, בעוד בהצפנה לא סימטרית כל צד משתמש בkey שונה (ציבורי ופרטי).
חלק 3: הגדרת SSL בשרת¶
-
יצירת key פרטי ותעודה עצמית: על מנת ליצור key פרטי, השתמש בפקודה:
על מנת ליצור תעודה עצמית עם הkey הפרטי, השתמש בפקודות:
-
הגדרת SSL בשרת: עליך להגדיר את הkeys והתעודות בקובצי ההגדרה של השרת. לדוגמה, ב-Apache, עליך להוסיף את השורות הבאות לקובץ
httpd.conf: -
שאלות לתרגול:
- על מנת להבטיח שלמות המידע בשרת SSL, השתמש בkeys חזקים וודא שהתעודה נחתמה על ידי CA אמין.
- תעודה עצמית: היא תעודה שלא נחתמה על ידי סמכות מאמתת (CA) ולכן נחשבת לפחות אמינה. היא מתאימה לשימוש פנימי או לסביבות פיתוח.
חלק 4: חיבור מאובטח עם TLS¶
-
בדיקת חיבור מאובטח עם TLS: על מנת לבדוק את החיבור המאובטח עם TLS, השתמש בפקודה:
-
שאלות לתרגול:
- יתרון TLS: TLS מספק הצפנה ויכולת זיהוי הרבה יותר חזקה מאשר SSL, ומספק תיאום טוב יותר בין הלקוח לשרת.
- שדרוג אבטחת TLS: ניתן לשפר את רמת האבטחה על ידי שימוש באלגוריתמים מתקדמים יותר ותעודות SSL/TLS שמנוהלות על ידי CA מוכרת.
חלק 5: סרטיפיקטים¶
-
הבנת סרטיפיקטים: הסרטיפיקט משמש לאימות הזהות של השרת או הלקוח ומכיל את הkey הציבורי. הסרטיפיקט נחתם על ידי CA (Certificate Authority), מה שמבטיח את אמינותו.
-
שאלות לתרגול:
- על מנת לוודא שהסרטיפיקט אמין, יש לוודא שהוא נחתם על ידי CA מוכרת ולבדוק את שרשרת האימות.
- הבדל בין סרטיפיקט עצמאי לסרטיפיקט CA: סרטיפיקט עצמאי נחתם על ידי הגורם שמנפיק אותו, ואינו נתמך על ידי גורם חיצוני. סרטיפיקט שניתן על ידי CA נחתם על ידי CA מוכרת, ומאפשר אימות מהימן של השרת.