1. ฟอนต์ลายนิ้วมือคืออะไร
ฟอนต์ลายนิ้วมือหมายถึงเทคนิคในการ ระบุและระบุรายการฟอนต์ที่มีอยู่ในระบบของผู้ใช้ ผ่านวิธีการเช่น:
document.fonts
API- ความสอดคล้องในการเรนเดอร์ขนาด/ความกว้างของฟอนต์ (การตรวจจับตามเวลา หรือแบบพิกเซล)
- การตรวจสอบฟอนต์ที่ใช้ Flash หรือ CSS
- การตรวจจับการสนับสนุนฟอนต์โดยใช้
Canvas
และการวัดความแตกต่างในการเรนเดอร์ข้อความ
ในขณะที่ไม่ผูกพันกับ API ใดๆ (แตกต่างจาก WebGL หรือ Battery) ความพร้อมใช้งานของฟอนต์อาจแตกต่างกันอย่างมากระหว่างอุปกรณ์ ทำให้เป็น ตัวบ่งชี้ที่อ่อนนุ่ม ของความเป็นเอกลักษณ์ของผู้ใช้
มันมักจะถูกใช้ร่วมกับลายนิ้วมืออื่นๆ (Canvas, User-Agent, OS, Language) เพื่อปรับปรุง ความแม่นยำในการจับคู่เบราว์เซอร์ โดยเฉพาะใน:
- แพลตฟอร์ม KYC และการระบุตัวตน
- ระบบตรวจจับการใช้หลายบัญชี
- การตรวจจับการร่วมมือในเซสชันเว็บ
2. แพลตฟอร์มทำการระบุความพร้อมใช้งานของฟอนต์อย่างไร
ระบบต่อต้านการฉ้อโกงและเทคโนโลยีโฆษณามักจะเชื่อมต่อกับหนึ่งหรือหลายอย่างต่อไปนี้:
document.fonts.keys()
และcheck()
: ระบุว่าฟอนต์ได้รับการสนับสนุนและพร้อมใช้งานในเบราว์เซอร์หรือไม่- การเรนเดอร์ฟอนต์ด้วย Canvas: โดยการวาดข้อความด้วยฟอนต์เฉพาะและวัดผลลัพธ์ที่เรนเดอร์ ฟอนต์สามารถถูกระบุทางอ้อม
- การตรวจจับการฉีดฟอนต์ในระบบ: บางเฮอริสติกตรวจจับว่าฟอนต์ถูกฉีดโดยเครื่องมือเช่น Puppeteer หรือไม่ ผ่านชื่อฟอนต์หรือการเข้าถึงของครอบครัว
- การแบ่งฟอนต์และเวลาการโหลด: เวลาที่ฟอนต์กลายเป็น “พร้อมใช้งาน” หรือ “ไม่พร้อมใช้งาน” สามารถใช้เพื่อตรวจจับรอยเท้าของการทำงานอัตโนมัติในเบราว์เซอร์
- การตรวจสอบ CSS
@font-face
: ระบบอาจโหลดฟอนต์เว็บที่รู้จักและตรวจสอบว่าเบราว์เซอร์จัดการการเรนเดอร์สำรองหรือเวลายังไงเพื่ออนุมานการกำหนดค่าภายในของเบราว์เซอร์
เว็บไซต์สามารถสร้าง โปรไฟล์ที่ได้จากฟอนต์ เพื่อเพิ่มความเป็นเอกลักษณ์ของอุปกรณ์ — ตรวจจับความผิดปกติเช่น:
- “ฟอนต์ระบบมากเกินไป” หรือ “ไม่มี”
- ฟอนต์ที่ไม่สอดคล้องกับสถานที่หรือ OS ที่รายงาน
- ฟอนต์ที่ถูกแบล็คลิสต์หรือถูกทำเครื่องหมายที่ไม่ปกติ (เช่น ฟอนต์ช่วยที่ใช้ในโปรแกรมปลอมแปลง)
3. FlashID ทำให้ฟอนต์ลายนิ้วมือปลอดภัยและสอดคล้องได้อย่างไร
FlashID ควบคุมและระบุทุกด้านของ พฤติกรรมการเรนเดอร์ฟอนต์ เพื่อให้โปรไฟล์เบราว์เซอร์ดูสอดคล้อง สมจริง และเป็นเอกลักษณ์
นี่คือวิธีที่ FlashID ปกปิดหรือจำลองฟอนต์:
- การแยกฟอนต์ลิสต์: โปรไฟล์เบราว์เซอร์แต่ละตัวจะรักษาฟอนต์ลิสต์ของตนเองที่เป็นอิสระจากระบบโฮสต์ที่อยู่เบื้องหลัง ฟอนต์ระบบที่ซ่อนอยู่สามารถถูกเลียนแบบเพื่อสะท้อนภูมิภาคทางภูมิศาสตร์หรือ OS ใดๆ
- อัลกอริธึมการปลอมแปลงข้อความใน Canvas: FlashID เปลี่ยนแปลงความกว้างของข้อความและค่าฟอนต์สไตล์สำรองอย่างแม่นยำในระหว่างการเรนเดอร์ Canvas เพื่อจำลองฟอนต์ลิสต์เฉพาะ — แม้ในโปรไฟล์ที่ไม่มีหัวหรือได้รับการป้องกัน
- การควบคุม
document.fonts
:
- ลายเซ็น
FontFaceSet
ที่จำลอง - การควบคุมค่าที่ส่งคืนจาก
check()
- การเลียนแบบเวลาการโหลดฟอนต์ / ความล่าช้า
- การทำให้ชื่อฟอนต์ไม่ชัดเจน: FlashID อาจเปลี่ยนชื่อฟอนต์ระบบ (เช่น “Arial” เป็น “Calibri”) เพื่อหลีกเลี่ยงการจับคู่ที่แน่นอนในขณะที่ยังคงให้การกระจายและพฤติกรรมการเรนเดอร์ที่สมจริง
- การเลียนแบบฟอนต์ข้าม OS: FlashID อนุญาตให้ฟอนต์ลิสต์ที่เลียนแบบระบบปฏิบัติการอื่น ช่วยในการทำลายความสัมพันธ์ระหว่างแพลตฟอร์มและฟอนต์
- การสุ่มลำดับฟอนต์: ลำดับการค้นหาฟอนต์จะถูกสุ่มต่อแต่ละอินสแตนซ์ของเบราว์เซอร์เพื่อหลีกเลี่ยงการระบุตัวตนทางสถิติผ่านการจัดเรียงหรือรูปแบบการเข้าถึง
- การป้องกันการวาด glyph ไม่มี: แพลตฟอร์มบางแห่งตรวจจับการทำงานอัตโนมัติในเบราว์เซอร์ที่ใช้งานอยู่โดยสังเกตว่าการวาด glyph เกิดขึ้นในโหมดพื้นหลังหรือไม่ FlashID จำลองพฤติกรรมการวาดที่ถูกต้องและสิทธิ์ฟอนต์แบบสด
โดยการเสนอการควบคุมเต็มรูปแบบของพื้นผิวฟอนต์ลายนิ้วมือ FlashID รับประกันว่าโปรไฟล์เบราว์เซอร์จะปลอดภัยจากการระบุตัวตนที่รวมกันซึ่งเกิดจากการวิเคราะห์ฟอนต์แบบพาสซีฟและโมเดลการร่วมมือในแบ็คเอนด์
คุณอาจชอบ