ouro.capital
||
pix

mTLS na API PIX: por que a autenticação é mais rígida que APIs bancárias tradicionais

2024-06-12·9 min read·Matheus Feijão

Ponto-chave

O Banco Central exigiu o mTLS (Mutual TLS) na API Pix para forçar uma autenticação bilateral criptográfica. Diferente de APIs antigas baseadas apenas em tokens, o mTLS impede interceptações e garante que pagamentos instantâneos irrevogáveis sejam originados apenas por clientes legítimos.

Mais de 160 milhões de usuários. Cerca de R$ 1,7 trilhão movimentados todos os meses. O Pix engoliu o mercado financeiro brasileiro com uma voracidade que surpreendeu até os técnicos mais otimistas do Banco Central. Quando o dinheiro muda de mãos em três segundos, de forma irrevogável, a segurança não pode ser uma reflexão tardia. Ela precisa ser o alicerce.

Nós acompanhamos a evolução tecnológica do sistema bancário brasileiro nas últimas duas décadas. Vimos a transição dos velhos arquivos remessa CNAB para as APIs RESTful. Vimos o Open Finance engatinhar e, claro, o nascimento do Pix em novembro de 2020. Uma dúvida, porém, continua assombrando desenvolvedores e CTOs que tentam integrar suas plataformas aos bancos: por que a API Pix é tão chata de autenticar?

A resposta curta atende por uma sigla: mTLS, ou Mutual Transport Layer Security.

Se você opera um e-commerce, um gateway de pagamento ou uma fintech emergente, preste atenção aqui. O mTLS não é um capricho do seu banco. É uma exigência regulatória estrita do BACEN, desenhada para impedir que um ataque de interceptação drene o caixa da sua empresa em questão de minutos. Vamos desmontar essa engenharia e entender o que está em jogo.

A Ilusão da Chave de API Tradicional

Antes do Pix, o mercado operava em um modelo de confiança assimétrica. Pense nas APIs de emissão de boletos ou consultas de saldo de cinco anos atrás. O padrão da indústria era o TLS simples combinado com um token de autorização.

Na prática, funcionava assim: seu servidor (cliente) batia na porta da API do banco (servidor). O banco apresentava um certificado SSL/TLS provando que ele era, de fato, o banco. Seu servidor verificava o cadeado verde, abria um túnel criptografado e enviava um cabeçalho HTTP parecido com Authorization: Bearer xyz123.

O problema dessa abordagem? Se um atacante conseguisse roubar esse token xyz123 — seja por um vazamento no GitHub, um log mal configurado ou um ex-funcionário mal-intencionado —, ele poderia fazer requisições de qualquer lugar do mundo fingindo ser a sua empresa. Como a liquidação de um boleto ou TED levava horas (ou dias), havia tempo para bloquear fraudes. O risco era mitigável.

Com o Pix, o cenário virou de cabeça para baixo. O Sistema de Pagamentos Instantâneos (SPI) opera em tempo real, 24/7/365. Uma transferência fraudulenta é liquidada antes mesmo de o seu alerta de monitoramento apitar na tela do Slack. Não há chargeback. O dinheiro sumiu.

O Banco Central sabia disso. Para mitigar o risco de tokens vazados destruírem empresas, o regulador exigiu uma barreira física e criptográfica adicional. O token não bastava mais. O cliente também precisaria provar quem era no momento exato da conexão de rede.

O que é o mTLS (e a exigência do Banco Central)

O mTLS (Mutual Transport Layer Security) resolve o problema da confiança unilateral. Ele transforma a autenticação em uma via de mão dupla.

Imagine a portaria de um prédio corporativo de segurança máxima na Faria Lima. O TLS tradicional funciona como você pedindo para ver o crachá do porteiro antes de entrar. Você tem certeza de que está no prédio certo, mas o porteiro deixa você entrar apenas porque você sussurrou uma senha (o token).

O mTLS é diferente. Você pede o crachá do porteiro, mas antes de abrir a catraca, o porteiro exige ver o seu crachá oficial, emitido pela administração do prédio, com sua foto e assinatura reconhecida em cartório. Sem os dois crachás validados simultaneamente, a porta nem destranca. A comúnicação sequer é estabelecida no nível da rede.

O Manual de Segurança do Pix, atrelado à Resolução BCB nº 1/2020, cravou essa diretriz. Qualquer PSP (Provedor de Serviço de Pagamento) que ofereça uma API Pix para seus clientes corporativos — seja o Itaú, Nubank, Stark Bank, Efí ou Mercado Pago — é obrigado a implementar autenticação mTLS. O banco não pode aceitar conexões de servidores que não apresentem um certificado de cliente válido.

SPI vs. API Pix: Entendendo as Camadas

Aqui entra uma distinção técnica que confunde muita gente. Existem dois níveis de comúnicação no ecossistema Pix:

  1. Comúnicação Banco-BACEN (Rede do SPI): Aqui, os bancos usam certificados digitais ICP-Brasil de altíssimo custo e complexidade, transmitidos por uma rede privada (RSFN). É o núcleo duro do sistema.
  2. Comúnicação Cliente-Banco (API Pix): É a interface que o seu e-commerce usa para falar com o seu banco (PSP). O BACEN não obriga que o seu e-commerce compre um certificado ICP-Brasil caro. O seu banco pode atuar como sua própria Autoridade Certificadora (CA) e emitir um certificado restrito, válido apenas para aquela API específica.

Essa flexibilidade na API Pix democratizou o acesso, mas transferiu para o desenvolvedor do e-commerce a responsabilidade de gerenciar chaves criptográficas.

A Mecânica: CSR, Chaves Privadas e a Burocracia Necessária

Se você já tentou integrar a API de recebimentos Pix de bancos como Banco do Brasil, Bradesco ou fintechs focadas em BaaS (Banking as a Service), sabe que o primeiro passo no painel do desenvolvedor nunca é "gerar token". É "enviar CSR".

CSR significa Certificaté Signing Request (Requisição de Assinatura de Certificado). É aqui que a segurança real acontece.

Nós observamos muitos desenvolvedores juniores travando nesta etapa, procurando botões de download mágico. A arquitetura de segurança não permite isso. A regra de ouro da criptografia é: a chave privada nunca trafega pela rede.

O fluxo correto de integração funciona da seguinte forma:

  1. Geração Local: O time de engenharia da sua empresa usa ferramentas como OpenSSL no próprio servidor para gerar um par de chaves (uma pública e uma privada). O comando clássico openssl req -newkey rsa:2048 cria um arquivo .key (sua chave privada) e um arquivo .csr.
  2. Envio da Requisição: O arquivo .csr contém a sua chave pública e os dados da sua empresa. Você faz o upload apenas desse arquivo no portal do banco.
  3. Assinatura: O banco pega o seu .csr, assina digitalmente com a Autoridade Certificadora interna dele, e devolve um arquivo .pem ou .crt (o seu certificado público aprovado).
  4. Configuração do Servidor: Você pega o arquivo .pem (dado pelo banco) e o arquivo .key (que nunca saiu da sua máquina) e configura no seu código (Node.js, Python, Java) ou no seu proxy reverso (NGINX, Kong) para que eles sejam apresentados a cada requisição HTTP feita para a API Pix.

Se um hacker invadir o banco de dados da sua empresa e roubar apenas o token OAuth, ele não conseguirá disparar requisições Pix. Ele precisaria invadir a infraestrutura de servidores, extrair o arquivo .key e conseguir replicar o ambiente de rede. O grau de dificuldade salta de um simples furto de credenciais para um ataque de infraestrutura complexo.

O Desafio da Rotação de Certificados (A Bomba-Relógio)

A segurança extrema tem um preço: a sobrecarga operacional. Certificados digitais expiram. Geralmente, as APIs dos bancos emitem certificados com validade de 12 meses.

Na nossa análise do mercado de pagamentos brasileiro, a falha na rotação de certificados é a causa número um de quedas no checkout via Pix em grandes varejistas.

Imagine a cena: Black Friday. O e-commerce investiu milhões em mídia. O tráfego explode. O cliente coloca a TV no carrinho, seleciona o Pix e... erro 403 Forbidden. O que aconteceu? O certificado mTLS gerado exatamente um ano antes, na Black Friday passada, expirou às 14h. O banco recusou a conexão. O dinheiro parou de entrar.

Empresas maduras tratam certificados mTLS como infraestrutura crítica. Não basta criar um alerta no Google Calendar do CTO. Equipes de DevOps estruturadas automatizam esse processo usando cofres de chaves como HashiCorp Vault, AWS KMS ou Azure Key Vault.

Algumas fintechs mais modernas, percebendo a dor de cabeça que isso gera para os clientes, começaram a disponibilizar APIs de gestão de certificados. Pouco antes do vencimento, o próprio sistema do cliente pode enviar um novo CSR via API, receber o novo certificado e fazer a rotação em memória, sem intervenção humana (zero downtime).

Comparando com Open Finance e Padrões Globais

O Brasil não está sozinho nessa paranoia justificada com segurança. O uso de mTLS está se consolidando como o padrão-ouro global para finanças abertas e pagamentos instantâneos.

Na Europa, a diretiva PSD2 (Revised Payment Services Directive) obrigou bancos e fintechs a se comúnicarem usando certificados eIDAS (electronic IDentification, Authentication and trust Services). O conceito é exatamente o mesmo: autenticação criptográfica bilateral e irrepudiabilidade.

No próprio Brasil, o ecossistema do Open Finance adotou o padrão FAPI-RW (Financial-grade API Read and Write), que também exige mTLS rigoroso para todas as chamadas de compartilhamento de dados e iniciação de pagamentos entre instituições.

A diferença é que, no Open Finance, a complexidade é restrita às instituições financeiras reguladas. No Pix, o Banco Central empurrou essa arquitetura de segurança até a ponta, atingindo o lojista, a padaria que usa um ERP na nuvem e o e-commerce de bairro.

O que isso significa para o seu negócio

A adoção forçada do mTLS pelo Pix elevou o sarrafo técnico das empresas brasileiras. Já não é possível tratar integrações financeiras como um script amador rodando solto em uma hospedagem barata.

Se a sua empresa depende da API Pix para gerar QR Codes dinâmicos ou, mais críticamente, para fazer pagamentos em lote (como pagar fornecedores ou folha de pagamento), a gestão de chaves é o coração da sua operação.

Nossa recomendação para líderes técnicos é tratar o arquivo .key do Pix com a mesma reverência que se trata a senha do banco de dados de produção. Isole o ambiente de integração. Restrinja os IPs de origem usando firewalls. E, acima de tudo, crie processos automatizados para renovação dos certificados trinta dias antes do vencimento.

O Pix mudou a velocidade do dinheiro no Brasil. A engenharia por trás do mTLS garante que essa velocidade não se transforme em uma arma contra as próprias empresas que dependem dela. A barreira de entrada técnica ficou mais alta, mas o custo de um sistema frágil seria impagável.

Perguntas Frequentes

MF

Matheus Feijão

CEO & Fundador — ouro.capital

Especialista em fintech e criptoativos desde 2002. CEO da ouro.capital.