PowerScan
AR

بصمة الصوت بلا ميكروفون

بصمات المتصفح · القراءة: 5 دقيقة · بقلم PowerScan

الصورة: Unsplash

«بصمة الصوت» توحي بشيء مسجَّل عبر ميكروفون. وليست كذلك. إنها رقم مشتق من كيفية معالجة جهازك لصوت اصطناعي لا يُشغَّل ولا يُلتقط ولا يغادر التبويب أبداً.

كيف تُصنع

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

تستغرق العملية كلها بضع عشرات من أجزاء الثانية ولا تتطلب إذناً، لأن شيئاً لا يُلتقط. ويُغلَق OfflineAudioContext حين ينتهي السكربت.

لماذا تختلف بين الأجهزة

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

تنوعها أقل من canvas: كثير من الأجهزة بإصدار المتصفح ونظام التشغيل نفسهما تنتج تجزئة الصوت نفسها. وهي مفيدة أساساً إشارة تأكيد ووسيلة لاكتشاف المتصفحات التي تعشوئ ناتجها.

ماذا تفعل المتصفحات

يضيف Brave ضجيجاً إلى قراءات الصوت بالطريقة نفسها التي يفعلها مع canvas. ويعطّل Firefox مع resist-fingerprinting أجزاء من Web Audio API أو يعيد قيماً ثابتة. أما Chromium فلا يغيّر الناتج. والمتصفح الذي يعشوئ التجزئة ينتج قيمة مختلفة عند كل إعادة تحميل، وهو ما تجعله أداة التشخيص مرئياً بمجرد أن تتيح لك إعادة التحميل والمقارنة.

الخصوصية، بدقة

لا يُسجَّل أي صوت. لا يُفتح أي ميكروفون. يوجد المخزن في الذاكرة طوال مدة الحساب ثم يُتخلَّص منه. والشيء الوحيد الذي يمكن أن يغادر التبويب هو التجزئة، وفقط إن اختارت الصفحة إرسالها. وأداة التشخيص التي تحسب التجزئة محلياً وتعرضها لك تقرأ بالضبط ما سيقرؤه متتبِّع، ثم لا تفعل به شيئاً.

قراءة القيمة

أمران يستحقان الفحص. الأول أن التجزئة موجودة أصلاً: «غير متاح» يعني أن الواجهة محجوبة، وبعض المواقع تعدّ ذلك إشارة بحد ذاتها. والثاني أنها ثابتة: أعد التحميل ولا ينبغي أن تتغير القيمة. تجزئة تتغير بين مرات التحميل تخبرك أن المتصفح يحقن ضجيجاً، وهذا يحمي من التتبع عبر المواقع لكنه يعلّم المتصفح أيضاً بأنه ممن يفعلون ذلك.

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