טרמינולוגיה חשובה בנושא אבטחה

שניים מהאתגרים שמפתחים נתקלים בהם במהלך המעבר ל-HTTPS הם מושגים וטרמינולוגיה. במדריך הזה נספק סקירה כללית קצרה על שניהם.

Chris Palmer
Chris Palmer

סיכום

  • שימוש במפתחות ציבוריים/פרטיים לחתימה ולפענוח של הודעות בין הדפדפן לשרת.
  • רשות אישורים (CA) היא ארגון שמבטיח את המיפוי בין המפתחות הציבוריים לשמות ה-DNS הציבוריים (כמו 'www.foobar.com').
  • בקשת חתימה על אישור (CSR) היא פורמט נתונים שמקבץ מפתח ציבורי יחד עם מטא-נתונים מסוימים על הישות שבבעלותה המפתח.

מהם זוגות המפתחות הציבוריים והפרטיים?

זוג מפתחות ציבורי/פרטי הוא זוג של מספרים גדולים מאוד שמשמשים כמפתחות הצפנה ופענוח, ושיש ביניהם יחס מתמטי מיוחד. מערכת נפוצה לזוגות מפתחות היא מערכת הצפנת RSA. המפתח הציבורי משמש להצפנת הודעות, ואפשר לפענח את ההודעות רק באמצעות המפתח הפרטי התואם. שרת האינטרנט מפרסם את המפתח הציבורי שלו לכולם, ולקוחות (כמו דפדפני אינטרנט) משתמשים בו כדי להפעיל ערוץ מאובטח לשרת.

מהי רשות אישורים?

רשות אישורים (CA) היא ארגון שמבטיח את המיפוי בין מפתחות ציבוריים לשמות DNS ציבוריים (כמו 'www.foobar.com'). לדוגמה, איך לקוח יכול לדעת אם מפתח ציבורי מסוים הוא המפתח הציבורי האמיתי של www.foobar.com? אין דרך לדעת זאת מראש. כדי לאשר שמפתח מסוים הוא המפתח האמיתי של אתר מסוים, רשות אישורים משתמשת במפתח הפרטי שלה כדי לחתום באופן קריפטוגרפי על המפתח הציבורי של האתר. אי אפשר לזייף את החתימה הזו מבחינה חישובית. דפדפנים (ולקוחות אחרים) שומרים מאגרי עוגנים של אמון שמכילים את המפתחות הציבוריים שבבעלות רשויות האישורים המוכרות, והם משתמשים במפתחות הציבוריים האלה כדי לאמת באופן קריפטוגרפי את החתימות של רשויות האישורים.

אישור X.509 הוא פורמט נתונים שמקבץ מפתח ציבורי עם כמה מטא-נתונים על הישות שבבעלותה המפתח. באינטרנט, הבעלים של המפתח הוא מפעיל האתר, והמטא-נתונים החשובים הם שם ה-DNS של שרת האינטרנט. כשלקוח מתחבר לשרת אינטרנט מסוג HTTPS, שרת האינטרנט מציג את האישור שלו לצורך אימות על ידי הלקוח. הלקוח מאמת שהתוקף של האישור לא פג, ששם ה-DNS תואם לשם השרת שהלקוח מנסה להתחבר אליו ושאישור ה-CA של עוגן האמון הידוע חתם על האישור. ברוב המקרים, רשויות אישורים לא חותמות ישירות על אישורי שרת האינטרנט. בדרך כלל יש שרשרת של אישורים שמקשרת עוגן אמון לחותם ביניים או לחותמים ביניים, ולבסוף לאישור של שרת האינטרנט (ישות הקצה).

מהי בקשת חתימה על אישור?

בקשת חתימה על אישור (CSR) היא פורמט נתונים שכמו אישור, מקבץ מפתח ציבורי יחד עם כמה מטא-נתונים על הישות שבבעלותה המפתח. עם זאת, לקוחות לא מפרשים בקשות CSR, אלא רשויות אישורים. כשרוצים שרשות אישורים תאשר את המפתח הציבורי של שרת האינטרנט, שולחים אליה בקשת CSR. ה-CA מאמת את המידע ב-CSR ומשתמש בו כדי ליצור אישור. לאחר מכן, רשות האישורים שולחת לכם את האישור הסופי, ואתם מתקינים את האישור הזה (או, סביר יותר, שרשרת אישורים) ואת המפתח הפרטי בשרת האינטרנט.