O que são dispositivos de mídia?
A impressão digital de dispositivos de mídia é uma tecnologia que gera um identificador único por meio da detecção e análise dos atributos dos dispositivos de mídia no equipamento do usuário. Esses dispositivos de mídia incluem câmeras, microfones, alto-falantes e outros dispositivos de entrada e saída. Essa tecnologia utiliza pequenas diferenças entre diferentes dispositivos para identificar e rastrear usuários, sendo frequentemente usada em cenários como identificação de usuários e veiculação de anúncios direcionados.
O processo pelo qual um site obtém informações sobre os dispositivos de áudio e vídeo do usuário e gera uma impressão digital do navegador geralmente inclui as seguintes etapas:
Primeira etapa: solicitar autorização do usuário
Antes de usar dispositivos de áudio e vídeo, o site precisa obter a autorização explícita do usuário. Isso geralmente é feito chamando APIs JavaScript do navegador.
Segunda etapa: obter informações dos dispositivos de mídia
Após a autorização do usuário, o site pode acessar as informações dos dispositivos por meio da API WebRTC. Por considerações de proteção de privacidade, as informações dos dispositivos de mídia só podem ser obtidas quando o usuário concede permissão de acesso à página da web. Se o usuário negar a autorização, as informações dos dispositivos retornarão valores vazios.
As informações dos dispositivos incluem principalmente as seguintes categorias:
Tipo de dispositivo: como dispositivos de entrada de áudio (microfone), dispositivos de saída de áudio (alto-falantes ou fones de ouvido) e dispositivos de entrada de vídeo (câmera).
Rótulo do dispositivo: o nome legível do dispositivo. Por exemplo, o rótulo de uma câmera pode ser “Logitech HD Webcam C270”, e o rótulo de um microfone pode ser “Built-in Microphone”.
ID do dispositivo: o identificador único do dispositivo, uma string usada para identificar exclusivamente o dispositivo.
Terceira etapa: gerar a impressão digital do navegador
A impressão digital do navegador é gerada por meio do processamento das informações coletadas dos dispositivos. Existem várias formas de processamento; por exemplo, converter a string de informações do dispositivo em um valor hash por meio de um algoritmo de hash.
É importante observar que a impressão digital de dispositivos de mídia pode mudar em função do comportamento do usuário——trocar de dispositivo, atualizar drivers de dispositivo ou modificar configurações do sistema podem causar alterações na impressão digital, portanto ela não é permanente e imutável.
O que é impressão digital de áudio?
A impressão digital de áudio é uma tecnologia de rastreamento por impressão digital relativamente nova. Seu princípio básico é: devido a pequenas diferenças nas configurações de hardware e software, diferentes dispositivos produzem variações sutis ao reproduzir o mesmo trecho de áudio. Essas diferenças podem ser capturadas e usadas para gerar um identificador único do dispositivo, ou seja, a “impressão digital de áudio”.
Os princípios técnicos envolvidos na tecnologia de impressão digital de áudio incluem principalmente processamento de áudio e análise de sinais; a operação específica geralmente exige o uso de APIs Web do navegador, como a interface AudioContext.
Quando um usuário acessa um site, o site pode obter a impressão digital de áudio do dispositivo do usuário por meio das seguintes etapas:
Primeira etapa: criar um ambiente de áudio virtual
Primeiro, o site precisa criar um ambiente de áudio no navegador para reproduzir e analisar áudio. Tecnicamente, isso é feito criando um objeto AudioContext. O AudioContext faz parte da Web Audio API e fornece uma série de interfaces para processamento de áudio.
Segunda etapa: gerar e reproduzir áudio
Nesse ambiente de áudio virtual, o site cria um OscillatorNode——uma fonte virtual de sinal de áudio. Essa fonte de sinal pode reproduzir sinais de áudio com frequências e formas de onda específicas (como onda senoidal, onda quadrada etc.), mas o usuário não consegue ouvir esses sons. O objetivo do site ao reproduzir o áudio é produzir pequenas diferenças no hardware de áudio do dispositivo, que podem ser usadas para distinguir diferentes dispositivos.
Terceira etapa: capturar dados de áudio
Durante a reprodução do áudio, o site precisa capturar os dados de áudio. Isso é feito criando um objeto AnalyserNode. O AnalyserNode é um analisador de áudio virtual que pode capturar e analisar sinais de áudio.
Quarta etapa: analisar os dados de áudio
O site analisa os dados de áudio capturados e extrai informações que refletem as características do dispositivo. Esta etapa pode envolver alguns cálculos complexos de processamento de sinais e estatística, como calcular a média, a variância, o valor de pico etc. dos dados de áudio.
Quinta etapa: gerar a impressão digital de áudio
Por fim, o site converte as informações extraídas em um identificador único. Esse identificador reflete as características de processamento de áudio do dispositivo do usuário e pode ser considerado a impressão digital de áudio do dispositivo. Esse processo geralmente é realizado por meio de uma função hash, que pode mapear dados de comprimento arbitrário para uma saída de comprimento fixo.
Sexta etapa: usar a impressão digital de áudio
Por meio das etapas acima, o site pode obter a impressão digital de áudio do dispositivo durante a visita do usuário à página, sem que o usuário perceba esse processo. Em seguida, o site pode usar a impressão digital de áudio para rastrear o usuário, por exemplo, associando-a a outros dados de comportamento do usuário para fins como veiculação de anúncios personalizados e prevenção de fraudes online.
Como se proteger contra o rastreamento por impressões digitais de dispositivos de mídia e de áudio?
A tecnologia de impressão digital de dispositivos de mídia gera impressões digitais capturando atributos do dispositivo (como tipo, rótulo e ID). Já a tecnologia de impressão digital de áudio gera impressões digitais com base nas características do dispositivo ao reproduzir áudio.
Para se proteger contra esse tipo de rastreamento por impressão digital, a melhor solução é adotar o “método de substituição”——usar uma ferramenta especializada para gerar uma nova impressão digital que substitua a impressão digital original do dispositivo real. Se você estiver usando um navegador antidetect ou de impressão digital, verifique se a ferramenta oferece opções de configuração para esse tipo de impressão digital.
