SSL
מתוך ויקיפדיה, האנציקלופדיה החופשית
| ערך זה זקוק לעריכה, על מנת שיתאים לסגנון המקובל בוויקיפדיה. לצורך זה ייתכנו סיבות אחדות: פגמים טכניים כגון מיעוט קישורים פנימיים, סגנון הטעון שיפור או צורך בהגהה. אם אתם סבורים כי אין בדף בעיה, ניתן לציין זאת בדף השיחה שלו. |
SSL - Secure Sockets Layer ו TLS - Transport Layer Security הם פרוטוקולי תקשורת לרשתות מחשבים המאפשרים תקשורת מאובטחת ומוצפנת בין שני יישומים מתקשרים. ההבדלים בין SSL ל-TLS הם מינורים ורב הדברים שרשומים במאמר זה לגבי ה SSL נכונים גם לפרוטוקול SSL .TLS מתפקד בשכבת ההצגה של מודל ה-OSI ובשכבת התוכנה של מודל הTCP/IP.
SSL מיושם בעיקר בדפדפן, ותפקידו להעביר נתונים בצורה מוצפנת, כך שרק המקבל יוכל לפענח את ההצפנה ולקרוא את הנתונים ולא אף אחד אחר. SSL פותח על ידי חברת נטסקייפ והועדף על פני פרוטוקול SET להעברת טרנסקציות מוצפנות.
דוגמה: כאשר אדם מעוניין לרכוש מוצר דרך האינטרנט, עליו להעביר נתונים אחדים כגון מספר כרטיס אשראי, מספר זהות, כתובת, פרטי המוצר המבוקש וכו'. את הפרטים יש להעביר באופן חסוי כך שאף אחד אחר לא יוכל לגלות נתונים אלה ולהשתמש בהם לרעה. לשם כך יועברו הנתונים בפרוטוקול SSL.
[עריכה] אופן הפעולה של SSL
פרוטוקול SSL מתבסס על שתי שיטות הצפנה - סימטרית וא-סימטרית.
- הצפנה סימטרית: בהצפנה זו נעשה שימוש במפתח יחיד, המסוגל להצפין ולפענח את המידע. שני הצדדים המתקשרים נדרשים להחזיק את אותו המפתח. תהליך העברת המפתח הופך להיות תהליך רגיש מאוד, כיוון שנגישות למפתח תאפשר לגורם שלישי לפענח את המידע. יתרונותיה של שיטה זו ביעילותה הקריפטוגרפית (מפתח הצפנה באורך של 128 ביט ומעלה באלגוריתם טוב הנו מספק) ובכוח המחשוב הזעום הדרוש לעומת שימוש בהצפנה א-סימטרית.
- הצפנה א-סימטרית: בהצפנה זו נעשה שימוש בשני מפתחות, כך שהמפתח שהצפין אינו מסוגל לפענח - לצורך הפענוח נדרש מפתח אחר. הקישור בין המפתחות הנו חד-חד ערכי, כלומר לכל מפתח הצפנה ישנו רק מפתח פענוח יחיד ולהיפך. בשיטה זו משתמש מייצר לעצמו צמד מפתחות, האחד פרטי והאחר ציבורי. את המפתח הפרטי הוא ישמור בסוד ואת המפתח הציבורי הוא יעביר לרשות הכלל. כאשר משתמש אחר רוצה להעביר מסר מוצפן לגורם זה, כל שעליו לעשות הוא להצפין את המידע באמצעות המפתח הציבורי של אותו הגורם, והיחיד שיוכל לפענח את המידע הוא זה המחזיק במפתח הפרטי התואם. חסרונותיה של שיטה זו הם באורך המפתח הנדרש, העולה משנה לשנה בהתאם לכוח החישוב (נכון לינואר 2005 נעשה שימוש במפתחות באורך של 2048 ביט כסטנדרט). כמו כן כוח החישוב הנדרש להצפנה א-סימטרית הנו רב יותר משמעותית מהצפנה סימטרית.
- הצפנה משולבת: כיוון שהצפנה א-סימטרית דורשת כוח חישוב עצום, נשלב בין ההצפנות. נשתמש בהצפנה א-סימטרית כדי להעביר את המפתח הסימטרי ושאר השיחה תתבצע בעזרת המפתח הסימטרי.
- קביעת שיטות ההצפנה (SSL negotiation): SSL מאפשר שימוש מספר אלגוריתמי הצפנה הנקבעים בתחילת השיחה:
- עבור הצפנה א-סימטרית: RSA, Diffie-Hellman, DSA או Fortezza;
- עבור הצפנה סימטרית: RC2, RC4, IDEA, DES, Triple DES או AES
- עבור פונקציית גיבוב חד כיוונית (Hash function): MD5 או SHA-1
[עריכה] מימוש העברת הנתונים
- הקונה ניגש לאתר האינטרנט של חנות מסוימת.
- שרת האינטרנט של החנות שולח את המפתח הציבורי הידוע לכל.
- הדפדפן של הקונה מייצר מפתח זמני (הוא המפתח הסימטרי וחוזקו המקובל כיום הוא 128 ביט). המפתח הנ"ל מועבר לחנות באופן מוצפן תוך שימוש במפתח הציבורי של החנות. צורה זו מבטיחה שרק השרת של החנות והדפדפן של הקונה ידעו מהו המפתח הסימטרי ויוכלו להעביר ביניהם מידע מוצפן תוך שימוש במפתח הסימטרי. כדי לאבטח עוד יותר את התקשורת ביניהם, המפתח הסימטרי יוחלף בעת יצירת שיחה חדשה.
- הקונה מעביר לחנות את מספר כרטיס האשראי ומצפין אותו עם המפתח הסימטרי.
- גורם עוין שיצליח ליירט את השיחה בין החנות לקונה לא יוכל לפענח את השיחה מכיוון שאין לו את המפתח הסימטרי המתאים.

