PowerScan
AR

سلاسل مصيِّر WebGL وإشارات العتاد: كم تقول بطاقتك الرسومية عنك

بصمات المتصفح · القراءة: 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). هذا السطر الواحد يعطي مورّد معالج الرسوميات، والطراز الدقيق، ومعرّف جهازه على PCI، وواجهة الرسوميات، ونموذج المظلّل، وهو أيضاً تلميح قوي إلى نظام التشغيل، لأن هذه السلسلة لا توجد إلا على Windows.

أخفى Firefox وSafari هذه السلسلة أو عمّماها في أوقات مختلفة؛ أما Chromium فيكشفها. المتصفح الذي يخفيها يعيد قيمة عامة، وتُظهر أداة التشخيص «معلومات المصيِّر مقنَّعة» بدل أن تخمّن.

الأعداد والأحجام

يعيد navigator.hardwareConcurrency عدد مسارات المعالج المنطقية. ويعيد navigator.deviceMemory مقداراً تقريبياً من الذاكرة، مقرَّباً إلى مجموعة صغيرة من القيم ومحدداً بسقف 8 في Chromium، فجهاز بـ 32 GB يبلّغ 8. ويعطي screen.width وscreen.height حجم الشاشة، وينقص availWidth وavailHeight شريط المهام، ويكشف devicePixelRatio التحجيم. وscreen.colorDepth هو 24 دائماً تقريباً. ويفرّق navigator.maxTouchPoints أجهزة اللمس عن سائر الأجهزة.

لبعضها قدرة تعريفية عالية بشكل غير معتاد قياساً بمدى براءتها الظاهرة. عدد المسارات له قيم شائعة قليلة، لكنه من الحقول التي تعطيها خدمة بصمات تجارية معروفة وزناً كبيراً، تحديداً لأنه رخيص وثابت. وحجم الشاشة مع نسبة البكسلات والارتفاع المتاح يحصر الجهاز أكثر مما يفعل وكيل المستخدم.

أجهزة الوسائط

يعيد navigator.mediaDevices.enumerateDevices() الكاميرات والميكروفونات ومكبرات الصوت الموجودة في النظام. وبدون إذن، تعيد المتصفحات الحديثة الأنواع والأعداد مع تسميات فارغة، فتعرف الصفحة «كاميرا واحدة، وميكروفون واحد، ومخرج واحد» ولا شيء غير ذلك. ومنح الوصول لأي موقع يكشف التسميات. وأداة التشخيص التي تعرض الأعداد فقط تتصرف كما تتصرف صفحة بلا إذن.

زاوية الاتساق مرة أخرى

إشارات العتاد هي الموضع الذي يخطئ فيه التزييف أكثر من غيره. ملف شخصي يدّعي أنه MacBook بمصيِّر NVIDIA عبر Direct3D و24 مساراً وشاشة 1366×768 يصف جهازاً غير موجود. لا تحتاج المواقع قاعدة بيانات لتلاحظ ذلك؛ بضع قواعد تكفي. وإن غيّر ملف شخصي أياً من هذه القيم، فعليه أن يغيّرها كلها إلى تركيبة يُشحن بها جهاز حقيقي فعلاً، وأن يُبقيها كذلك عبر الزيارات.

ما الذي تفحصه

اقرأ سلسلة المصيِّر واسأل هل تطابق نظام التشغيل في وكيل المستخدم. اقرأ حجم الشاشة واسأل هل يطابق نسبة البكسلات والارتفاع المتاح. اقرأ عدد المسارات والذاكرة واسأل هل الزوج معقول لمعالج الرسوميات ذاك. تعرض أداة التشخيص هذه القيم متجاورة لهذا الغرض بالذات؛ والحكم لك.

جميع المقالات · شغّل الفحص