MD5

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש
MD5.svg

בקריפטוגרפיה, MD5 (ראשי תיבות באנגלית: Message-Digest algorithm 5, בתרגום חופשי: "אלגוריתם תמצות מסרים גרסה 5") היא פונקציית גיבוב חד כיוונית (One-Way Hash Function). אלגוריתם MD5 מעבד הודעות בגודל משתנה ופולט ערך בגודל קבוע של 128 סיביות.

האלגוריתם נחשב לתקן (Internet Standard), כלומר - הוגדר וסווג על ידי ה-IETF, מעמד המקנה לו חשיבות רבה. מסיבה זו הוא כלול בתוכניות אבטחה רבות.

חתימת MD5 היא מחרוזת טקסט חסרת משמעות שאורכה 32 תווים, כגון: 1b1e2cca18d2beec33272ea8b3f4c271.

היסטוריה[עריכת קוד מקור | עריכה]

MD5 תוכנן על ידי רונלד ריבסט בשנת 1991, כדי להחליף את פונקציית הגיבוב החד כיוונית המוקדמת יותר MD4. ב-1996, נמצא פגם באלגוריתם MD5, ואף על פי שהפגם לא פגע באבטחה של MD5 באופן גורלי, מספר מומחי אבטחה ייעצו לעבור לפונקציות גיבוב חד כיווניות אחרות (כגון SHA). ב-2004, נמצאו מספר פגמים רציניים נוספים בבטיחות MD5.

שימושים נפוצים[עריכת קוד מקור | עריכה]

בשל העובדה שהפלט רגיש מאוד לשינויים בקלט (ההודעה), MD5 מאפשר יצירת "חתימה" לכל פלט נתון. עובדה זו מאפשרת להשתמש בו ביישומים כגון:

  • אימות זהות ופרטי משתמש תוך הגנה על פרטיותו. האימות מתבצע על ידי הפעלת MD5 על קלט מהמשתמש (שם משתמש וסיסמה), והשוואת הפלט המתקבל ל"חתימה" השמורה בזיכרון השרת. באופן זה לא נשמרים בפועל פרטים רגישים אלא רק חתימתם הייחודית. השימוש באלגוריתם MD5 נפוץ למשל בפורומים מבוססי IB או PHP.
  • בדיקת שלמות או תקינות של קבצים. המשתמש יכול להשוות את חתימת ה-MD5 שפורסמה, מול החתימה של הקובץ שהוריד. יש לציין שבדיקת תקינות זו יכולה לגלות רק אם הקובץ פגום (או לא שלם), אך לא לגלות את השגיאה עצמה.

ראו גם[עריכת קוד מקור | עריכה]

לקריאה נוספת[עריכת קוד מקור | עריכה]

קישורים חיצוניים[עריכת קוד מקור | עריכה]