Canvas, WebGL e áudio: como estas saídas contribuem para a impressão digital do navegador

Canvas, WebGL e áudio: como estas saídas contribuem para a impressão digital do navegador

Canvas, WebGL e Web Audio podem revelar diferenças entre navegadores sem cookies. Descobre como os sinais são recolhidos, o que as proteções mudam e quais são os seus limites.

Segurança e privacidade
Browser.lol
17.05.2026
20 min de leitura
Partilhar

Apagar cookies remove um identificador guardado. Por si só, não impede um site de pedir ao navegador que desenhe uma imagem, indique uma capacidade gráfica ou processe um sinal de áudio. Os valores obtidos podem ajudar a relacionar visitas, mas não são identificadores universais nem provam que o site reconheceu uma pessoa concreta.

Canvas, WebGL e Web Audio são três fontes de sinais do navegador. As saídas gráficas e de áudio podem refletir software, tipos de letra, definições, controladores e hardware. Alguns valores podem manter-se semelhantes após reiniciar; outros mudam com atualizações ou proteções de privacidade. Um observador pode combiná-los com uma conta ou um endereço de rede. Este guia explica as técnicas e porque nenhum resultado isolado demonstra identidade ou anonimato.

Uma impressão digital do navegador é calculada a partir de características observáveis, em vez de ser lida de um único ficheiro. Um script pode resumir o resultado de um desenho ou de um processamento de áudio sem reprodução e compará-lo com observações posteriores. Valores iguais não significam necessariamente a mesma pessoa; valores diferentes também não significam necessariamente pessoas distintas. Para uma visão geral, lê a nossa introdução à impressão digital do navegador. Aqui examinamos três API do navegador mais de perto.

Porque examinar estes três sinais

Uma impressão digital pode incluir cabeçalhos dos pedidos, dimensões do ecrã, idioma, fuso horário, funções do navegador e muitas outras observações. O que um script consegue recolher depende de permissões, definições e proteções. A utilidade de cada sinal também depende do grupo comparado. Atribuir um número fixo de sinais ou de bits a cada campo sugeriria uma precisão que os dados não permitem.

Canvas e WebGL podem desenhar conteúdo escolhido; um contexto de áudio offline pode processar um sinal sem o reproduzir. Um script pode comparar a saída ou calcular o seu resumo. O modo de desenhar os tipos de letra, a implementação do navegador, o sistema gráfico, as versões do software e o hardware podem influenciar o resultado. A mesma máquina pode apresentar valores diferentes depois de uma atualização ou com outras definições; máquinas diferentes podem apresentar valores iguais. As orientações do W3Cexplicam os limites gerais destes sinais.

A investigação mostra que os sinais gráficos e de áudio podem ajudar a distinguir navegadores, mas a quantidade de informação varia com a amostra, a versão do navegador e as suas proteções. Os três sinais também estão correlacionados: não se pode simplesmente somar a informação que fornecem. Aanálise do projeto Tordescreve estas técnicas e a ausência de uma defesa perfeita. Interpreta qualquer pontuação no contexto do método e dos visitantes do teste, nunca como probabilidade universal de reconhecimento.

A impressão digital com Canvas

Janela de navegador com uma área Canvas hexagonal assinalada por pontos de medição e retângulos abaixo a representar o resumo calculado

Um script pode desenhar formas e texto num<canvas> fora do ecrã, ler os píxeis ou chamar toDataURL() e comparar ou resumir o resultado. A página não precisa de mostrar a imagem. Os tipos de letra, o modo de apresentação do navegador, as definições gráficas e as proteções podem alterar a saída. O resumo facilita a comparação; não é um identificador atribuído pelo dispositivo.

Repetir um desenho idêntico nas mesmas condições pode produzir os mesmos píxeis, mas a estabilidade não é garantida entre versões do navegador, modos de privacidade, atualizações ou sites. Um resultado diferente pode impedir uma associação simples; um resultado igual pode ser partilhado por muitos visitantes. Por isso, um sistema pode combinar Canvas com outras observações em vez de depender de um único valor.

Uma leitura simplificada pode ser assim:

const c = document.createElement("canvas");
const ctx = c.getContext("2d");
ctx.textBaseline = "alphabetic";
ctx.font = "14px 'Arial'";
ctx.fillStyle = "#069";
ctx.fillText("Cwm fjordbank glyphs vext quiz, ", 2, 15);
ctx.fillStyle = "rgba(102,204,0,0.7)";
ctx.fillText("Cwm fjordbank glyphs vext quiz, ", 4, 17);
const png = c.toDataURL();
// Um site pode comparar ou resumir png; não é um identificador universal.

O exemplo ilustra uma API, não a implementação de um fornecedor específico. Os navegadores podem reduzir a utilidade da leitura: o Brave descreve alterações por site e por sessãoem algumas saídas de Canvas e áudio, enquanto oWebKit descreve a introdução de ruído na navegação privada. Definições do navegador ou bloqueadores de terceiros também podem travar um script. Uma proteção personalizada pode alterar o comportamento observável; testa os sites e as definições que usas realmente.

A impressão digital com WebGL

Janela de navegador com uma malha de triângulos finos ligados e um pequeno ícone de chip num canto

O WebGL permite a uma página pedir operações gráficas através do navegador; não concede acesso ilimitado à GPU. Quando disponível, a extensão WEBGL_debug_renderer_infopode revelar informações sobre o fabricante e o sistema de desenho. Uma implementação pode, por exemplo, indicar ANGLE e o modelo de GPU. A documentação da MDNassinala que as definições de privacidade podem restringir esta extensão. O detalhe e a capacidade de distinguir visitantes dependem do navegador e do dispositivo.

Mesmo sem essa extensão, um script pode desenhar uma cena escolhida e ler os píxeis com readPixels(). O comportamento dos programas gráficos, a precisão, o software e o hardware podem influenciar a imagem. É possível resumir o resultado, mas as proteções do navegador podem alterar ou bloquear a leitura, e dispositivos diferentes podem produzir a mesma saída. As informações do sistema gráfico e os píxeis são sinais distintos, não provas de uma GPU ou pessoa única.

Limitar as informações gráficas ou a leitura dos píxeis pode reduzir a exposição sem remover o WebGL. Desativá-lo por completo pode prejudicar sites que precisam de gráficos 3D e outras funções aceleradas. O Firefox oferece a preferência webgl.disabled, e a sua resistência à identificação por impressão digital desativa a extensão de informações gráficas. O Brave também documentou proteções mais recentes para a GPU. Confirma a disponibilidade e o comportamento exato na versão e no modo de proteção que utilizas.

A impressão digital com AudioContext

Janela de navegador com uma onda num eixo horizontal e retângulos abaixo a representar um valor calculado

Um script pode criar um OfflineAudioContext, processar um sinal escolhido num circuito de áudio e examinar o conjunto de amostras resultante. Esse circuito pode incluir um oscilador e um compressor. O processamento offline cria um conjunto de dados em vez de enviar som para as colunas; o site compara as amostras, não aquilo que alguém ouve. Consulta adocumentação de OfflineAudioContext.

Implementações e definições diferentes podem produzir amostras diferentes para o mesmo circuito. Um script pode comparar alguns valores ou resumir o conjunto de amostras, mas as diferenças não são garantidas e sistemas diferentes podem produzir valores iguais. As proteções do navegador também podem alterar a saída. É um sinal possível, não um número de série permanente do hardware.

O áudio pode acrescentar informação à comparação, mas não há um número universal de bits que lhe corresponda. A saída pode estar correlacionada com características do navegador ou da plataforma já visíveis em Canvas e WebGL. Há proteções: o Brave documenta alterações à saída de Web Audio, e o WebKit descreve ruído na navegação privada. Resultados coincidentes de áudio e Canvas podem reforçar uma hipótese num grupo específico; não provam que duas visitas sejam da mesma pessoa.

Comparar os três métodos

Cada API expõe um tipo de informação. O que um site consegue ler e a estabilidade do resultado dependem do navegador e das suas definições.

SinalO que pode ser observadoO que o pode alterarProteções disponíveisLimitaçãoO que verificar no navegador
CanvasPíxeis de texto e formas escolhidosTipos de letra, modo de apresentação, versão, modo privadoBloqueio de scripts, controlo da leitura, ruído na saídaO bloqueio pode afetar ferramentas de desenho legítimasCompara os modos normal e privado
WebGLInformações gráficas ou píxeis 3D escolhidosCircuito da GPU, controladores, regras do navegador, atualizaçõesLimitar detalhes ou leitura de píxeis; desativar a APIA desativação pode prejudicar funções gráficasTesta a extensão e a leitura de píxeis
AudioContextAmostras de um processamento de áudio offlineMotor do navegador, definições de processamento, proteçõesRuído na saída, limites da API, bloqueio de scriptsUm bloqueio amplo pode afetar funções de áudio da WebTesta a versão e o nível de segurança reais

Uma proteção pode alterar os valores observáveis, e uma combinação invulgar pode, por vezes, destacar-se. Isso depende do grupo comparado e dos restantes sinais do navegador. Várias leituras da mesma base de software não são provas independentes, pelo que somar estimativas de entropia seria enganador. Avalia o conjunto dos sinais expostos e os sites de que precisas.

Como o Tor Browser trata estas API

O Tor Browser procura tornar os utilizadores mais difíceis de distinguir, com proteções que dependem da versão, plataforma e nível de segurança. Já usou pedidos de confirmação antes da leitura de Canvas e restrições de WebGL, entre outras medidas. O comportamento antigo não descreve necessariamente todas as instalações atuais. Aanálise do projeto Torexplica a abordagem e alerta contra a ideia de uma uniformidade perfeita das impressões digitais.

A proteção do áudio também mudou ao longo do tempo. Versões antigas do Tor Browser desativavam Web Audio devido ao risco de identificação; o Tor Browser 14 voltou a ativar essas API. A nota dessa versão não demonstra que o navegador atual revele uma assinatura de áudio única. Para chegar a essa conclusão, seria necessário indicar a versão exata, o sistema operativo, o nível de segurança e a operação de áudio testada.

Os níveis de segurança do Tor também controlam as funções que uma página pode executar. No nível mais seguro, JavaScript vem desativado por defeito, pelo que um script comum para sondar Canvas, WebGL ou áudio pode nem sequer correr. Estas restrições podem afetar os sites. Consulta oguia atual dos níveis de segurançae testa a configuração concreta, em vez de fazer afirmações absolutas sobre uma API.

O que muda com as proteções disponíveis

Estas saídas refletem software e definições, além do hardware. Cada proteção atua num limite diferente; nenhuma garante anonimato por si só.

Usar outro dispositivo

Outro dispositivo pode produzir saídas gráficas ou de áudio diferentes, mas valores iguais continuam a ser possíveis. Os sites também podem relacionar atividades por contas ou pelos dados que introduzes. Separar dispositivos pode ser útil perante um risco específico; comprar hardware diferente não é uma solução geral para o seguimento na Web.

Iniciar outro sistema operativo

Outro sistema operativo pode alterar tipos de letra, controladores e o estado do navegador, embora não tenha de mudar todos os valores testados. O Tails é um exemplo de ambiente pensado para este fim, com as suas próprias regras de rede e de navegação. Deve ser avaliado no seu conjunto, não apenas por três resultados. Alternar entre sistemas também tem custos práticos e de compatibilidade.

Usar um navegador remoto em contentor

Com o Browser.lol, o código da página corre numa sessão remota, em vez de correr diretamente no teu navegador local. O site pode, portanto, ver sinais diferentes de navegador, gráficos, tipos de letra e áudio. As sessões remotas podem partilhar uma imagem ou infraestrutura, e os perfis guardados podem conservar o estado do navegador. Uma nova sessão não garante valores novos para as três API nem impede um site de relacionar visitas por uma conta, dados de rede ou outras observações. Confirma a sessão e a configuração da saída.

Instalar uma extensão que altere a saída, com reservas

Algumas extensões modificam a leitura de Canvas ou WebGL, bloqueiam scripts ou limitam o acesso às API. O efeito depende da versão e das definições da extensão; uma combinação personalizada também pode ser observável. Proteções integradas, como as alterações do Brave ou o ruído na navegação privada do Safari, são outras abordagens. Testa os sites importantes e trata cada proteção como uma parte de um conjunto mais amplo.

FAQ

Posso desligar o canvas no Chrome?

O Chrome não oferece uma definição simples para desativar todas as operações Canvas sem afetar o funcionamento normal das páginas. Uma extensão pode bloquear ou alterar toDataURL(), mas ferramentas de desenho e outros sites podem depender de Canvas. As proteções do navegador, o bloqueio de scripts e um ambiente separado têm vantagens e limitações diferentes. Testa os sites de que precisas.

Uma VPN muda a impressão digital do meu navegador?

Uma VPN no teu dispositivo altera o percurso da rede e, normalmente, o IP visto por um site que visitas localmente. Por si só, não muda a implementação local de Canvas, WebGL ou áudio. Outros sinais e definições do navegador podem mudar independentemente. Se usares um navegador remoto, a VPN altera o caminho até ao serviço, não a saída do navegador remoto para os sites.

Porque muda o resultado depois de uma atualização do Windows?

Uma atualização pode mudar o navegador, o controlador gráfico, os tipos de letra ou o modo de apresentação e, assim, alterar um resultado. Também pode deixar alguns resultados iguais. Nenhum dos casos prova se um site consegue relacionar as tuas visitas: contas, cookies, endereços IP e outros sinais podem continuar a criar ligações. Compara o mesmo teste antes e depois se quiseres perceber uma configuração concreta.

Estas impressões digitais são únicas por si só?

Não necessariamente. Muitos navegadores podem partilhar um valor, que também pode mudar entre medições. Combinar sinais pode melhorar a distinção numa amostra, mas causas comuns tornam os valores dependentes. Não se deve presumir o seu poder de identificação nem somar números de bits de títulos de estudos. Um teste é relativo à população e ao método usados, não uma prova universal de identidade.

A navegação privada ajuda contra estes sinais?

A navegação privada limita o histórico e os dados locais após fechares a janela. Alguns navegadores também reforçam as proteções contra a impressão digital nesse modo, pelo que a saída das API pode diferir da de uma janela normal. Isso não garante que todos os sinais fiquem ocultos ou que um site não possa relacionar visitas por uma conta. Confirma as proteções atuais do navegador e dos sites que usas.

O que deves reter

Canvas, WebGL e Web Audio podem fornecer informações sem que os sites precisem de cookies. As saídas dependem de uma combinação de software, definições, tipos de letra, controladores e hardware. A utilidade para relacionar visitas varia de grupo para grupo e evolui com as proteções dos navegadores. Navegação privada, proteções integradas, bloqueio de scripts e ferramentas de rede tratam riscos diferentes.

Começa por manter o navegador atualizado e usar os controlos de privacidade documentados. Para uma tarefa que beneficie de executar páginas longe do teu dispositivo, um navegador remoto muda esse limite, mas traz questões próprias de perfis, rede e confiança no serviço. Compara a configuração exata que vais usar, incluindo o nível de segurança e o estado guardado. Um valor diferente não prova que as visitas não possam ser relacionadas; um valor igual não prova que vieram da mesma pessoa.

Precisas de uma sessão isolada para a próxima tarefa?

Abre um navegador de computador isolado e começa diretamente no teu navegador.

Começar uma sessão

Sem instalar outro navegador • Funcionalidades conforme o plano

Útil para investigação e testes
Navegador de computador transmitido para o teu dispositivo
Começa em poucos passos

Últimos artigos

Todos os artigos