PowerScan
TH

สตริงตัวเรนเดอร์ WebGL และสัญญาณฮาร์ดแวร์: GPU ของคุณบอกอะไรเกี่ยวกับคุณ

ลายนิ้วมือเบราว์เซอร์ · อ่าน 6 นาที · โดย PowerScan

ภาพ: Unsplash

ฮาร์ดแวร์ที่เบราว์เซอร์ทำงานอยู่รั่วไหลเข้าสู่หน้าเว็บในหลายทางเล็ก ๆ ไม่มีอย่างใดระบุชื่อเครื่อง แต่รวมกันแล้วอธิบายมันได้ใกล้เคียงพอที่จะแยกออกจากเครื่องส่วนใหญ่

สตริงตัวเรนเดอร์

WebGL เปิดเผยส่วนขยายชื่อ WEBGL_debug_renderer_info ที่มีสองค่า คือผู้ผลิตและตัวเรนเดอร์ที่ไม่ถูกปิดบัง บน Windows กับ Chromium ตัวเรนเดอร์มักอ่านได้ประมาณ ANGLE (NVIDIA, NVIDIA GeForce RTX 2060 SUPER (0x00001F06) Direct3D11 vs_5_0 ps_5_0, D3D11) บรรทัดเดียวนั้นให้ผู้ผลิต GPU รุ่นที่แน่นอน รหัสอุปกรณ์ PCI API กราฟิก และโมเดลเชเดอร์ ซึ่งเป็นคำใบ้ที่แรงถึงระบบปฏิบัติการด้วย เพราะสตริงนั้นมีเฉพาะบน Windows

Firefox และ Safari เคยปิดบังหรือทำให้สตริงนี้เป็นกลางในบางช่วง ส่วน Chromium เปิดเผยมัน เบราว์เซอร์ที่ปิดบังมันจะคืนค่ากลาง ๆ และหน้าวินิจฉัยแสดง "ข้อมูลตัวเรนเดอร์ถูกปิดบัง" แทนที่จะเดา

จำนวนและขนาด

navigator.hardwareConcurrency คืนจำนวนเธรด CPU ตรรกะ navigator.deviceMemory คืนปริมาณ RAM โดยประมาณ ปัดเป็นชุดค่าเล็ก ๆ และมีเพดานที่ 8 ใน Chromium เครื่องที่มี 32 GB จึงรายงาน 8 screen.width และ screen.height ให้ขนาดจอแสดงผล availWidth และ availHeight หักแถบงานออก และ devicePixelRatio เผยการปรับขนาด screen.colorDepth เกือบทุกครั้งคือ 24 navigator.maxTouchPoints แยกอุปกรณ์สัมผัสออกจากที่เหลือ

บางค่ามีอำนาจระบุตัวสูงผิดปกติเมื่อเทียบกับความดูไร้พิษภัย จำนวนเธรดมีค่าที่พบบ่อยเพียงหยิบมือ แต่เป็นหนึ่งในฟิลด์ที่บริการลายนิ้วมือเชิงพาณิชย์ที่รู้จักกันดีให้น้ำหนักมาก เพราะมันถูกและเสถียร ขนาดหน้าจอรวมกับอัตราส่วนพิกเซลและความสูงที่ใช้ได้จำกัดเครื่องให้แคบลงมากกว่า User-Agent

อุปกรณ์สื่อ

navigator.mediaDevices.enumerateDevices() คืนกล้อง ไมโครโฟน และลำโพงที่ระบบมี เมื่อไม่มีสิทธิ์ เบราว์เซอร์สมัยใหม่คืนประเภทและจำนวนแต่ป้ายชื่อว่าง หน้าเว็บจึงรู้เพียง "กล้องหนึ่งตัว ไมโครโฟนหนึ่งตัว เอาต์พุตหนึ่งตัว" และไม่มีอะไรมากกว่า การให้สิทธิ์แก่เว็บไซต์ใดเผยป้ายชื่อ หน้าวินิจฉัยที่แสดงเฉพาะจำนวนทำตัวเหมือนหน้าเว็บที่ไม่มีสิทธิ์

มุมของความสอดคล้องอีกครั้ง

สัญญาณฮาร์ดแวร์คือจุดที่การปลอมแปลงผิดพลาดบ่อยที่สุด โปรไฟล์ที่อ้างว่าเป็น MacBook ที่มีตัวเรนเดอร์ NVIDIA Direct3D 24 เธรด และหน้าจอ 1366×768 กำลังอธิบายเครื่องที่ไม่มีอยู่จริง เว็บไซต์ไม่ต้องใช้ฐานข้อมูลก็สังเกตได้ กฎไม่กี่ข้อก็จับได้ หากโปรไฟล์เปลี่ยนค่าใดค่าหนึ่ง มันต้องเปลี่ยนทั้งหมดเป็นการรวมกันที่อุปกรณ์จริงวางจำหน่าย และรักษาไว้เช่นนั้นระหว่างการเข้าชม

สิ่งที่ควรตรวจ

อ่านสตริงตัวเรนเดอร์และถามว่าตรงกับระบบปฏิบัติการใน User-Agent หรือไม่ อ่านขนาดหน้าจอและถามว่าตรงกับอัตราส่วนพิกเซลและความสูงที่ใช้ได้หรือไม่ อ่านจำนวนเธรดและหน่วยความจำและถามว่าคู่นี้สมเหตุสมผลสำหรับ GPU นั้นหรือไม่ หน้าวินิจฉัยวางสิ่งเหล่านี้เคียงกันเพื่อจุดประสงค์นี้โดยเฉพาะ การตัดสินเป็นของคุณ

บทความทั้งหมด · เริ่มการสแกน