מחשבון קוד גיבוב MD4
פורסם: 16 בפברואר 2025 בשעה 22:54:42 UTC
עודכן לאחרונה: 12 בינואר 2026 בשעה 9:07:51 UTC
MD4 Hash Code Calculator
MD4 (Message Digest 4) היא פונקציית גיבוב קריפטוגרפית שעוצבה על ידי רונלד ריבסט בשנת 1990. היא מייצרת ערך גיבוב קבוע של 128 סיביות (16 בתים) מקלט באורך שרירותי. MD4 נחשבת כיום לפגועה קריפטוגרפית עקב פגיעויות המאפשרות התקפות התנגשות (מציאת שני קלטים שונים המייצרים את אותו גיבוב), ולכן אין להשתמש בה בעת תכנון מערכות חדשות. היא כלולה כאן למקרה שצריך ליצור קוד גיבוב תואם לאחור.
גילוי נאות: לא כתבתי את היישום הספציפי של פונקציית ה-hash המשמשת בדף זה. זוהי פונקציה סטנדרטית הכלולה בשפת התכנות PHP. יצרתי את ממשק האינטרנט רק כדי להפוך אותו לזמין לציבור כאן מטעמי נוחות.
אודות אלגוריתם ה-Hash של MD4
אני לא מתמטיקאי, אז אנסה להסביר את פונקציית הגיבוב הזו בצורה שעמיתיי שאינם מתמטיקאים יוכלו להבין ;-) אם אתם מעדיפים את ההסבר העמוס במתמטיקה, תוכלו למצוא אותו באתרים רבים אחרים.
אוקיי, אז תחשבו על MD4 כגורסת נייר מיוחדת. אבל במקום לגרוס נייר, היא "גורסת" כל הודעה (כמו מכתב, סיסמה או ספר) לקבלה קטנה בגודל קבוע. לא משנה כמה גדולה או קטנה ההודעה שלכם, המגרסת הזו תמיד נותנת לכם קבלה זעירה באורך של 16 בייטים (128 סיביות) בדיוק, או 32 תווים בצורה הקסדצימלית.
כדי לגרוס את ההודעה בצורה נכונה, עליכם לעבור ארבעה שלבים:
שלב 1: הכנת ההודעה
- לפני הגריסה, עליכם להתאים את הנייר כך שיתאים בצורה מושלמת למגרסה.
- אם ההודעה שלכם קצרה מדי, תוכלו להוסיף רווחים ריקים נוספים (כמו שרבוטים או מילוי) כדי שהנייר יתאים בדיוק.
- אם הוא ארוך מדי, ניתן לחלק אותו למספר עמודים באותו גודל.
שלב 2: הוספת חותמת סודית
- לאחר התאמת ההודעה, מוסיפים חותמת סודית בסוף המציינת את אורכה של ההודעה המקורית.
- זה עוזר למכונת הגרסאות לעקוב אחר הגודל המקורי של ההודעה, לא משנה כמה חומר מילוי הוספתם.
שלב 3: תהליך הגריסה (3 סבבי קסם)
- עכשיו ההודעה נכנסת למגרסה.
- למגרסה 4 הילוכים (A, B, C ו-D) שמסתובבים יחד בתבנית מיוחדת.
- גלגלי השיניים עוברים 3 סבבי סיבוב, בהם הם: מערבבים את המילים הופכים חלקים מסוימים על פיהם מסובבים אותם כמו קובייה הונגרית לרסק חלקים שונים יחד
- כל סיבוב גורם להודעה להיראות יותר ויותר כמו בלגן מבולגן שבלתי אפשרי לזהות.
שלב 4: הקבלה הסופית
- אחרי כל הסיבוב, ההיפוך והריסוק, המגרסה יורקת קבלה - רצף קצר של מספרים ואותיות (הגיבוב).
- קבלה זו תמיד באותו אורך, לא משנה אם גרסתם מילה בודדת או ספר שלם!
לרוע המזל, עם הזמן, אנשים גילו שהמגרסה הקסומה הזו אינה מושלמת. כמה אנשים חכמים גילו כיצד להערים על המגרסה לתת את אותה קבלה עבור שתי הודעות שונות (זה נקרא התנגשות) ולחזות כיצד גלגלי השיניים יסתובבו ואז להשתמש בזה כדי ליצור קבלות מזויפות. בגלל זה, MD4 כבר לא נחשב בטוח לדברים חשובים.
קריאה נוספת
אם נהניתם מהפוסט הזה, אולי תאהבו גם את ההצעות הבאות:
