← Înapoi la blog

Ce este amprenta AudioContext? Cum identifică audio mediul browserului

Concluzia principală: amprenta audio nu atinge microfonul și nu redă niciun sunet; browserul randează în tăcere, în memorie, un fragment audio fix, iar miciile diferențe de virgulă mobilă din rezultat devin semnătura dispozitivului. Face parte, alături de Canvas și WebGL, din familia amprentelor bazate pe rezultatul randării: schimbarea IP-ului nu o afectează, golirea memoriei cache la fel de puțin, iar valoarea este decisă de dispozitiv și de motorul browserului. Pentru gestionarea mai multor conturi, evaluarea se reduce la două reguli: valoarea trebuie să rămână stabilă în timp în același mediu, iar medii diferite trebuie să aibă valori diferite. Setarea AudioContext din MostMate vine cu două niveluri, Realist și Aleatoriu, iar alegerea se face chiar după aceste două reguli.

"Dau jos boxele, refuz permisiunea de microfon, și partea audio a site-ului rămâne fără putere" — aceasta este una dintre cele mai răspândite greșeli despre amprenta audio. Realitatea e exact invers: pe parcursul întregului test nu intră și nu iese niciun sunet. În 2016, echipa de la Universitatea Princeton a inclus-o oficial în măsurătoarea pe un milion de site-uri, iar de atunci a devenit element standard în scripturile consacrate de detecție: zero permisiuni, executată în milisecunde și funcțională și în modul incognito. MostMate este un browser antidetect care pregătește câte un mediu de navigare separat pentru fiecare cont, iar amprenta audio este unul dintre parametrii pe care astfel de produse trebuie să îi gestioneze. Articolul de față strânge subiectul în patru întrebări: ce vede site-ul, de ce este stabil acest număr, cum se aliniază cu ceilalți parametri și cum se configurează într-un browser antidetect.

Ce vede site-ul: un audio niciodată redat, care revine sub forma unui număr

Rezultatul final care ajunge la site este un număr în virgulă mobilă: nici sunet, nici model de dispozitiv. Scripturile consacrate de detecție (reprezentate de implementarea FingerprintJS, preluată de multe biblioteci open source) urmează întotdeauna cinci pași:

  • Creează un context audio offline (OfflineAudioContext, documentația MDN): un singur canal, frecvență de eșantionare de 44100 Hz, aproximativ 5000 de eșantioane — adică vreo 113 de milisecunde de audio — fără să treacă niciodată prin difuzoare.
  • Generează cu un oscilator o undă triangulară fixă de 10000 Hz, ca semnal de intrare identic pentru toți.
  • Trimit semnalul printr-un compresor dinamic (DynamicsCompressorNode) cu setări destul de agresive (prag de -50 dB, genunchi 40, raport de compresie 12), împingând deliberat calculele în zona neliniară pentru a amplifica diferențele subtile dintre dispozitive.
  • Apelează startRendering pentru randarea silențioasă în memorie; din această etapă nu rezultă niciun sunet audibil.
  • Iau ultimele aproximativ 500 de eșantioane din bufferul de ieșire, le însumează valorile absolute și obțin un număr precum 124.0434.

Acest număr este amprenta audio. Calculul are loc înainte de orice redare, deci sistemul pe mut sau lipsa boxelor nu schimbă nimic; cum nici nu atinge dispozitivele de înregistrare, permisiunea de microfon nici nu intră în discuție. În prezentările generale ale amprentelor de browser, parametrul acesta primește de obicei un rând; motivul pentru care merită un articol întreg stă în originea neobișnuită a valorii: valoarea vine dintr-o eroare de calcul, iar eroarea este, tocmai, stabilă — subiectul secțiunii următoare.

Amprenta audio în pagina de rezultate a Iphey

Site-urile de test afișează de regulă un șir hexazecimal, rezultatul hash al acestei valori brute, cu lungimi diferite de la un site la altul; la comparație, se verifică doar dacă „același mediu rămâne stabil, iar medii diferite dau rezultate diferite", fără a te atașa de formatul șirului.

De ce un număr poate servi drept amprentă: eroarea este, tocmai, stabilă

Mecanismul esențial arată așa: operațiile audio nu dau rezultate identice bit cu bit pe dispozitive diferite, iar această diferență este reproductibilă. Specificația Web Audio definește doar fluxul de procesare și nu cere tuturor implementărilor rezultate identice la nivel de cifră; precizia în virgulă mobilă diferă de la un procesor la altul, iar modul în care fiecare motor de browser implementează stiva audio variază ușor în rotunjiri și ordinea operațiilor. Diferența unei singure operații e neglijabilă, însă semnalul trece repetat prin compresor în regim neliniar, apoi se însumează pe sute de eșantioane, iar diferența minusculă se amplifică treptat până devine o valoare distinctivă.

Studiul de la Princeton a măsurat și amploarea: dintre peste optsprezece mii de dispozitive, amprenta audio s-a concentrat în peste șapte sute de valori diferite, adică aproximativ 5.4 biți de distincție — cu un eșantion limitat, e doar un prag minim. Pentru detecția asocierilor, această ordine de mărime ajunge, pentru că valoarea reală nu stă în „cât de unic este numărul", ci în „cât de stabil este": pe același dispozitiv, o sută de reîmprospătări la rând nu mișcă rezultatul cu un fir; schimbă calculatorul sau motorul browserului, și valoarea se schimbă pe dată. Un semnal care nu cere permisiuni, nu poate fi șters și nu se schimbă la reîncărcare este exact materia primă preferată a platformelor când construiesc profiluri de dispozitiv.

Cum se aliniază cu ceilalți parametri: trei principii de consistență

Amprenta audio nu are nicio legătură cu IP-ul: este un semnal exclusiv din partea dispozitivului și, alături de Canvas și WebGL, aparține parametrilor de tip rezultat de randare — site-ul predă browserului o sarcină de calcul fixă și așteaptă ca dispozitivul real să o rezolve pe loc. Pentru a judeca dacă un mediu e bine configurat, aplică trei verificări:

  • Stabil în același mediu: rezultatul randării trebuie să fie identic la fiecare execuție în același mediu; este condiția prealabilă pentru a părea „un dispozitiv normal". O valoare care se schimbă din senin arată doar că cineva a modificat parametrul — și, paradoxal, creează suspiciune.
  • Diferit între medii: zece medii care raportează aceeași valoare audio înseamnă a-ți desena singur un cerc pe harta asocierilor. Viceversa, „să aduci fiecare parametru la notă maximă" e la fel de greșit; riscurile randomizării sunt analizate în detaliu în articolul de ce randomizarea amprentei nu este sigură.
  • Potrivit cu motorul browserului: stiva audio este implementată de motorul browserului, iar valoarea urmărește motorul și versiunea. UA-ul și sistemul declarate de mediu trebuie să se potrivească cu motorul real; după o actualizare majoră a browserului, valoarea se reînnoiește de la sine, fără intervenție manuală.

Cele trei principii se strâng într-o frază: amprenta audio trebuie să arate „cum ar arăta un dispozitiv real", nu „cât mai bine". MostMate a transpus această logică în patru principii de design; articolul despre cele patru principii de design le acoperă pe toate, aici rămânem doar la componenta audio.

Cum îți verifici amprenta audio: două comparații îți arată totul

Pentru test nu ai nevoie de nicio extensie: un site de verificare și două reîmprospătări de pagină sunt de ajuns.

Pasul 1: alege orice site de verificare și găsește rubrica amprentei audio. BrowserScan și Iphey o afișează separat; despre cum se citește scorul de încredere Iphey, articolul practic descrie traseul complet și se combină bine cu materialul testul Iphey pas cu pas.

Pasul 2: reîmprospătează pagina de două-trei ori în același mediu și urmărește valoarea. Un număr neschimbător este nota de trecere; dacă se modifică la fiecare reîmprospătare, parametrul audio al mediului respectiv e pus pe regenerare la fiecare vizită — echivalentul unui anunț către platforme că „acest dispozitiv este manipulat".

Pasul 3: testază într-un alt mediu și compară cele două valori. Medii diferite trebuie să afișeze valori audio diferite; dacă sunt identice, verifică înapoi dacă nu ai refolosit același șablon de amprentă — refolosirea șabloanelor este cea mai discretă sursă de asociere între conturi.

Compararea rezultatelor de test din medii diferite

Cum se configurează în MostMate: Realist sau Aleatoriu

În formularul de creare a mediilor din MostMate, AudioContext apare de sine stătător în zona setărilor amprentei, cu cele două niveluri Realist și Aleatoriu, iar panoul de previzualizare din dreapta afișează valoarea curentă în timp real — poți confirma totul înainte de salvare. Alegerea dintre cele două niveluri e simplă: pentru mediul principal de zi cu zi, alege Realist — valoarea vine chiar din calculul mașinii, e stabilă de la natură și se potrivește perfect cu principiul „stabil în același mediu"; când creezi un set de medii dintr-o dată, alege Aleatoriu — fiecare mediu primește o valoare diferită de celelalte și stabilă în interior, respectând principiul „diferit între medii".

Parametrul audio nu oferă un nivel personalizat, iar acest detaliu spune ceva: valoarea amprentei audio stă în stabilitate; un graf fix montat manual anulează tocmai acest avantaj. Când alegi între Realist și Aleatoriu, întrebarea cu adevărat relevantă este cum au fost generate acele medii, nu ajustarea parametru cu parametru; rudele apropiate din aceeași familie — imaginile Canvas, WebGL și ClientRects — se judecă după aceeași logică, iar împărțirea rolurilor întregului mecanism este descrisă complet pe pagina Ce este MostMate.

Zona setărilor amprentei din browserul MostMate

Întrebări frecvente

Amprenta audio cere permisiunea pentru microfon sau difuzoare?

Nu. Tot fragmentul audio este randat offline, în memorie, fără să treacă prin difuzoare și fără să atingă dispozitivele de înregistrare; mașinile pe mut sau fără echipament audio pot fi colectate exact ca oricare altele.

Golirea cookie-urilor sau modul incognito te scapă de amprenta audio?

Nu. Cookie-urile stau pe discul local și pot fi șterse; amprenta audio se calculează în timp real de către dispozitiv. Sunt două mecanisme complet diferite, iar golirea memoriei cache nu are niciun efect asupra ei.

Nu e mai sigur să dezactivezi AudioContext sau să-l fixezi pe o singură valoare?

Direcția e inversă. Marea majoritate a browserelor obișnuite rulează operații audio, așa că atât „dezactivat", cât și „o valoare identică pentru toată lumea" devin, prin ele însele, trăsături care ies în evidență — mai ușor de semnalat decât o valoare obișnuită.

Când se schimbă amprenta audio?

La schimbarea dispozitivului, a motorului browserului sau după o actualizare majoră a browserului — o evoluție firească pentru un dispozitiv real; în utilizarea zilnică a aceluiași mediu, valoarea ar trebui să rămână stabilă mult timp, iar schimbările frecvente sunt, de fapt, semnalul anormal.

În loc de încheiere

Logica amprentei audio încape într-o frază: site-ul îți măsoară dispozitivul fără să redea vreun sunet, bazându-se pe diferențele mici și stabile cu care fiecare mașină calculează. Odată înțeles acest lucru, multe practici des întâlnite își găsesc explicația — de ce tăcerea nu-l oprește, de ce parametrii „la maxim" pot fi periculoși, de ce valorile mediilor create în serie trebuie să difere unele de altele. MostMate adună acești parametri în cele două niveluri, Realist și Aleatoriu, și, cu panoul de previzualizare, arată rezultatul pe loc. Dacă vrei să verifici singur amprenta audio a mediilor tale, poți descărca MostMate și crea două medii în versiunea gratuită pentru a compara valorile — majoritatea zonelor oarbe de înțelegere se lămuresc dintr-o dată.

MOSTMATE

Gestionare sigură a mai multor conturi, fără complicații

Începe cu primul cont și folosește MostMate pentru operațiuni mai sigure, inteligente și eficiente cu mai multe conturi.

  • Profiluri independente. Identități coerente.
  • Automatizare AI · Starea conturilor · Operațiuni în echipă
Descarcă MostMate