2

Pitch: Fiz uma ferramenta para inspecionar e tornar QR Codes do Pix mais privados

Durante anos eu colei QR Codes de Pix em sites, páginas de doação e redes sociais sem pensar muito no que havia dentro deles.

Parecia só uma imagem que apontava para minha conta.

Mas um QR Pix estático é, na prática, um payload estruturado que qualquer pessoa pode decodificar sem abrir um aplicativo bancário. Dependendo de como ele foi criado, pode expor informações como chave Pix, nome, cidade e, em alguns casos, email, telefone ou CPF.

Isso me chamou atenção por um motivo: quando publicamos esse QR em um site, essas informações deixam de estar disponíveis apenas para quem pretende fazer uma transferência. Elas podem ser coletadas automaticamente por bots, indexadores ou golpistas.

Foi daí que surgiu o Pix Privado: https://www.pixprivado.org/

A ideia é simples: você envia uma imagem/foto contendo um QR Code Pix, ou cola um codigo Pix Copia e Cola, e a ferramenta decodifica o payload diretamente no navegador, abre a estrutura TLV/EMV e mostra quais informações estão sendo expostas antes mesmo de alguém iniciar um pagamento.

Se você quiser, pode usar a ferramenta tambem para gerar um QR Pix com o mínimo possível de informações pessoais, desde que tenha uma chave aleatória previamente registrada no seu banco.

É importante deixar claro o que o projeto não faz:

  • não cria chaves Pix;
  • não se conecta ao Banco Central;
  • não interfere na transferência;
  • e não torna pagamentos Pix anônimos.

Quando alguém efetivamente inicia um Pix, o banco continua apresentando as informações exigidas pelo sistema, como nome e parte do CPF/CNPJ.

O problema que estou tentando atacar acontece uma etapa antes: o QR Code que fica publicamente exposto e pode ser lido por qualquer pessoa (ou máquina) sem nenhuma intenção de realizar o pagamento.

Além de mostrar o projeto, quero usar este post para explicar como essas informações aparecem dentro de um QR Pix, quais campos realmente representam risco de exposição e quais limitações encontrei ao tentar gerar uma versão mais adequada para uso público.

O projeto é open source, então também adoraria receber críticas sobre a abordagem, casos que eu não tenha considerado e ideias de como melhorar essa camada de privacidade.

Ah, eu escrevi um artigo em ingles bem detalhado sobre o projeto aqui: https://www.psacramento.com/pix-privado-a-practical-tool-for-inspecting-privacy-risks-in-pix-payment-information/

Carregando publicação patrocinada...
1

Como é open source, vale link direto pro repositório: https://github.com/psacramento-gh/PixPrivado

Projeto interessante, mas chave aleatória também não é totalmente "segura", visto que o banco exibe alguns dados para confirmar o destinatário, e depois você pode tentar pesquisar mais coisas com esses dados.

Faz parte, a comodidade de poder compartilhar o telefone ou CPF para receber algum pagamento tem seus contras.

1

Com certeza, Rafael. A chava aleatoria realmente nao eh segura. Mas a ideia do projeto eh minimizar a quantidade de informacoes pessoais expostas ANTES de que um pagamento seja iniciado. Ou seja, remover as informacoes pessoais que aparecem codificadas no proprio QR code.