เวบ/อินเตอร์เน็ตเทคโนโลยี ระบบปฏฺบัติการและซอฟท์แวร์ ซอร์สโค๊ด/โอเพนซอร์ส เทคโนโลยีฐานข้อมูล ระบบเครือข่ายและความมั่นคง เอ็มไอเอส/อีบิสสิเนส อื่น ๆ เกี่ยวกับไอ.ที. อื่น ๆ ไม่เกี่ยวกับไอ.ที.

ระบบเครือข่ายและความมั่นคง

MIME กับ อีเมล คู่หูที่ขาดกันมิได้

เมื่อระบบเครือข่ายไม่รู้จักไฟล์ แล้วจะส่งไปอย่างไร
อัปเดท ( 7 กรกฎาคม 2547 ) , แสดง (26,862) , ความคิดเห็น (5) , พิมพ์  
 
ระบบเครือข่ายและความมั่นคง
ความรู้เบื้องต้นเกี่ยวกับเรื่องพอร์ท(Port Concept) port port port port และ port
เทคนิคการสแกนพอร์ทและวิธีป้องกัน หนึ่งในเทคนิคที่โด่งดังที่สุดที่ผู้โจมตีใช้ในการเจาะผ่านเข้าไปยังระบบได้ scan port
ความรู้พื้นฐานเกี่ยวกับ Firewall ระบบหนึ่งหรือกลุ่มของระบบที่บังคับใช้นโยบายการควบคุมการเข้าถึงของระหว่างเครือข่ายสองเครือข่าย
Network Address Translation (NAT) เมื่อจะ private IP เชื่อมต่อและใช้งานอินเทอร์เน็ต
ทำความรู้จักกับ VLAN/Virtual LAN เทคโนโลยีที่ใช้ในการจำลองสร้างเครือข่าย
เลือกใช้พรอกซี่ (Proxy) แบบไหนดี ? เมื่อมีหลายแบบก็ต้องเลือกใช้สักแบบ
MIME กับ อีเมล คู่หูที่ขาดกันมิได้ เมื่อระบบเครือข่ายไม่รู้จักไฟล์ แล้วจะส่งไปอย่างไร
WiMax เทคโนโลยีใหม่ที่กำลังจะมาถึง WiMax เทคโนโลยีใหม่ที่กำลังจะมาถึง
มารู้จัก Application Architecture กันดีกว่า มารู้จัก Application Architecture กัน
Internet 2 : อนาคต Internet จะเป็นอย่างไร Internet 2 : อนาคต Internet จะเป็นอย่างไร

ถ้าพูดถึงแนวความคิด MINE ผมจะยกตัวอย่างระบบ Mail เพื่อให้คุณเห็นแนวความคิดนี้ได้ชันเจนขึ้น คุณคงทราบแล้วว่าข้อมูล ASCII Code นั้นจะใช้ 7 Bit แต่การส่งข้อมูลจริงในระบบเครือข่ายจะใช้ 2n (สองกำลังเอ็น) ซึ่งก็คือ 8 Bit เป็นส่วนใหญ่ ระบบ Mail ก็เช่นกันเมื่อส่งข้อมูล มันจะใช้ ASCII Code เป็นหลักในการรับส่ง แม้ว่าคุณจะ Attached ไฟล์ที่เป็น Binary File (Binary Code) * เช่น .doc, .xls,.exe เป็นต้น ระบบ Mail มันก็จะแปลง ให้เป็น ASCII Code ก่อนที่จะส่ง

ตัวอย่างหนึ่งที่ใช้ในการแปลง Attached ไฟล์ที่เป็น Binary File (Binary Code) ไปเป็น ASCII Code ก็คือ uuencode เป็นโปรแกรมที่เป็น Command Line ใช้หลักการว่า นำข้อมูล (Binary) จำนวน 3 Byte(24 Bits) มาแปลงเป็น ASCII จำนวน 4 Bytes โดยที่ ASCII จะใช้ 6 Bits ล่าง ส่วน 2 Bits บนจะถูก Filter ให้เป็น 0 (ไม่ผิดกฎของ ASCII ที่ Bits บนสุดเป็น 0) uuencode จึงนำข้อมูล (Binary) จำนวน 3 Byte(24 Bits) มากระจายบน ASCII จำนวน 4 Bytes (32 Bit) เพื่อใช้ส่งได้ และไนการแปลงก็จะมีการส่ง Filename,Protection หรือ ข้อมูลอื่นๆเกี่ยวกับไฟล์ลงไปด้วย

1
2
3
4
5
6
7
8
9
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
3
2
Binary(24Bits)
 
0
0
Binary
0
0
Binary
0
0
Binary
0
0
Binary


ขนาดของไฟล์ที่แปลง จาก Binary File (Binary Code) ไปเป็น ASCII Code จะโตกว่าต้นฉบับขึ้นอยู่กับเทคนิคที่ใช้ เช่นถ้าเป็น uuencode ดังตัวอย่าง ไฟล์จะโตกว่าเดิมประมาณ 33%

การใช้ uuencode เมื่อก่อน เมื่อต้นทางที่ส่งแปลง Binary File (Binary Code) ไปเป็น ASCII Code แล้ว ปลายทางที่รับก็ต้องใช้ uuencode(Decode Function) แปลงกลับเป็น Binary File (Binary Code) เหมือนเดิม

แต่ปัจจุบันการทำขั้นตอนข้างต้นเป็นไปอย่างอัตโนมัติ โดยใช้โปรโตคอลที่ชื่อว่า MIME (Multipart Internet Mail Extensions) มันจะทำหน้าที่แปลงข้อมูลไปมา ระหว่าง Binary File (Binary Code) กับ ASCII Code ดังนั้นเมื่อเมื่อมี MIME ทำให้ Mail สามารถ Attached โปรแกรม,ภาพ,เสียง,ไฟล์ หรือ Binary File อื่นๆได้โดยอัตโนมัติ

ในระบบ Mail ถ้ามอง MIME ตามโปรโตคอล SMTP(Simple Mail Tranfer Protocol) ตัว MIME เองจะเป็นส่วนต่อยอดของ SMTP ขึ้นไป โดยวิธีการทำงานถ้า SMTP มันไม่รู้จัก Keyword นั้น ๆมันก็จะข้ามไป MIME มันก็จะสร้าง Keyword ของมันเองเช่น Mime-Version, Content-Type เพื่อเป็นข้อมูลที่จะบอกปลายทางให้รู้ว่าต้นทางทำอะไรกับข้อมูลบ้าง

ตัวอย่าง Mail Header

Return-Path:
Delivered-To: /usr/local/vpopmail/domains/NextProject.net.com/M/l/deoinbox/Maildir/
Received: (qmail 82729 invoked by uid 0); 6 Jul 2004 16:31:26 -0000
Received: from unknown (HELO assografici.it) (210.96.72.253) by webmail.thai.com with SMTP; 6 Jul 2004 16:31:26 -0000
Message-Id:
From: "who name"
To: webmaster@nectproject.net
Subject: Hello World
Date: Mon, 05 Apr 2004 17:26:35 +0000
Mime-Version: 1.0
Content-Type: text/html
Content-Transfer-Encoding: base64


ปัญหาหนึ่ง ที่เคยเกิดขึ้นในยุคการเปลี่ยนมาใช้ MIME แรกๆ และยังคงมีอยู่บ้างก็คือ MIME ปลายทางเป็นเวอร์ชั่นเก่ากว่า หรือมันไม่รู้จัก Encoding ที่ต้นทางใช้ มันแลย Decode ไปเป็น Binary Code ไม่ได้ เช่นต้นทางใช้ Content-Transfer-Encoding: XuuEncode ปลายทาง ไม่รู้จัก XuuEncode ก็ไม่สามารถอ่านได้

ตัวอย่าง เพื่อนส่งไฟล์ Zip ซึ่งเป็น Binary มา แต่ MIME ของระบบ Mail ปลายทาง Decode ไม่ได้อาจเป็นเพราะไม่รู้จัก Encoding ที่ต้นทางใช้ เมื่อถึงปลายทาง ไฟล์ Zip ที่ Encoding เป็น ASCII แล้วจะต้องเปลี่ยน เป็น Binary ก่อน มันก็ทำไม่ได้ เป็นไปได้ที่มันก็เอา ASCII นั้นมาแสดงผล ผลที่ได้ก็คือจะมีอักขระแปลกๆเต็มหน้าจอ ทั้งนี้เพราะข้อมูลใน ASCII นั้นๆอาจเป็น Binary ที่ต่อๆ กันอยู่ (ทั้งนี้ขึ้นอยุ่กับ Encoding Technic ที่ใช้)

* ถ้าอยากรู้ว่า Binary File เป็นอย่างไรให้ลองเอา ไฟล์อะไรก็ได้เช่น .doc,.zip,.jpg เปิดด้วย notepad จะเห็น อักขระแปลก ๆเต็มไปหมด



เขียนโดย : จักรกฤษณ์ แร่ทอง

c=o
22 Dec 2004 , 10:05 PM
ได้ความรู้มากๆครับ

Jhon
05 May 2005 , 03:27 PM
โห เห็นทางสว่างแล้วครับ ขอบคุณมาก

ann
27 ส.ค. 2551 , 09:08 AM
พี่ค่ะ ขอบคุณมากนะค่ะ หนูหาตั้งนานแน่ะกว่าจะเจอเรื่องนี้ คราบพระคุณมากค่ะ ^^

jump
02 ก.พ. 2552 , 11:34 AM
ขอบคุณค้าบ

yada
21 ส.ค. 2553 , 12:22 AM
ช่วยสอนวิธีการทำให้อ่านได้หน่อยได้หรือเปล่าค่ะ หามาเป็นอาทิตย์แล้วค่ะยังงมอยู่ที่เดิมเลย
1

ความคิดเห็น/แนะนำ/ติชม/อื่นๆ เกี่ยวกับบทความนี้
ชื่อของคุณ  : *     อีเมล : *    
ความคิดเห็น : *    
      อีเมลล์จะไม่ถูกเปิดเผย (นโยบายข้อมูลส่วนบุคคล)

Copyright © 2002 - 2019 by www.NEXTPROJECT.net All rights reserved. Policy