HTTP ย่อมาจาก Hypertext Transfer Protocol เป็นโปรโตคอล(Protocol)สื่อสารที่ทำงานอยู่ในระดับ Application Layer บนโปรโตคอล TCP/IP มีรูปแบบดังนี้
- เป็นโปรโตคอลหลักที่ใช้ในการแลกเปลี่ยนข้อมูล(HTML)กันระหว่าง Web Server และ Web Client(Browser)
- ใช้ URL(Uniform Resoure Locator) ในการเข้าถึงเว็ปไซต์(Web Site) ซึ่งจะขึ้นต้นด้วย http:// ตามด้วยชื่อของเว็ปไซต์
- ทำงานที่พอร์ต(port) 80 (มาตรฐาน)
- ส่งข้อมูลเป็นแบบ Clear text คือ ไม่มีการเข้ารหัสข้อมูลในระหว่างการส่ง(None-Encryption) จึงสามารถถูกดักจับได้ และอ่านข้อมูลนั้นรู้เรื่อง
แล้ว HTTPS คืออะไร ?
HTTPS ย่อมาจาก Hypertext Transfer Protocol Secure หรือ Hypertext Transfer Protocol Over SSL(Secure Socket Layer) เป็นการทำงานเหมือนกับ HTTP ธรรมดาแต่ทำอยู่บน SSL เพื่อให้เกิดความปลอดภัยในการส่งข้อมูลมากยิ่งขึ้น มีรูปแบบดังนี้
- การใช้งาน URL จะเข้าต้นด้วย https:// ตามด้วยชื่อของเว็ปไซต์
- ทำงานที่พอร์ต(port) 443 (มาตรฐาน)
- ส่งข้อมูลเป็นแบบ
- มีการทำ Authentication เพื่อตรวจสอบยืนยันระบุตัวตน
ที่บอกว่า HTTPS คือ HTTP ที่ทำงานอยู่บน SSL แล้ว SSL คืออะไร?
SSL(Secure Socket Layer)
ความหมาย
SSL ย่อมาจาก Secure Socket Layer เป็นโปรโตคอลในการเพิ่มการรักษาความปลอดภัยในการรับส่งข้อมูลบนระบบเครือข่าย
วัตถุประสงค์ของ SSL
- เพื่อรักษาความลับของข้อมูล(Confidentiality) เพื่อให้การส่งข้อมูลมีความปลอดภัยมากยิ่งขึ้น
- เพื่อให้เกิดความคงสภาพของข้อมูล(Integrity) คือ ข้อมูลต้นฉบับต้องไม่ถูกแก้ไขเปลี่ยนแปลง
- เพื่อให้การใช้งานระบบเครือข่าย(Network)นั้น ทำงานได้ตามปกติและเต็มประสิทธิภาพของการใช้งาน(Availability)
การทำงานของ HTTPS หรือ HTTP Over SSL
- Browser เริ่มต้นเพื่อใช้งาน HTTPS(สร้าง Secure Session) โดยการส่งคำร้องขอ(พิมพ์ URL https:// XXX.com) ไปยัง Web Server
- Web Server ตอบกลับด้วย Certificate ซึ่งเป็นใบรับรองว่า Server นั้นเป็น Server จริง และ Public Key ของ Server เพื่อเอาไว้เข้ารหัส Symmetric Key ที่ต้องส่งไปให้ Server
- Browser ทำการตรวจสอบ Certificate ที่ได้จาก Web Server ว่าจริงหรือไม่
- เมื่อตรวจสอบแล้ว จะทำการสร้าง Symmetric Key ขึ้นมาหนึ่งชุด ไว้สำหรับการเข้ารหัส Data ที่ต้องส่งระหว่าง Client กับ Server
- Browser ทำการเข้ารหัส Symmetric Key นั้น ด้วย Public Key(ที่ Server ส่งมาให้ในข้อที่ 2 ) ของ Web Server จากนั้นส่ง Symmetric Key ที่ได้เข้ารหัสแล้ว(Symmetric Key Encrypted)กลับไปยัง Web Server
- Web Server ทำการถอดรหัส Symmetric Key นั้นด้วย Private Key ของ Web Server เอง
- เริ่มกระบวนการเชื่อมต่อแบบ SSL
หลังจากนี้การส่งข้อมูลจะเป็นการเข้ารหัสโดยใช้ Symmetric Key ที่ทั้ง Client และ Server มี(ที่ Browser ส่งไปให้)
HTTP ทำงานในระดับใดบนโปรโตคอล TCP/IP?
ตอบลบเข้าถึง Telkom University Jakarta