הדביקו את המקור המלא של אימייל - כותרות וגוף - וראו אותו מפורק: כל כותרת, מבנה ה-MIME, קידוד ההעברה וה-charset של כל חלק, גוף ה-text/HTML המפוענח, וכל מצורף. הכול פועל בדפדפן שלכם; שום דבר לא מועלה.
כל אימייל שאתם מקבלים הוא, בבסיסו, מסמך טקסט פשוט שמצייַת למבנה קפדני המוגדר על ידי MIME (Multipurpose Internet Mail Extensions) ופורמט ההודעה הישן יותר RFC 5322. כשאתם פותחים את “המקור הגולמי” או קובץ .eml שמור, המבנה הזה נעשה גלוי: מקבץ כותרות, שורה ריקה, ואז הגוף. מפענח זה מפצל כל הודעה שתדביקו לחלקים האלה — כותרות, עץ ה-MIME, קידוד ההעברה וה-charset של כל חלק, ה-text/HTML המפוענח וכל מצורף — כולו בדפדפן שלכם. שום דבר אינו מועלה לשום שרת; הניתוח רץ על המחשב שלכם עצמו.
להודעה שני חלקים המופרדים על ידי השורה הריקה הראשונה:
Header-Name: header value Another-Header: another value (a folded continuation line) <blank line> The body starts here…
שני כללים מבלבלים אנשים בעת קריאת המקור הגולמי:
=?charset?B?…?= (Base64) או =?charset?Q?…?= (וריאנט של quoted-printable). לדוגמה =?UTF-8?Q?caf=C3=A9?= מפוענח ל-café. המפענח שלמעלה מציג את הערך הקריא; הערך הגולמי הוא מה שבאמת עובר על הקו.אלו המשתנים שתראו בראש כמעט כל הודעה. לא כולם תמיד נוכחים.
| כותרת | מה משמעותה |
|---|---|
From | הכותב המוצג לקורא — שם תצוגה וכתובת, למשל Anna <anna@example.com>. זה מה שלקוח הדואר שלכם מציג; זו אינה הוכחה למי שבאמת שלח את הדואר (ראו SPF/DKIM למטה). |
To, Cc | נמענים ראשיים ונמעני עותק. כותרות אינפורמטיביות בלבד — המסירה בפועל מונעת על ידי מעטפת ה-SMTP, לא על ידיהן. |
Bcc | עותק מוסתר. בדרך כלל מוסר לפני המסירה, ולכן אתם רואים אותו לעיתים רחוקות בדואר שהתקבל. |
Reply-To | לאן צריכות ללכת התשובות אם זה שונה מ-From (למשל שולח “no-reply” שמפנה תשובות לתמיכה). |
Return-Path | שולח המעטפה (כתובת ה-“MAIL FROM”) שאליה נשלחות הודעות אי-מסירה (bounce). מתווסף על ידי השרת המקבל ולעיתים קרובות שונה מ-From. |
Sender | הסוכן בפועל שהגיש את ההודעה כאשר אינו הכותב (רשימות תפוצה, “בשם”). |
Message-ID | מזהה ייחודי גלובלי להודעה זו, כמו <a1b2c3@example.com>. משמש לשרשור ולסינון כפילויות. |
| כותרת | מה משמעותה |
|---|---|
Subject | שורת הנושא. לעיתים קרובות encoded-word כשהיא מכילה תווים שאינם ASCII. |
Date | מתי הכותב שלח את ההודעה, עם היסט אזור זמן, למשל Wed, 9 Jul 2026 10:15:00 +0000. |
In-Reply-To | ה-Message-ID שאליו הודעה זו משיבה — מאפשר ללקוחות לבנות שרשורי שיחה. |
References | שרשרת ה-Message-ID הקודמים בשרשור. |
| כותרת | מה משמעותה |
|---|---|
Received | שורת מעקב שמוסיף כל שרת דואר שההודעה עברה דרכו, החדשה ביותר בראש. קריאתן מלמטה למעלה מראה את נתיב המסירה ואת חותמות הזמן. |
DKIM-Signature | חתימה קריפטוגרפית שמאפשרת למקבל לאשר שההודעה אכן נשלחה על ידי הדומיין ולא שוּנתה במעבר. |
Authentication-Results | פסק הדין של השרת המקבל לגבי בדיקות SPF, DKIM ו-DMARC (pass/fail). דרך מהירה לשפוט אם ניתן לסמוך על “From”. |
Received-SPF | האם ה-IP השולח מורשה לשלוח עבור דומיין המעטפה. |
List-Unsubscribe | לדואר בכמות גדולה/ניוזלטרים: הכתובת או ה-URL שלקוח משתמש בו לביטול מנוי בלחיצה אחת. |
כותרות ספורות אלו שולטות במבנה כולו של הגוף. אלו המשתנים שהכי מעניינים את המפענח הזה.
| משתנה | מה הוא עושה |
|---|---|
MIME-Version: 1.0 | מכריז שההודעה משתמשת ב-MIME. כמעט תמיד 1.0. |
Content-Type | המשתנה החשוב ביותר: סוג המדיה של חלק (text/plain, text/html, image/png, application/pdf, multipart/*…). הוא נושא פרמטרים לאחר נקודה-פסיק. |
charset | פרמטר של Content-Type טקסטואלי: קידוד התווים של הטקסט, למשל charset="UTF-8". נחוץ כדי להפוך את הבתים בחזרה לאותיות הנכונות. |
boundary | פרמטר של סוג multipart: מחרוזת סימון ייחודית. כל חלק מתחיל ב---boundary והאחרון מסתיים ב---boundary--. |
Content-Transfer-Encoding | כיצד הבתים של החלק נארזו כדי שישרדו כטקסט 7-ביט על הקו (ראו הטבלה למטה). |
Content-Disposition | inline (הצגתו בתוך ההודעה) או attachment (הצעתו כקובץ). בדרך כלל נושא פרמטר filename. |
name / filename | שם הקובץ המוצע של מצורף, ב-Content-Type וב-Content-Disposition בהתאמה. |
Content-ID | מזהה לחלק inline (למשל תמונה) כדי שגוף ה-HTML יוכל להפנות אליו באמצעות cid:. |
multipart/alternative — אותה הודעה בשתי צורות: חלופת נפילה text/plain וגרסת text/html. הלקוח מציג את העשירה ביותר שהוא יכול.multipart/mixed — גוף בתוספת מצורפים חבורים יחד.multipart/related — חלק HTML יחד עם התמונות ה-inline שהוא מפנה אליהן באמצעות Content-ID.אלו מקוננים זה בזה: הודעה אמיתית היא לעיתים קרובות multipart/mixed שמכיל multipart/alternative (טקסט + HTML) לצד מצורף PDF. המפענח מציג זאת כעץ ממוספר (1, 1.1, 1.2…).
| ערך | משמעות |
|---|---|
7bit | ASCII פשוט, שום דבר לא השתנה. ברירת המחדל כשלא ניתן קידוד. |
8bit | בתים גולמיים מעל 127 בשימוש ישיר (דורש נתיב 8-bit-clean). |
binary | בתים שרירותיים, ללא הגבלות אורך שורה — נדיר בדואר רגיל. |
quoted-printable | טקסט קריא לרוב שבו בתים שאינם ASCII הופכים ל-=XX בהקסדצימלי (ו-= בסוף שורה הוא מעבר רך). טוב לטקסט שהוא בעיקר אנגלי עם מעט תווים מודגשים. |
base64 | בתים כלשהם מקודדים מחדש לאלפבית בטוח בן 64 תווים, גדול ב-~33%. משמש לתמונות, PDF ומצורפים בינאריים אחרים. |
המפענח הופך בחזרה את הקידוד שהיה בשימוש, ואז מיישם את ה-charset של החלק כך שהטקסט חוזר קריא והמצורפים חוזרים כבתים המקוריים שלהם (שאותם ניתן להוריד).
לחצו על “טעינת דוגמה” למעלה כדי לטעון הודעה קטנה ולראות אותה מפוענחת. השלד שלה נראה כך:
Subject: =?UTF-8?Q?Meeting_notes_=E2=80=93_caf=C3=A9?= ← encoded-word MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="OUTER" --OUTER Content-Type: multipart/alternative; boundary="INNER" --INNER Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable ← חלק טקסט ... --INNER Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 ← חלופת HTML ... --INNER-- --OUTER Content-Type: text/plain; name="notes.txt" Content-Disposition: attachment; filename="notes.txt" Content-Transfer-Encoding: base64 ← מצורף ... --OUTER--
כיצד לקרוא זאת: הסוג החיצוני הוא multipart/mixed, ולכן הגוף הוא “תוכן + מצורף”. הצאצא הראשון שלו הוא multipart/alternative המכיל את גרסאות הטקסט וה-HTML של אותה הערה; הצאצא השני שלו הוא המצורף notes.txt. ה-Subject הוא encoded-word שמפוענח ל-“Meeting notes – café”.
הכול נשאר במכשיר שלכם. כלי זה מנתח את ההודעה באמצעות JavaScript בדפדפן שלכם — האימייל הגולמי לעולם אינו נשלח אלינו או לאף אחד אחר, ושום דבר אינו נשמר. תוכלו לבחון בבטחה הודעות פרטיות או רגישות.
ברגע שאתם יודעים מאיזה שרת הגיעה הודעה, תוכלו לחפור עמוק יותר: חפשו את חיפוש MX של הדומיין, קראו כיצד שרת משיב במדריך בדיקת SMTP עם telnet, או בדקו אם כתובת ניתנת למסירה באמצעות בודק אימייל.