Friday, 26 April 2024

มาทำความรู้จัก เว็บ Cookie กันค่ะ

03 Nov 2022
2141


อาจมีหลายคนสงสัยนะคะว่า เว็บ Cookie คืออะไร ? แล้วทำไมเวลาเข้าเว็บไซต์ บางเว็บถึงมีคำร้องขอใช้งาน และทำไมบางเว็บไม่มี ? บทความนี้เลยอยากจะมาหาคำตอบนี้ให้ค่ะ ก่อนอื่นเลยเรามาทำความรู้จักกับ Cookie กันก่อนเลยนะคะ

คุกกี้ (Cookie) คือ ชื่อของข้อมูลขนาดเล็ก ที่ได้มาจากการเชื่อมต่อระหว่างเว็บไซต์ กับเครื่องคอมพิวเตอร์ โดยมีชื่อเต็มยศว่า HTTP Cookie บ้างก็เรียกว่า เว็บคุกกี้ (Web Cookie), อินเทอร์เน็ตคุกกี้ (Internet Cookie), เบราว์เซอร์คุกกี้ (Browser Cookie) หรือถ้าจะเรียกสั้นๆ ว่า “คุกกี้ (Cookie)” อย่างเดียว ก็ไม่ได้ผิดอะไรค่ะ
: Cookie เป็นเทคโนโลยีเก่าแก่ที่เกิดขึ้นมาตั้งแต่ปี ค.ศ. 1994 (พ.ศ. 2537)
: Cookie เป็นไฟล์ข้อความ (Text File) ขนาดเล็ก ที่จะถูกเก็บบันทึกเอาไว้ในคอมพิวเตอร์ของเรา ไฟล์ Cookie จะถูกสร้างขึ้นโดยอัตโนมัติ เมื่อเราใช้เว็บเบราว์เซอร์เข้าชมเว็บไซต์ต่าง ๆโดย Cookie จะช่วยให้ประสบการณ์ในการใช้งานอินเทอร์เน็ตของผู้ใช้ ได้รับความสะดวกสบายมากยิ่งขึ้น โดย Cookie จะทำหน้าที่จดจำข้อมูลที่เป็นประโยชน์ต่อตัวเว็บไซต์
ยกตัวอย่างเช่น
-หากเราเข้าเว็บขายสินค้าออนไลน์ แล้วเรามีสินค้าใส่เอาไว้ในตะกร้าแล้ว หากไม่มี Cookie เมื่อเราปิดหน้าเว็บไป สินค้าในตะกร้าก็จะหายไปด้วยเลยค่ะ แต่ด้วยความสามารถของ Cookie เว็บจะสามารถจดจำได้ว่า มีสินค้าอะไรอยู่ในตะกร้าบ้าง
-หรือจะเป็นพวกข้อมูลการเข้าระบบของ Facebook หากเราต้องการให้ตัวเว็บจดจำการเข้าระบบของเราไว้ตลอด ไม่ต้องมาใส่รหัสผ่านเข้าระบบใหม่ทุกครั้งที่เข้าใช้งาน ก็ต้องอาศัยเจ้า Cookie นี่แหละค่ะ

โดนปกติแล้ว เมื่อ Cookie ถูกสร้างขึ้น มันจะไม่มีการบันทึกข้อมูลส่วนตัวของผู้ใช้นะคะ แต่ถ้ามีความจำเป็น ข้อมูลก็จะถูกเข้ารหัสเอาไว้ เพื่อป้องกันไม่ให้ มีบุคคลที่สามแอบเข้ามาขโมยข้อมูลส่วนตัวของคุณไปใช้งานได้ ผู้ที่อ่านได้จะมีแต่เซิร์ฟเวอร์ที่เป็นเจ้าของ Cookie เท่านั้นค่ะ บางเว็บไซต์ก็ได้เพิ่มความปลอดภัยไปอีกขั้น ด้วยการสร้าง Cookie แบบไม่ระบุตัวตน (Anonymous) แต่มีเอกลักษณ์เฉพาะขึ้นมา และเก็บข้อมูลส่วนบุคคลไว้บนเซิร์ฟเวอร์ของตนเอง เมื่อจำเป็นต้องใช้งาน Cookie เว็บไซต์ก็จะใช้ Cookie แบบไม่ระบุตัวตนนั้น เป็นเสมือนกุญแจสำหรับเปิดข้อมูลในเซิร์ฟเวอร์ ยกตัวอย่างข้อมูลใน Cookie HMP1 1 hotmail.msn.com/ 0 1715191808 32107852 1236821008 29449527 * 

ประเภทของ Cookie

  • Session Cookie
    เราสามารถมอง Session Cookie ว่าเป็นหน่วยความจำชั่วคราวของเว็บไซต์ก็ได้ มันจะคอยบันทึกความเคลื่อนไหวที่เกิดขึ้นบนหน้าเว็บเอาไว้ หากไม่มีมัน เราจะถูกตอบสนองเหมือนเพิ่งเข้าเว็บไซต์ดังกล่าวเป็นครั้งแรกเลยนะคะ
    Session Cookie จะไม่มีการเก็บข้อมูลที่เกี่ยวข้องกับคอมพิวเตอร์และข้อมูลส่วนตัวของคุณเลยนะคะ อย่างที่เราบอกเอาไว้ข้างต้นแล้วว่า คุกกี้ตัวนี้ทำหน้าที่เหมือนหน่วยความจำชั่วคราว ดังนั้น เมื่อเราปิดตัวเว็บเบราว์เซอร์ ไฟล์ Session Cookie ก็จะถูกทิ้งทันที
  • Persistent Cookie
    Persistent Cookie มีอีกหลายชื่อเรียก ไม่ว่าจะเป็น First-Party Cookie, Permanent Cookie หรือ Stored Cookie มันเป็นคุกกี้ที่ทำหน้าที่เสมือนเป็นหน่วยความจำถาวรของเว็บไซต์ ช่วยให้เว็บไซต์จดจำข้อมูลของเรา เพื่อให้ในอนาคตที่เราเข้ามาเยี่ยมชมเว็บไซต์อีกครั้ง การตั้งค่าทุกอย่างจะยังเหมือนที่เราเคยตั้งเอาไว้ครั้งแรก หาไม่มี Persistent Cookie แล้ว เว็บไซต์จะไม่สามารถจดจำข้อมูลการตั้งค่าเมนูบนเว็บ, ธีม, ภาษาที่เลือก, หรือ Boorkmark ในเว็บได้เลย และมันยังมีบทบาทสำคัญอีกอย่างในส่วนของระบบ User authentication หากเราทำการปิดคุกกี้ตัวนี้ไป เราจะต้องทำการรับรองเพื่อยืนยันการเข้าระบบใหม่ทุกครั้งที่เข้าเว็บเลยค่ะ และส่วนใหญ่แล้ว Persistent Cookie จะมีอายุการใช้งาน 1- 2 ปี หากเราไม่มีการเข้าใช้งานเว็บไซต์ภายในระยะเวลาที่คุกกี้ยังไม่หมดอายุ ตัวเว็บเบราว์เซอร์ก็จะทำการลบคุกกี้ดังกล่าวให้อัตโนมัติเลยค่ะ อย่างไรก็ตาม Persistent Cookie ก็มีข้อเสียอยู่เช่นกัน คือ เจ้าของเว็บไซต์ดังกล่าวจะสามารถติดตามพฤติกรรมการใช้งานของเราผ่านคุกกี้ตัวนี้ได้ด้วย
  • Secure Cookie
    เป็น Cookie ที่สามารถส่งผ่านการเชื่อมต่อที่ถูกเข้ารหัส (Encrypted connection) เอาไว้แล้วเท่านั้น เช่น HTTPS ทำให้เป็น Cookie ที่มีความปลอดภัยสูงมาก ยากต่อการถูกดักอ่านข้อมูล ตราบใดก็ตามที่ Secure Cookie ทำงานอยู่ ข้อมูลของผู้ใช้จะไม่ถูกส่งผ่านชาแนลเชื่อมต่อที่ไม่ได้เข้ารหัส ซึ่งมันจะช่วยปกป้องข้อมูลสำคัญของเราไม่ให้ “ถูกดัก” ระหว่างที่มีการรับส่งข้อมูลได อย่างไรก็ตาม แม้ว่าจะมีการเข้ารหัสเอาไว้แล้ว นักพัฒนาก็ไม่ควรใช้คุกกี้ชนิดนี้ในการรับส่งข้อมูลที่มีความสำคัญ เพราะด้วยหลักการทำงานของมัน มันแค่ปกป้องความลับภายในคุกกี้เท่านั้น แต่แฮกเกอร์สามารถใช้การโจมตีด้วยการเข้าควบคุม Secure Cookie ผ่านช่องทางเชื่อมต่อที่ไม่ปลอดภัยได้ โดยเฉพาะอย่างยิ่งในบางเว็บไซต์ที่มีทั้งระบบ HTTP และ HTTPS ในเว็บเดียวกัน
  • HTTP-Only Cookie
    HTTP-Only Cookie เป็น Cookie ที่ไม่สามารถเข้าถึงได้จากฝั่ง Client-side API เช่น JavaScript ข้อจำกัดนี้ทำให้ Cookie ชนิดนี้ปลอดภัยจากการถูกโจมตีด้วยเทคนิค Cross-site scripting หรือที่เรียกกว่า XSS (เทคนิคนี้จะเป็นการฝังโค้ดอันตรายเข้าไปบนหน้าเว็บโดยตรง ทำงานเมื่อหน้าเว็บถูกแสดงผล) อย่างไรก็ตาม มันยังสามารถถูกโจมตีด้วยเทคนิค Cross-site tracing (XST) และ Cross-site request forgery (CSRF) ได้อยู่ดีค่ะ
  • Same-Site Cookie
    เป็น Cookie แบบใหม่ที่ถูกคาดหวังให้เป็นมาตรฐานใหม่ที่มีความปลอดภัยกว่าคุกกี้แบบเดิม พัฒนาขึ้นมาโดย Google ในปี ค.ศ. 2016 (พ.ศ. 2559)
    โดยหลักการทำงานของมัน คือ ตัวเว็บเบราว์เซอร์จะสามารถควบคุมการรับส่งคุกกี้ระหว่างเว็บไซต์ต่างๆ ได้ ด้วยการใช้ SameSite Cookie attribute โดยสามารถกำหนดค่า Value ได้ 3 รูปแบบ คือ Strict, Lax หรือ None.
    ปัจจุบันนี้ เว็บเบราว์เซอร์ (Web Browser) ยอดนิยมอย่าง โปรแกรม Google Chrome, โปรแกรม Mozilla Firefox, โปรแกรม Microsoft Edge, โปรแกรม Opera และ โปรแกรม Safari ก็รองรับการทำงานของ Same-site Cookie แล้ว
  • Third-Party Cookie (3rd Party Cookie)
    ถ้าคุณเคยได้ยิน “ชื่อเสีย” ของคุกกี้มาก่อน เจ้านี่แหละคือสาเหตุของสิ่งนั้น ในขณะที่ First-Party Cookie กันก่อน มันจะจับคู่ตามชื่อของโดเมนเว็บที่เรากำลังจะเข้า แต่ Third-Party Cookie จะไม่เป็นแบบนั้น มันจะทำการจับคู่ไปยังโดเมนเว็บอื่นๆ แทน
    แน่นอนว่า เมื่อมันไม่ใช่คุกกี้ที่มาจากเว็บที่เราต้องการจะใช้งาน มันจึงไม่ได้สร้างประโยชน์อะไรให้กับเราเลยสักนิด หน้าที่เพียงอย่างเดียวที่ Third-Party Cookie ทำก็คือแอบติดตามความเคลื่อนไหวของเรา มันสามารถดูประวัติการเล่นเว็บ, พฤติกรรมการออนไลน์, ลักษณะการใช้จ่าย ฯลฯ จากความสามารถดังกล่าว จึงไม่น่าแปลกใจที่มันจะเป็นสิ่งที่นักการตลาดออนไลน์นิยมนำมาใช้ในการเพิ่มยอดขาย และยอดเพจวิว
    ข่าวดี คือ ในปัจจุบันนี้เว็บเบราว์เซอร์ส่วนใหญ่จะมีตัวเลือกในการปิดกั้นการทำงานของ Third-party Cookie ให้ใช้งานได้ อย่างใน โปรแกรม Google Chrome เราสามารถตั้งได้ด้วยการไปที่ chrome://settings/content/Cookie แล้วเปิดใช้งาน “Block third-party Cookie”
    • SuperCookie
    SuperCookie คุกกี้ที่มีชื่อเป็นโดเมนระดับสูงสุด เช่น .com หรือ .co.th (Cookie ธรรมดา ก็อย่างเช่น thaiware.com) เว็บเบราว์เซอร์ส่วนใหญ่ก็จะปิดกั้นการทำงานของ SuperCookie เพราะหากไม่ได้ปิดกั้นเอาไว้ มันสามารถถูกใช้ในการขัดขวาง หรือเลียนแบบการทำงานของผู้ใช้ อย่างการส่งคำร้องไป ไม่ให้ ทำงานได้
  • Zombie Cookie
    Zombie Cookie คือ Cookie ที่จะสร้างตัวเองขึ้นมาใหม่ได้ แม้ว่ามันจะถูกลบไปแล้วก็ตาม โดยอาศัยการกระจายตัวไปยังหลากหลายตำแหน่ง เช่น Flash Local shared object, HTML5 Web storage, Client-side หรือแม้กระทั่ง Server-side เมื่อมีการตรวจพบว่า Cookie ดังกล่าวหายไป มันก็จะสร้างตัวเองขึ้นใหม่ด้วยการใช้ข้อมูลที่กระจายเก็บไว้ในที่ต่างๆ 
  • Cookie Wall
    นี่ไม่ใช่ประเภทของ Cookie โดยตรง แต่ก็เกี่ยวข้องกันอย่างแน่นแฟ้น Cookie Wall คือ หน้าต่างแจ้งเตือนผู้ใช้ที่เข้าเว็บไซต์ โดยมันจะบังคับให้ผู้ใช้ยอมรับการใช้งาน Cookie ไม่มีตัวเลือกในการปฏิเสธ และหากเราไม่กดยอมรับ เจ้าหน้าต่างนี้ก็จะปิดกั้นไม่ให้เราเข้าใช้งานเว็บไซต์ได้ 

    • Cookies Consent คือ อะไร ?
    แม้ Cookie จะมีมานานแล้ว และมันก็มีกฏในการใช้งานของมันที่เรียกว่า Cookie Law อยู่ด้วย แต่เรื่องที่มันมีส่วนในการละเมิดข้อมูลส่วนบุคคลเป็นประเด็นที่เพิ่งจะเป็นกระแสสังคมในช่วงไม่กี่ปีที่ผ่านมานี้เอง หลังจากที่สหภาพยุโรป (EU) ได้ประกาศใช้กฏหมายคุ้มครองข้อมูลส่วนบุคคล GDPR (General Data Protection Regulation) ตั้งแต่วันที่ 25 พฤษภาคม ค.ศ. 2018 (พ.ศ. 2561)
    วัตถุประสงค์ของ GDPR คือ การกำหนดหลักเกณฑ์ที่เกี่ยวข้องกับการคุ้มครองประชาชน ในด้านการประมวลผลข้อมูลส่วนบุคคล และการเคลื่อนย้ายของข้อมูลส่วนบุคคล ซึ่งเป็นอำนาจที่ประชาชนควรมีอิสรภาพในการที่จะปกป้องข้อมูลส่วนตัวของตน
    การมาของ GDPR ไม่ได้ยกเลิก Cookie Law แต่มันมีการปรับปรุงให้เหมาะสม เพื่อให้ได้ผลลัพธ์ไปในทิศทางเดียวกัน ซึ่งมีหลักการสำคัญดังต่อไปนี้
    1 Cookie Law บังคับให้ผู้ใช้งานได้รับแจ้งความยินยอมก่อนที่จะติดตั้ง Cookie บนอุปกรณ์ของผู้ใช้ หรือมีการติดตาม Cookie 
    2 การยินยอมให้ใช้งาน Cookie จะต้องได้รับการยืนยันยอมรับจากผู้ใช้ การยืนยันอาจจะใช้วิธีคลิกเพื่อดำเนินการต่อ, คลิกปุ่มยอมรับ, เลื่อนหน้าจอ หรือวิธีบางอย่างที่ผู้ใช้ต้อง “กระทำ” เพื่อยืนยัน
    3 Cookie Consent คือ สิ่งที่เกิดขึ้นใน ข้อ 1. และข้อ 2. นั่นเอง
    4 แม้ว่าทาง Cookie Law จะไม่ระบุว่าต้องเก็บหลักฐานที่ผู้ใช้แสดงความยินยอมเอาไว้ แต่ GDPR ต้องการหลักฐานดังกล่าว ดังนั้นจึงขึ้นอยู่กับกฏหมายของประเทศที่คุณอาศัยอยู่ด้วย ทั้งนี้ ประเทศไทยเองก็มี พ.ร.บ.คุ้มครองข้อมูลส่วนบุคคล (PDPA) ที่กำลังจะมีผลบังคับใช้ในวันที่ 1 มิ.ย. ค.ศ. 2021 (พ.ศ.2564)
    5 ทาง Cookie Law ไม่บังคับว่าคุณต้องแสดงรายการ 3rd Party Cookie ที่ใช้ แต่ต้องบอกประเภท และวัตถุประสงค์ในการใช้งาน
    6 ไม่บังคับให้ผู้สร้าง Cookie ต้องจัดการกับ Cookie Consent ของ 3rd Party Cookie แต่ต้องแจ้งให้ผู้ใช้ทราบด้วยว่ามีการนำไปใช้ และแสดงลิงก์ไปยังข้อตกลงในการใช้งานของ 3rd Party Cookie ด้วย

สรุปง่าย ๆ ได้ว่า Cookie Consent ก็คือ สิ่งที่จะแจ้งเตือนให้ผู้ใช้ทราบว่าเว็บจะมีการใช้ Cookie อย่างไรบ้าง และเราจะยินยอมให้มีการนำไปใช้หรือเปล่านั่นเอง ซึ่งหลังจากที่ พ.ร.บ.คุ้มครองข้อมูลส่วนบุคคล (PDPA) บังคับใช้แล้ว ทุกเว็บไซต์ที่ใช้ Cookie ก็จะมีการแจ้งเตือนให้ยอมรับการใช้งาน Cookie Consent อย่างแน่นอน 

ที่มา : www.makeuseof.com , en.wikipedia.org , www.allaboutcookies.org , www.allaboutcookies.org , www.iubenda.com , aboutcookies.org , www.cookielaw.org