Chrome Privacy Sandbox: มีความหมายอย่างไรต่อ Device Fingerprinting
Chrome กำลังจำกัด userAgent, Client Hints และคุกกี้บุคคลที่สาม tracio.ai รักษาความแม่นยำ 99.5% ไว้ได้อย่างไรแม้มีข้อจำกัดเหล่านี้
Privacy Sandbox
ของ Google คือการเปลี่ยนแปลงที่สำคัญที่สุดต่อ browser fingerprinting นับตั้งแต่การเปิดตัว
Canvas API
ตลอดสองปีที่ผ่านมา Chrome ค่อย ๆ ลดข้อมูลที่เข้าถึงได้ผ่าน navigator API ลง เปิดตัว User-Agent Client Hints มาแทนที่สตริง user-agent และกำลังยกเลิกคุกกี้บุคคลที่สามออกทั้งหมด
สำหรับผู้ให้บริการ device fingerprinting นี่เป็นทั้งความท้าทายและโอกาส ความท้าทายนั้นชัดเจน: สัญญาณที่น้อยลงหมายถึงพลังในการระบุตัวตนที่ลดลง ส่วนโอกาสคือผู้ให้บริการที่ปรับตัวได้จะมีความได้เปรียบในการแข่งขันอย่างมีนัยสำคัญเหนือผู้ที่เคยพึ่งพาสัญญาณที่ตอนนี้ถูกจำกัดไปแล้ว
อะไรที่เปลี่ยนไป
การเปลี่ยนแปลงที่ส่งผลกระทบมากที่สุดคือการลดทอนสตริง navigator.userAgent ตอนนี้ Chrome คืนค่า user agent แบบ "reduced" ที่ตัดเวอร์ชัน OS รุ่นอุปกรณ์ และเวอร์ชันเบราว์เซอร์แบบเต็มออกไป แทนที่ด้วยข้อมูลเหล่านี้ที่เข้าถึงได้ผ่าน User-Agent Client Hints — แต่เฉพาะเมื่อร้องขออย่างชัดเจนผ่านเฮดเดอร์ Accept-CH และอยู่ภายใต้ permission policy เท่านั้น
สำหรับ tracio.ai นั้น user agent ไม่เคยเป็นสัญญาณที่โดดเด่นมากนัก มันให้ความแตกต่างต่อ fingerprint ของเราอย่างจำกัด และคุณค่าของมันก็ลดลงเรื่อย ๆ เมื่อ Chrome, Edge และ Brave ค่อย ๆ มาบรรจบกันที่รูปแบบคล้าย ๆ กัน สถาปัตยกรรมการระบุตัวตนแบบหลายชั้นของเราจัดหมวดข้อมูล user-agent ให้เป็นสัญญาณระดับ "session-level" อยู่แล้ว — มีประโยชน์ต่อการระบุตัวตนครั้งแรก แต่ไม่ใช่สิ่งสำคัญต่อการคงตัวตนข้ามเซสชัน
กลยุทธ์การปรับตัวของเรา
การตอบสนองของ tracio.ai ต่อ Privacy Sandbox มีสามส่วน ส่วนแรก เราหันมาโฟกัสที่สัญญาณระดับฮาร์ดแวร์ที่ Chrome ไม่สามารถจำกัดได้โดยไม่ทำให้ความเข้ากันได้ของเว็บพัง: การเรนเดอร์ canvas, ความละเอียดของ WebGL shader, ลักษณะการประมวลผลเสียง และพารามิเตอร์ GPU สัญญาณเหล่านี้ทำงานอยู่ในระดับที่ต่ำกว่าการควบคุมความเป็นส่วนตัวของเบราว์เซอร์ — มันขึ้นอยู่กับฮาร์ดแวร์จริง ไม่ใช่การตั้งค่าเบราว์เซอร์
ส่วนที่สอง เราลงทุนในการรวมสัญญาณด้วย ML เมื่อสัญญาณแต่ละตัวโดดเด่นน้อยลง การรวมสัญญาณหลายตัวเข้าด้วยกันก็ยังสามารถสร้าง fingerprint ที่มีเอกลักษณ์สูงได้ โมเดลที่ขับเคลื่อนด้วย AI ของเราเรียนรู้ความสัมพันธ์ระหว่างสัญญาณที่การเชื่อมต่อแบบง่าย ๆ มองข้ามไป การรวมกันเฉพาะของความละเอียดหน้าจอ + device pixel ratio + hardware concurrency + GPU renderer + audio sample rate สามารถมีเอกลักษณ์ได้เกือบเท่ากับ canvas fingerprint เพียงอย่างเดียว
ส่วนที่สาม เราขยายแคตตาล็อกสัญญาณของเราให้เกินกว่า browser API แบบดั้งเดิม CSS feature queries, font rendering metrics, ลักษณะ timing ของ JavaScript engine และพฤติกรรมการคอมไพล์ WebAssembly ล้วนให้สัญญาณสำหรับการระบุตัวตนที่ไม่ได้เป็นเป้าหมายของข้อจำกัด Privacy Sandbox
ผลกระทบต่อความแม่นยำ
เราติดตามความแม่นยำในการระบุตัวตนของเราตลอดการเปิดตัวเวอร์ชัน Chrome นับตั้งแต่เวอร์ชัน 110 นี่คือตัวเลขของเรา:
Chrome 110 (ก่อนการลดทอน): ความแม่นยำ 99.7% Chrome 115 (ลดทอน UA บางส่วน): ความแม่นยำ 99.6% Chrome 120 (ลดทอน UA เต็มรูปแบบ): ความแม่นยำ 99.5% Chrome 125 (บังคับใช้ Client Hints): ความแม่นยำ 99.5%
การลดลง 0.2% นั้นส่วนใหญ่อยู่ในสถานการณ์ cross-browser จาก mobile Safari ไป Chrome ที่สัญญาณฮาร์ดแวร์แตกต่างกัน สำหรับการระบุผู้เยี่ยมชมซ้ำบนเบราว์เซอร์เดียวกัน — ซึ่งเป็นกรณีใช้งานหลักของเรา — ความแม่นยำคงอยู่ที่ 99.5% ตลอดการทยอยเปิดตัว Privacy Sandbox
อะไรจะตามมาต่อไป
Google ได้ประกาศแผนการที่จะจำกัด API เพิ่มเติม รวมถึงการลดความละเอียดของ screen.width/height และจำกัดการแจกแจง WebGL extension เรากำลังเตรียมพร้อมสำหรับการเปลี่ยนแปลงเหล่านี้ด้วยแหล่งสัญญาณทางเลือกและโมเดล ML ที่ปรับปรุงแล้ว
ข้อค้นพบพื้นฐานคือความหลากหลายของฮาร์ดแวร์เป็นรากฐานของ device fingerprinting และความหลากหลายของฮาร์ดแวร์นั้นจะไม่หายไปไหน ตราบใดที่อุปกรณ์ต่าง ๆ ยังเรนเดอร์พิกเซลต่างกัน ประมวลผลเสียงต่างกัน และรันโค้ดต่างกัน การระบุอุปกรณ์ก็จะยังคงทำได้ด้วยความแม่นยำสูง สัญญาณที่เราใช้อาจเปลี่ยนไป แต่หลักการพื้นฐาน — อุปกรณ์ทุกเครื่องมีเอกลักษณ์เฉพาะตัว — ยังคงอยู่