ไฟล์ TNEF คืออะไร??
Transport Neutral Encapsulation Format (TNEF) เป็นกรรมสิทธิ์ของ Microsoft สำหรับการห่อหุ้มไฟล์แนบอีเมลตาม Messaging Application Programming Interface (MAPI) Microsoft Outlook และ Microsoft Exchange Server รองรับ TNEF ทั้งหมด ในขณะที่ภายหลังจะถอดรหัส TNEF เป็น MAPI และแสดงเมลที่จัดรูปแบบ ไฟล์แนบอีเมลที่มีการเข้ารหัส TNEF มีประเภท MIME คือ MS-TNEF และจัดเก็บเป็น winmail/win.dat ไฟล์แนบใน winmail .dat สรุปข้อมูลต่อไปนี้:
ข้อความ | วัตถุ OLE | คุณลักษณะของ Outlook |
---|---|---|
ไฟล์แนบข้อความต้นฉบับ เวอร์ชันดั้งเดิมที่จัดรูปแบบ แบบอักษร ขนาดข้อความ และสีข้อความ | รูปภาพที่ฝัง เอกสาร Office แบบฝังตัว | แบบฟอร์มที่กำหนดเอง ปุ่มลงคะแนน การเรียกประชุม |
บริการอีเมลอื่นๆ ที่ไม่รองรับ TNEF จะแสดงข้อความธรรมดาสำหรับข้อความที่จัดรูปแบบ TNEF Outlook ฝังรูปแบบ Rich ของข้อความในไฟล์ TNEF (OLE) หรือคุณลักษณะเฉพาะของ Outlook (แบบฟอร์ม ปุ่มสำรวจ และคำขอการประชุม) ไม่อนุญาตให้เข้ารหัส TNEF ที่ชัดแจ้งภายในไคลเอนต์อีเมล Outlook อย่างไรก็ตาม การเลือกใช้รูปแบบ RTF เพื่อส่งอีเมลจะช่วยอำนวยความสะดวกในการเข้ารหัส TNEF โดยปริยาย
รูปแบบไฟล์ TNEF
อัลกอริทึมข้อมูล TNEF สร้างโครงสร้างแบบแบนจากคุณสมบัติข้อความแบบลำดับชั้นที่หลากหลาย โครงสร้างแบบแบนเหล่านี้ใช้เพื่อแสดงสตรีมข้อมูลอนุกรมที่ประกอบด้วยคุณสมบัติเฉพาะ
ในบางสถานการณ์ ซึ่งพร็อพเพอร์ตี้เกิดขึ้นเป็นกลุ่มหรือมีหลายค่า สตรีมอาจรวมจำนวนและช่องว่างภายในเพื่อบังคับใช้การจัดตำแหน่งข้อมูลเฉพาะ สถานการณ์เฉพาะที่การใช้อัลกอริทึมนี้เป็นข้อได้เปรียบคือในสภาพแวดล้อมการส่งข้อความที่ไม่สนับสนุน ในสภาพแวดล้อมดังกล่าว คุณสมบัติ Rich Message จะถูกเข้ารหัสในสตรีมข้อมูลแบบอนุกรมโดย TNEF Writer นอกจากนี้ คุณสมบัติที่ไม่ได้อยู่ใน TNEF พื้นฐานสามารถถูกห่อหุ้มในระหว่างการส่ง คุณสมบัติที่ห่อหุ้มเหล่านี้ทำให้พร้อมใช้งานโดยการถอดรหัสผ่าน TNEF เพื่อให้แน่ใจว่าคุณสมบัติทั้งหมดของข้อความต้นฉบับไปยังแอปพลิเคชันไคลเอ็นต์พร้อมใช้งาน
ใน TNEF ข้อมูลตัวเลขทุกประเภทเป็นแบบ little-endian และมีขนาดมากกว่าหนึ่งไบต์ การจัดการค่าตัวเลขเหล่านี้บนแพลตฟอร์ม non-little-endian จำเป็นต้องมีการแปลงที่เหมาะสมเพื่อให้ได้ค่าที่ถูกต้อง ค่าสตริงจะแสดงในรูปแบบ Augmented Backus-Naur Form (ABNF) ตามข้อกำหนด [RFC5234] เมื่อสตริงสิ้นสุดด้วยอักขระ null จะถูกรวมไว้ด้วย ตัวอย่างเช่น "worker@specimen.com" %x00
แอตทริบิวต์ TNEF และกฎการประมวลผล
สตรีมข้อมูลใน TNEF เริ่มต้นด้วยหมายเลขเวอร์ชันดั้งเดิม ลายเซ็น ค่าคีย์ดั้งเดิม และแอตทริบิวต์ที่เป็นตัวแทนของโค้ดเพจ หน้ารหัสนี้ถูกสร้างขึ้นเมื่อตัวเข้ารหัสบันทึกแอตทริบิวต์และคุณสมบัติ ANSI หลังจากนั้น สตรีมกลายเป็นชุดของแอตทริบิวต์ที่แอตทริบิวต์ของข้อความเรียงก่อน แล้วตามด้วยแอตทริบิวต์ของไฟล์แนบ ลักษณะข้อความและไฟล์แนบที่แตกต่างกันมีอยู่ในแอตทริบิวต์พิเศษ เช่น attMsgProps, attAttachment และ attRecipTable แอตทริบิวต์ที่ปรากฏในสตรีม TNEF ประกอบด้วยโครงสร้าง คุณสมบัติข้อความ และการแปลงที่จำเป็นเพื่อดึงดูดคุณสมบัติข้อความ แต่ละแอตทริบิวต์ประกอบด้วย ID, ขนาดและข้อมูลของแอตทริบิวต์, เช็คซัม และระดับตามการใช้งาน
ความสัมพันธ์กับโปรโตคอลและอัลกอริทึมอื่นๆ
ระบบที่มีกลไกที่ไม่ดีในการแสดงรูปแบบ Rich Message จำเป็นต้องมีอัลกอริธึมข้อมูล TNEF สำหรับการขนส่ง เมื่อใช้สื่อประเภท ms-TNEF ผลลัพธ์ของอัลกอริทึมประกอบด้วยไฟล์แนบ (winmail.dat) และส่วนเนื้อหาของ MIME ที่ระบุใน [RFC2045] เนื้อหาข้อความธรรมดาถูกส่งโดยใช้ UUENCODE ตามข้อกำหนด [MSDN-UAF] และเนื้อหาข้อความนี้หรือวิธีเทียบเท่าจะถอดรหัสที่ปลายทางของผู้รับ นอกจากนี้ TNEF ยังสามารถส่งข้อมูลข้อความโดยใช้อินเทอร์เน็ตโปรโตคอลต่างๆ เช่น SMTP, POP3, IMAP4 และอื่นๆ รวม MIME ตามมาตรฐาน RFC2045
คำชี้แจงการบังคับใช้
นอกจากการส่งข้อความอย่างง่ายแล้ว แอปพลิเคชันดั้งเดิมของ TNEF ยังถูกสร้างขึ้นเพื่อใช้คลาสข้อความและรองรับคุณสมบัติเพิ่มเติมที่ไม่มีการสนับสนุนดั้งเดิมในโปรโตคอลการขนส่ง แอปพลิเคชันนี้ได้รับการปรับปรุงเพิ่มเติมสำหรับการส่งคุณสมบัติ Rich Message และคุณสมบัติที่มีชื่อซึ่งไคลเอนต์การส่งข้อความสมัยใหม่ใช้อยู่ทุกวันนี้ เพื่อให้สอดคล้องกับการใช้งานดั้งเดิม ไวยากรณ์ของแอตทริบิวต์ดั้งเดิมจะถูกรักษาไว้ และแอตทริบิวต์พิเศษจะเก็บคุณสมบัติข้อความใหม่แยกต่างหาก
อ้างอิง
- รูปแบบการห่อหุ้มที่เป็นกลางในการขนส่ง
- [ที่อยู่อีเมลและสมุดที่อยู่ใน Exchange Server](https://learn.microsoft.com/en-us/exchange/email-addresses-and-address-books/email-addresses-and-address-books?view# exchserver-2019)
- [MS-OXTNEF]: อัลกอริทึมข้อมูล Transport Neutral Encapsulation Format (TNEF)