ทำไมอีเมล์ถึงใหญ่กว่า
เนื่องจากข้อมูลถูกเข้ารหัสbase64
ซึ่งเข้ารหัสกลุ่มได้สูงสุดสามไบต์เป็นกลุ่มของอักขระ ASCII สี่ตัวที่พิมพ์ได้ โดยทั่วไปแล้วกลุ่มของอักขระที่พิมพ์ได้เหล่านี้จะแบ่งออกเป็นบรรทัด
ผลที่ได้คือข้อมูลที่เข้ารหัสนั้นมีขนาดมากกว่า1⅓เท่าของข้อมูลต้นฉบับ
ทำไม base64 ถึงถูกใช้?
อีเมลมีประวัติอันยาวนานและได้รับการออกแบบมาเพื่อพกข้อความ เฉพาะค่าไบต์ที่แสดงถึงอักขระที่พิมพ์ได้ของ ASCII เท่านั้นที่สามารถผ่านระบบอีเมลที่หลากหลายบนโลกใบนี้
ดังนั้น MIME จึงแบ่งสองรูปแบบสำหรับการเข้ารหัสข้อมูลอื่น ๆ เป็นข้อความ ASCII - "ที่ยกมาพิมพ์ได้" ออกแบบมาสำหรับข้อความ ASCII ส่วนใหญ่ที่มีบิตอื่น ๆ ไม่กี่บิตและ "BASE64" สำหรับข้อมูลไบนารีโดยพลการ
มีส่วนขยายในโปรโตคอล SMTP เพื่อลองและลบข้อ จำกัด เหล่านี้ออกไป ครั้งแรก 8BITMIME ในปี 1994 ซึ่งอนุญาตให้ค่าออคเต็ตที่สูงขึ้น แต่น่าเสียดายที่ไม่ได้ลบข้อ จำกัด ที่เกี่ยวข้องกับความยาวบรรทัดและการสิ้นสุดของบรรทัดดังนั้นจึงไม่เหมาะสำหรับข้อมูลไบนารีโดยพลการ จากนั้น BINARYMIME ในปี 1995 ซึ่งอนุญาตให้ถ่ายโอนข้อความที่มีข้อมูลไบนารีโดยพลการ
อย่างไรก็ตามมาตรฐานเหล่านี้ยังไม่เห็นการยอมรับอย่างกว้างขวาง ปัญหาหนึ่งคือจะเกิดอะไรขึ้นถ้า hop หนึ่งในกลุ่มเมล์สนับสนุนพวกเขา แต่ hop ต่อไปไม่ได้ จากนั้นเมลเซิร์ฟเวอร์จะไม่สามารถส่งจดหมายตามที่เป็นอยู่ก็ต้องปฏิเสธว่าไม่ได้ส่งมอบและตีกลับ (ซึ่งไม่น่าจะยอมรับได้สำหรับผู้ใช้) หรือแปลงมัน (ซึ่งต้องใช้รหัสพิเศษจำนวนมากในเมลเซิร์ฟเวอร์) . การแปลงนั้นสร้างความเจ็บปวดเป็นพิเศษโดยกฎ MIME เกี่ยวกับการไม่ใช้การเข้ารหัสการถ่ายโอนเนื้อหาในประเภทหลายส่วน