SSL
| ערך זה זקוק לעריכה, על מנת שיתאים לסגנון המקובל בוויקיפדיה. לצורך זה ייתכנו סיבות אחדות: פגמים טכניים כגון מיעוט קישורים פנימיים, סגנון הטעון שיפור או צורך בהגהה. אם אתם סבורים כי אין בדף בעיה, ניתן לציין זאת בדף השיחה שלו. |
| שכבת יישום | HTTP, SMTP, FTP, RTP, IRC, SNMP, SIP |
| שכבת ייצוג | MIME, ASCII, Unicode |
| שכבת שיחה | ASP, PPTP, SSH, NFS, RPC, DNS, SSL |
| שכבת תעבורה | TCP, UDP, SCTP, DCCP |
| שכבת רשת | IPv4, IPv6, ICMP, RIP, IPX |
| שכבת קו | Ethernet, Token ring, FDDI |
| שכבה פיזית | E1, 10Base-T, RS-232, DSL, SONET |
Secure Sockets Layer (SSL) ו-Transport Layer Security (TLS) הם פרוטוקולי תקשורת לרשתות מחשבים המאפשרים תקשורת מאובטחת ומוצפנת בין שני יישומים מתקשרים. ההבדלים בין SSL ל-TLS קטנים ורוב הדברים שרשומים במאמר זה לגבי ה-SSL נכונים גם לפרוטוקול SSL .TLS מתפקד בשכבת ההצגה של מודל ה-OSI ובשכבת התוכנה של מודל הTCP/IP.
SSL מיושם בעיקר בדפדפן, ותפקידו להעביר נתונים בצורה מוצפנת, כך שפענוח הנתונים יוכל להתבצע על ידי המקבל בלבד. SSL פותח על ידי חברת נטסקייפ והועדף על פני פרוטוקול SET להעברת טרנסקציות מוצפנות.
SSL משמש לרוב לביצוע פעולות באינטרנט שבהן מועבר מידע רגיש (כגון מספר כרטיס אשראי, תעודת זהות). המידע המועבר ב - 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 ביט). המפתח הנ"ל מועבר לחנות באופן מוצפן תוך שימוש במפתח הציבורי של החנות. צורה זו מבטיחה שרק השרת של החנות והדפדפן של הקונה ידעו מהו המפתח הסימטרי ויוכלו להעביר ביניהם מידע מוצפן תוך שימוש במפתח הסימטרי. כדי לאבטח עוד יותר את התקשורת ביניהם, המפתח הסימטרי יוחלף בעת יצירת שיחה חדשה.
- הקונה מעביר לחנות את מספר כרטיס האשראי ומצפין אותו עם המפתח הסימטרי.
- גורם עוין שיצליח ליירט את השיחה בין החנות לקונה לא יוכל לפענח את השיחה מכיוון שאין לו את המפתח הסימטרי המתאים.