|
|
== היסטוריה ==
פונקציית הגיבוב MD5 פותחה על ידי [[רונלד ריבסט]] ב-1991 והחליפה את קודמתה [[MD4]]. מקור שמה הוא ראשי התיבות של "Message Digest" (ב[[תרגום חופשי]]: "תמצית מסרים"). האלגוריתם היה בעבר [[תקן]]{{הערה|[http://www.ietf.org/rfc/rfc1321.txt Internet Standard: "The MD5 Message-Digest Algorithm"]}}, כלומר, הוא הוגדר וסווג על ידי ה-[[IETF]], ולכן הוא כלול ב[[תוכנת אבטחה|תוכנות אבטחה]] רבות. תיאורו וקוד המקור שלו נמצאים בטיוטה {{RFC|1321}}. ב-1996 נמצא פגם באלגוריתם MD5 ואף על פי שלא פגע בביטחונו באופן גורלימהותי, מספר מומחי [[אבטחה]] ייעצו לעבור לאלגוריתם בטוח יותר. כיום מרבית התקנים ומומחי ההצפנה ממליצים שלא להשתמש בו כלל לצורך קריפטוגרפי אלא לעבור לאלגוריתם תיקני מסדרת [[SHA]]. במרוצת השנים מאז המצאתו התגלו ב-MD5 בעיות וחולשות רבות שנוצלו לצורך התקפות נגד מערכות שעשו בו שימוש, כשהמפורסמת שבהן הייתה ה[[נוזקה]] [[להבה (נוזקה)|להבה]] שניצלה את חולשתו כדי לזייף חתימה דיגיטלית של [[מיקרוסופט]]. הוכח שהוא אינו מספק את המטרה לשמה נועד ואינו מקיים את התכונות החיוניות הנדרשות מפונקציית גיבוב קריפטוגרפית, בעיקר התכונה החזקה יותר שלה - עמידות מפני [[התנגשות (מדעי המחשב)|התנגשויות]]. הוא עדיין נמצא בשימוש מוגבל בעיקר בגלל [[תאימות לאחור]] ושיקולי יעילות. הוא הוצא כליל מפרוטוקולי [[חתימה דיגיטלית]] כמו [[DSA]] ופרוטוקולי תקשורת כמו [[SSL]], אך נמצא עדיין בשימוש כ[[קוד תיקון שגיאות|אלגוריתם תיקון שגיאות]] או [[סכום ביקורת]], להבטחת שלמות מידע כל עוד השגיאות נגרמות עקב תקלות תקשורת שאינן זדוניות.
== תיאור האלגוריתם ==
|