คุกกี้คือไฟล์ข้อมูลเล็กที่เว็บเซอร์ฟเวอร์จะทำการเก็บไว้ในเครื่องคอมพิวเตอร์ของผู้ใช้ ซึ่งเตรียมไว้ใช้ในอนาคตซึ่งคุกกี้จะฝังไว้ในส่วนของคำสั่ง html โดยมีการรับและส่งจากทั้งเครื่อง เซอร์ฟเวอร์และคอมพิวเตอร์ของผู้ใช้ โดยที่คุกกี้อนุญาตให้ผู้ใช้สามารถที่จะกำหนดข้อมูลในเว็บเองได้ เช่น การเก็บค่าข้อมูลสินค้าที่ได้ทำการเลือกจาก ผู้ใช้ ที่ใช้บราวเซอร์ในการซื้อสินค้าสินค้าจากเว็บเช่น การเก็บค่าข้อมูลสินค้าที่ผู้ใช้ได้ทำการเลือกซื้อจากเว็บไซต์นั้นๆ คุกกี้สามารถที่จะจดจำผู้ใช้ได้ แต่ไม่สามารถประมวลผล หรือส่งไวรัสได้และมีเพียงเซอร์ฟเวอร์ที่สร้างคุกกี้นั้นๆ ขึ้นเท่านั้นจึงจะสามารถ อ่านค่าของคุกกี้ดังกล่าวได้
จุดประสงค์ของการใช้ คุกกี้ : เนื่องจาก HTTP เป็นโปรโตคอลที่ไม่คงสถานะการเชื่อมต่อไว้ จึงทำให้ประสิทธิภาพในการกระจาย
การใช้งานของข้อมูลกับผู้ใช้ในเครือข่ายสามารถทำได้ดี แต่ถ้าในมุมมองกลับกันก็จะพบว่าสิ่งนี้ทำให้เว็บแอพพลิเคชันยากที่จะตรวจสอบการทำงานของไคลเอนท์และจดจำข้อมูลของไคลเอนท์ทีมีการใช้งานกับเว็บแอพพลิเคชันของเซอร์ฟเวอร์ ดังนั้นคุกกี้จึงได้รับการพัฒนาขึ้นเพื่อแก้ปัญหาเกี่ยวกับสถานะของการเชื่อมต่อของ HTTP นี้อย่างไรก็ตามเว็บไซต์ในปัจจุบันนี้มีการทำงานที่เป็นแบบโต้ตอบมากขึ้นซึ่งส่วนมาก จะต้องใช้เซอร์ฟเวอร์ทำการระบุผู้ใช้เซอร์ฟเวอร์จะต้องรู้ว่าหน้าใดเป็นเพจสุดท้ายที่ผู้ใช้ทำงานและต้อง สามารถเก็บข้อมูลระหว่างการใช้งานต่างๆ ได้ คุกกี้จึงถูกนำมาใช้งานเพื่อเก็บข้อมูลเกี่ยวกับผู้ใช้ เช่น ID number หลังจากผ่านไปซักระยะหนึ่งเมื่อผู้ใช้กลับมาใช้งานในเว็บไซต์ใหม่เว็บไซต์นั้นก็จะสามารถระบุ ผู้ใช้ได้และจัดเตรียมหน้าที่เหมาะสมกับการใช้งานไว้ให้ทันที ชื่อคุกกี้มาจาก unix object ชื่อว่า magic cookies ซึ่งเป็น tokens ที่ติดอยู่กับผู้ใช้ หรือ โปรแกรม และเปลี่ยนแปลงตามพื้นที่การใช้งานของ ผู้ใช้และโปรแกรม บางทีคุกกี้อาจถูกเรียกว่า persistent cookies เนื่องจากว่ามันจะอยู่ในบราวเซอร์เป็นเวลานาน
ข้อจำกัดของคุกกี้ : มาตรฐานทั่วไปของบราวเซอร์จะสนับสนุนการใช้งานของ คุกกี้ ประมาณ 300 ตัว ดังนั้นตัวที่ 301 จะทำการเขียนข้อมูลแทนตัวแรก นอกจากนั้นขนาดของคุกกี้ แต่ละตัวจะต้องไม่เกิน 4 KB และใช้คีย์ได้ไม่เกิน 250 คีย์ ในคุกกี้แต่ละตัว อย่างไรก็ตามส่วนใหญ่ข้อกำจัดสำหรับการใช้งานจริง จะเกิดจากการมีจำนวน (ขนาด) ของคุกกี้เกินกำหนดมากกว่าข้อจำกัดอื่นๆจะต้องทำการเขียนคุกกี้ก่อนทำการเขียนhttpheaderซึ่งก็คือในหน้าที่ เขียนเว็บเพจที่ต้องการสร้างคุกกี้โดยต้องเขียนคุกกี้ก่อนส่วนของคำสั่งhtmlแต่อย่างไรก็ตามหากทำการกำหนด บัพเฟอร์คือใช้คำสั่งก็สามารถที่จะทำการสร้างคุกกี้ไว้ที่ใดก็ได้ภายในส่วนของคำสั่งhtmlเนื่องจากหากมีการ กำหนดบัฟเฟอร์แล้ว ก็จะไม่มีการเขียนค่าใด ๆทั้งสิ้นภายใน client browser จนกว่า code ทั้งหมดจะทำการ ประมวลผลเสร็จเสร็จโดยการที่เขียนต้องเขียนด้านล่างของและห้ามใช้underscoreหรือตัวอักษรพิเศษอื่นๆ
ในการกำหนดชื่อของ คุกกี้ เนื่องจากคุกกี้อาจจะไม่ทำงาน
สถานะและขั้นตอนการทำงานของคุกกี้ : คุกกี้มี 2 สถานะคือ คือ สถานะ X และ สถานะ Y
สถานะที่ X ผู้ใช้ร้องขอการใช้งานคุกกี้กับเซอร์ฟเวอร์ผ่านทางเว็บบราวเซอร์ดังนั้นเซอร์ฟเวอร์ก็จะทำ
การสร้างคุกกี้ขึ้น
สถานะที่ Y เซอร์ฟเวอร์ทำการส่งคุกกี้ไปให้กับเครื่องของผู้ใช้โดยเว็บบราวเซอร์ของผู้ใช้ก็จะทำการรับ
ข้อมูลและเก็บไว้ในไฟล์พิเศษที่เรียกว่า Cookies list ระหว่างสถานะที่สอง คุกกี้จะถูกส่งอย่างไม่รู้ตัวและอัตโนมัติจากเครื่องของผู้ใช้ไปยังเว็บเซอร์ฟเวอร์ เมื่อใดที่ผู้ใช้ได้ใช้เว็บบราวเซอร์เพื่อจะได้แสดงหน้าของเพจนั้นจากเซอร์ฟเวอร์บราวเซอร์ก็จะทำการส่งคุกกี้ที่มี ข้อมูลของบุคคลที่ใช้ให้กับเซอร์ฟเวอร์
คุกกี้ช่วยเซอร์ฟเวอร์ได้อย่างไร : ทำให้สามารถใช้งานเซอร์ฟเวอร์ได้ดีขึ้นคือเซอร์ฟเวอร์จะรู้ว่ามีข้อมูลอะไรบ้างที่ผู้ใช้ต้องการและไม่ต้องการโดยจะไม่แสดงหน้าที่ผู้ใช้ไม่ต้องการแต่แสดงเฉพาะหน้าที่ผู้ใช้ต้องการได้ถ้าหากผู้ใช้ต้องการควบคุมการรับคุกกี้ ผู้ใช้สามารถสั่งให้บราวเซอร์ทำการรับคุกกี้ทุกตัวหรือให้มีการเตือนทุกครั้งที่มีการรับคุกกี้ และสามารถที่จะตัดสินใจได้ว่าต้องการยอมรับคุกกี้หรือไม่
คุณสมบัติของคุกกี้
เก็บคุกกี้เอาไว้ในเครื่องของผู้ใช้ คุกกี้เก็บอยู่ในฮาร์ดดิสก์ของเครื่องผู้ใช้ที่ใช้งานบราวเซอร์ โดยคุกกี้แต่ละตัวจะประกอบด้วยข้อมูลหลายชนิด คือ โดเมนทีสร้างคุกกี้,วันหมดอายุของคุกกี้ ,ข้อมูลที่เก็บอยู่, และอาจจะมีคีย์ข้อมูลต่าง ๆที่จัดเก็บในคุกกี้
กระบวนการในการเก็บและจัดการคุกกี้ขึ้นอยู่กับชนิดของบราวเซอร์ ในฐานะของโปรแกรมเมอร์เราสามารถเรียกคำสั่งของ ASP เพื่อสั่งให้บราวเซอร์ทำการสร้างคุกกี้โดยที่ไม่จำเป็นต้องทราบรายละเอียดในการจัดเก็บและจัดการเนื่องจากการทำงานกับคุกกี้ของบราวเซอร์แต่ละชนิด จะแตกต่างกันแต่อย่างไรก็ตามบราวเซอร์แต่ละชนิดก็ได้จัดเตรียมการโต้ตอบในลักษณะเดียวกันไว้ให้กับ โปรแกรมเมอร์สำหรับการทำงานกับคุกกี้
คุกกี้จะหมดอายุทันทีที่ปิดบราวเซอร์ ดังนั้นถ้าต้องการใช้งานคุกกี้หลังจากการปิดบราวเซอร์แล้ว จะต้องทำการกำหนดวันหมดอายุให้กับคุกกี้นั้น
วิธีการตรวจดูคุกกี้ที่รับเข้ามา : Internet Explorer 4.0 up ที่เมนู tools bar
1.Tools
2. Internet Options.
3. ข้างล่างจาก tab General (the default tab) click
4.Settings
5. View Files.
การเก็บค่าคุกกี้ในไฟล์คุกกี้ ค่าในไฟล์ของคุกกี้จะอ่านไม่รู้เรื่องเนื่องจากค่าชื่อและตัวแปรต่างๆจะทำการกำหนดโดยเซอร์ฟเวอร์ที่ สร้างคุกกี้เท่านั้นที่รู้ดังนั้นจึงเป็นการยากมากที่จะนำคุกกี้ไปใช้โดยไม่ได้รับอนุญาตแต่สามารถขโมยคุกกี้ได้ จากการใช ้javascript นี่คือตัวอย่างของคุกกี้ที่พบใน windows\cookiesdirectory โดยที่จะสามารถพบได้ หากว่าใช้ Internet Explorer 3 ขึ้นไป โดยที่ไฟล์คุกกี้มีหน้าตาดังนี้ @. ซึ่งตัวอย่างนี้คุกกี้มาจาก doubleclick.net โดยสิ่งที่สามารถรู้ได้จากคุกกี้จะมี ชื่อของคุกกี้ และชื่อโดเมน หรือเป็นตัวเลขที่เป็นค่าหรือตัวแปรต่างๆโดยที่ส่วนประกอบของคุกกี้จะถูกเข้ารหัสโดยที่คุกกี้บางตัวอาจจะทำ การเก็บค่าได้หลายค่าถึงแม้ว่าคุกกี้เหล่านี้จะถูกเก็บรวมกันอยู่ในไฟล์เดียวแต่ไซต์ที่ได้สร้างมันขึ้นจะสามารถ เข้าถึงได้บางไซต์ก็เก็บค่าของคุณไว้ในคุกกี้บางไซต์ก็จะกำหนดค่าuserIDให้หรือทำการเข้ารหัสพาสเวอร์ดให้ และเก็บค่าข้อมูลของคุณไว้ที่ไซต์ของเค้าบางไซต์ก็จะเก็บคุกกี้ของเราไว้ชั่วคราวซึ่งจะถูกลบเมื่อคุณออกจาก
บราวเซอร์
สิ่งที่คุกกี้บอกไม่ได้ : คุกกี้ไม่สามารถที่จะรู้ชื่อผู้ใช้,อายุของผู้ใช้,เวลาที่ผู้ใช้เล่นหรือแม้แต่ว่าผู้ใช้อยู่ประเทศอะไรและ คุกกี้ยังไม่สามารถบอกได้ว่ามีคนผู้ใช้เครื่องคอมพิวเตอร์หลายคนในการดูเว็บไซต์ หรือแม้แต่บุคคลเดียวกัน แต่ใช้เครื่องคอมพิวเตอร์หลาย ๆ เครื่อง
ข้อดีของคุกกี้ : บราวเซอร์สามารถเก็บค่า Password , userID และเก็บค่าอ้างอิงถึงหน้าแรกได้ ซึ่งทั้ง Microsoft และ Netscape ได้ใช้คุกกี้ในการสร้างค่าหน้าเริ่มต้นเฉพาะบุคคลขึ้น แต่ส่วนใหญ่ใช้คุกกี้ในการทำงานต่อไปนี้
onlineordersystem สามารถพัฒนาวิธีการใช้คุกกี้กับระบบสั่งซื้อของ onlineได้
เพื่อใช้ในการจดจำว่าบุคคลต่าง ๆ ต้องการซื้ออะไร เช่น ถ้าผู้ใช้สั่งซื้อ ซีดีที่ไซต์หนึ่งและได้ออกจากไซต์นั้น และออกจากบราวเซอร์ เมื่อกลับมาที่บราวเซอร์อีกครั้ง หลังจากนั้น 1อาทิตย์หรือปีต่อมา ที่ไซต์นั้นก็ยังมีรายชื่อซีดีที่เขาเลือกเก็บไว้อยู่เสมอ
site personalization เป็นวิธีการหนึ่งที่มีประโยชน์มากที่สุดในการใช้คุกกี้เช่นหากมีคนเข้ามาที่ MSNBC site แต่ไม่ต้องการข้อมูลเกี่ยวกับข่าวกีฬาเลย และไซต์นั้นอนุญาตให้ผู้อ่านเลือกได้ว่าไม่ต้องการข่าวกีฬา และเมื่อผู้ใช้เข้ามาที่ไซต์นั้นใหม่(ในขณะที่คุกกี้ยังไม่หมดอายุ)จะไม่เห็นหน้าข่าวกีฬาอีกเลย ซึ่งการใช้คุกกี้นี้ มีประโยชน์ในการทำเพจเริ่มต้นมาก
ข้อเสียคุกกี้ : ครั้งแรกคุกกี้สร้างขึ้นมาเพื่อช่วยอำนวยความสะดวกให้กับผู้ใช้ในการเข้าไปที่เว็บไซต์ที่ชื่นชอบโดย ที่ไม่ต้องเสียเวลาในการที่หาสิ่งที่ต้องการทุกครั้งที่ผู้ใช้เข้ามา ซึ่งจะทำให้เสียเวลาในค้นหาข้อมูลอีกครั้ง เช่น เมื่อผู้ใช้ได้เข้าไปที่ไซต์หนึ่งเป็นครั้งแรกผู้ใช้อาจจะถูกขอร้องให้ใส่ชื่อ,ข้อมูลส่วนบุคคลหรือข้อมูลเกี่ยวกับการเงิน เพื่อไซต์นั้นจะได้นำมาใช้อีกครั้งเมื่อผู้ใช้เข้ามาที่เว็บไซต์นั้นอีกครั้งในอนาคตโดยที่เว็บไซต์นั้นก็จะทำการสร้าง คุกกี้ซึ่งบรรจุข้อมูลเหล่านั้นลงไปในเครื่องคอมพิวเตอร์ของผู้ใช้และหากว่าผู้ใช้ได้กลับมาที่ไซต์นั้นอีกจะมีการร้อง ขอข้อมูลเหล่านั้นมาตรวจสอบว่าผู้ใช้เป็นใครและได้รับอนุญาตให้เข้ามาที่ไซต์นั้นหรือไม่ แต่คุกกี้ก็มีข้อเสียถ้าหากบางคนที่มีเจตนาไม่ดีและรู้วิธีการใช้คุกกี้ในการติดตามการใช้งานเว็บไซต์ และสามารถที่จะนำคุกกี้ของผู้ใช้ไปจะทำให้ผู้ใช้คนนั้นถูกบุกรุกสิทธิส่วนบุคคลหรือเราอาจจะถูกกำหนดให้เป็น สมาชิกในกลุ่มใด ๆโดยที่เราไม่รู้ตัวได้