# Web3 e identidade no Brasil: como CPF se conecta com carteiras descentralizadas

> Explore como o CPF se conecta com carteiras descentralizadas na Web3, os desafios regulatórios e o papel das APIs de validação nessa convergência.

**Publicado:** 20/05/2024
**Autor:** Redação CPFHub.io
**URL:** https://cpfhub.io/blog/web3-e-identidade-no-brasil-cpf-e-carteiras-descentralizadas

---


No Brasil, exchanges de criptomoedas e plataformas DeFi reguladas são obrigadas a implementar KYC com CPF como identificador base. O fluxo padrão: verificar o CPF via API durante o onboarding, armazenar o hash (não o CPF completo) vinculado ao endereço da carteira, e manter registros conforme o Marco Legal das Criptomoedas ([Lei 14.478/2022](https://www.planalto.gov.br/ccivil_03/_ato2019-2022/2022/lei/l14478.htm)) e as normas do Banco Central.

## Introdução

A Web3 promete uma internet descentralizada onde os usuários controlam seus próprios dados, identidades e ativos digitais. No centro dessa visão estão as carteiras descentralizadas (wallets), que funcionam como identidades digitais auto-soberanas -- o usuário possui e controla suas credenciais sem depender de uma autoridade central.

No entanto, o mundo Web3 não opera no vácuo regulatório. No Brasil, a legislação exige que exchanges de criptomoedas, plataformas DeFi com interface regulada e projetos que tokenizam ativos do mundo real implementem processos de KYC (Know Your Customer). E no KYC brasileiro, o CPF é o identificador fundamental.

Essa aparente contradição -- identidade descentralizada que precisa ser conectada a um identificador centralizado -- gera desafios técnicos e conceituais interessantes.

---

## O paradoxo da identidade na Web3

### Identidade auto-soberana vs. regulação

A Web3 defende que o usuário deve ser o único detentor de sua identidade digital. Uma carteira como MetaMask, Phantom ou Trust Wallet é identificada por uma chave pública (endereço hexadecimal) e controlada por uma chave privada que só o proprietário conhece. Não há nome, CPF ou data de nascimento vinculados à carteira.

No entanto, quando essa carteira interage com serviços regulados -- uma exchange brasileira, uma plataforma de tokenização de imóveis, um protocolo de empréstimo que opera sob regulação do Banco Central -- a legislação exige que a pessoa por trás da carteira seja identificada.

### O CPF como ponte entre mundos

O CPF funciona como ponte entre a identidade on-chain (endereço da carteira) e a identidade off-chain (pessoa física registrada no Brasil). Essa ponte é necessária para:

* **Cumprimento regulatório** -- Exchanges brasileiras são obrigadas a identificar seus clientes.
* **Tributação** -- A Receita Federal exige que operações com criptoativos sejam declaradas com CPF.
* **Prevenção à lavagem de dinheiro** -- Normas de PLD/FT exigem identificação em transações acima de determinados valores.
* **Tokenização de ativos reais** -- Imóveis, precatórios e outros ativos tokenizados exigem identificação das partes.

---

## Modelos de conexão entre CPF e carteiras

### Modelo 1: KYC centralizado na exchange

O modelo mais comum atualmente. O usuário cria uma conta na exchange, fornece CPF e documentos, e a exchange vincula internamente o CPF ao endereço da carteira utilizado para depósitos e saques.

A validação de CPF nesse modelo segue o fluxo tradicional de KYC:

```bash
curl -X GET https://api.cpfhub.io/cpf/12345678900 \
 -H "x-api-key: SUA_CHAVE_DE_API" \
 -H "Accept: application/json"
```

```json
{
 "success": true,
 "data": {
 "cpf": "12345678900",
 "name": "Lucas Martins Almeida",
 "nameUpper": "LUCAS MARTINS ALMEIDA",
 "gender": "M",
 "birthDate": "28/01/1995",
 "day": 28,
 "month": 1,
 "year": 1995
 }
}
```

A exchange armazena o vínculo entre o CPF verificado e o endereço da carteira do usuário.

### Modelo 2: credencial verificável (Verifiable Credential)

Nesse modelo mais avançado, o usuário obtém uma credencial digital verificável que atesta que ele possui um CPF válido, sem precisar revelar o número completo do CPF a cada serviço que utiliza.

O fluxo funciona assim:

1. O usuário fornece seu CPF a um emissor de credenciais confiável.
2. O emissor verifica o CPF via API e emite uma credencial verificável.
3. A credencial é armazenada na carteira do usuário.
4. Quando um serviço Web3 exige KYC, o usuário apresenta a credencial sem revelar o CPF diretamente.

### Modelo 3: identidade descentralizada (DID) com atributos de CPF

Padrões como W3C DID (Decentralized Identifiers) permitem criar identidades descentralizadas que podem conter atributos verificáveis, incluindo a confirmação de posse de um CPF válido. Esse modelo está em fase experimental no Brasil, mas representa o futuro da convergência entre identidade descentralizada e regulação.

---

## Desafios técnicos da integração

### Privacidade do CPF em ambientes on-chain

Registrar um CPF diretamente em uma blockchain pública seria uma violação grave de privacidade. Qualquer pessoa poderia consultar o CPF vinculado a uma carteira. As soluções incluem:

* **Zero-Knowledge Proofs (ZKP)** -- Permitem provar que o usuário possui um CPF válido sem revelar o número. A prova criptográfica pode ser verificada on-chain sem expor dados pessoais.

* **Hash do CPF** -- Armazenar apenas o hash do CPF na blockchain. Isso permite verificação sem exposição, mas o CPF pode ser descoberto por força bruta (apenas 11 dígitos numéricos).

* **Armazenamento off-chain** -- Manter o vínculo CPF-carteira em um sistema centralizado e confiável, utilizando a blockchain apenas para registro de atestações.

### Conformidade com a LGPD

A LGPD se aplica a dados pessoais tratados no Brasil, independentemente da tecnologia utilizada. Dados de CPF registrados em blockchain apresentam desafios específicos:

* **Direito ao esquecimento** -- Dados em blockchain são imutáveis, o que conflita com o direito de exclusão previsto na LGPD.

* **Minimização** -- O registro on-chain deve conter o mínimo possível de dados pessoais.

* **Base legal** -- O tratamento de CPF para fins de KYC em operações reguladas pode se apoiar na base legal de cumprimento de obrigação legal.

---

## Implementação prática: KYC para plataforma Web3

```python
import requests
import hashlib

class KYCWeb3:
 """
 Módulo de KYC para plataformas Web3 que precisam
 vincular CPF a endereços de carteiras.
 """

 def __init__(self, api_key: str):
 self.api_key = api_key

 def verificar_e_vincular(self, cpf: str, nome: str, endereco_carteira: str) -> dict:
 """
 Verifica CPF e cria vínculo com endereço de carteira.
 """
 cpf_limpo = ''.join(filter(str.isdigit, cpf))

 # Verificar CPF via API
 url = f'https://api.cpfhub.io/cpf/{cpf_limpo}'
 headers = {
 'x-api-key': self.api_key,
 'Accept': 'application/json'
 }

 response = requests.get(url, headers=headers, timeout=10)
 data = response.json()

 if not data.get('success'):
 return {
 'vinculado': False,
 'motivo': 'CPF não localizado'
 }

 # Verificar consistência do nome
 nome_confere = nome.upper() in data['data']['nameUpper']

 if not nome_confere:
 return {
 'vinculado': False,
 'motivo': 'Nome divergente do CPF'
 }

 # Criar hash do CPF para armazenamento seguro
 cpf_hash = hashlib.sha256(cpf_limpo.encode()).hexdigest()

 # Verificar idade (exchanges exigem 18+)
 idade = self._calcular_idade(data['data']['year'], data['data']['month'], data['data']['day'])

 if idade < 18:
 return {
 'vinculado': False,
 'motivo': 'Titular menor de 18 anos'
 }

 return {
 'vinculado': True,
 'cpf_hash': cpf_hash,
 'endereco_carteira': endereco_carteira,
 'nome_verificado': data['data']['name'],
 'idade': idade,
 'kyc_nivel': 'basico'
 }

 def _calcular_idade(self, ano, mes, dia):
 from datetime import datetime
 hoje = datetime.now()
 idade = hoje.year - ano
 if (hoje.month, hoje.day) < (mes, dia):
 idade -= 1
 return idade

# Exemplo de uso
kyc = KYCWeb3(api_key='SUA_CHAVE_DE_API')
resultado = kyc.verificar_e_vincular(
 cpf='12345678900',
 nome='Lucas Martins Almeida',
 endereco_carteira='0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18'
)
print(resultado)
```

---

## Regulação de criptoativos no Brasil

O Brasil avançou significativamente na regulação de criptoativos nos últimos anos:

* **Marco Legal das Criptomoedas ([Lei 14.478/2022](https://www.planalto.gov.br/ccivil_03/_ato2019-2022/2022/lei/l14478.htm))** -- Estabelece diretrizes para a prestação de serviços de ativos virtuais no Brasil.

* **Instrução Normativa RFB 1.888** -- Obriga a declaração de operações com criptoativos acima de R$ 30 mil mensais.

* **Banco Central como regulador** -- O BC foi designado como regulador das prestadoras de serviços de ativos virtuais.

Todas essas regulamentações convergem para a necessidade de identificação de usuários, e o CPF é o identificador exigido em todas elas.

---

## O futuro: identidade digital nacional e Web3

O Brasil está desenvolvendo iniciativas de identidade digital que podem facilitar a convergência entre CPF e Web3:

* **Carteira de Identidade Nacional (CIN)** -- Nova identidade digital unificada com CPF como número principal.

* **Gov.br** -- Plataforma de identidade digital do governo que pode, no futuro, emitir credenciais verificáveis compatíveis com padrões Web3.

* **Real Digital (Drex)** -- A moeda digital do Banco Central poderá criar pontes nativas entre identidade regulada e transações em ambientes descentralizados.

---

## Perguntas frequentes

### Exchanges de criptomoedas no Brasil são obrigadas a verificar o CPF dos usuários?
Sim. O Marco Legal das Criptomoedas (Lei 14.478/2022) e as normas do Banco Central exigem que prestadoras de serviços de ativos virtuais implementem KYC proporcional ao risco das operações. O CPF é o identificador base para pessoas físicas em todas as operações reguladas. Transações acima de R$ 30 mil mensais também devem ser declaradas à Receita Federal com CPF.

### É seguro armazenar o CPF diretamente vinculado ao endereço da carteira na blockchain?
Não. Dados pessoais em blockchain pública são imutáveis e visíveis a qualquer pessoa — armazenar CPF on-chain é violação grave da LGPD. A alternativa segura é armazenar o hash do CPF (SHA-256) vinculado ao endereço da carteira, em banco de dados off-chain com acesso controlado. A blockchain pode registrar apenas a atestação de KYC realizado, sem o dado pessoal.

### Como o direito de exclusão da LGPD se aplica a dados de CPF em plataformas Web3?
Dados de CPF armazenados off-chain devem seguir as regras normais de exclusão da LGPD. O desafio ocorre com atestações registradas on-chain: como blockchain é imutável, a solução é armazenar apenas provas criptográficas (hashes ou ZKP) que não revelam o CPF — assim a "exclusão" on-chain é desnecessária porque o dado pessoal nunca esteve na cadeia.

### Zero-knowledge proofs podem substituir a validação de CPF via API para compliance Web3?
ZKPs permitem provar que o CPF existe e é válido sem revelá-lo a cada serviço consultado — útil para preservar privacidade em contextos multi-plataforma. Mas a validação inicial ainda precisa ocorrer: uma entidade confiável consulta a API de CPF para emitir a credencial ZKP. A API é a fonte de verdade; ZKP é o mecanismo de apresentação privada dessa verdade.

### Leia também

- [Diferença entre validação de CPF e consulta de CPF: quando usar cada uma](https://cpfhub.io/blog/diferenca-entre-validacao-de-cpf-e-consulta-de-cpf-quando-usar-cada-uma)
- [API de CPF grátis para desenvolvedores: como começar em 5 minutos](https://cpfhub.io/blog/api-cpf-gratis-desenvolvedores-comecar-5-minutos)
- [Onboarding digital em fintechs: como validar CPF em menos de 30 segundos](https://cpfhub.io/blog/onboarding-digital-em-fintechs-como-validar-cpf-em-menos-de-30-segundos)
- [KYC no Brasil: quais setores são obrigados a validar CPF por lei](https://cpfhub.io/blog/kyc-no-brasil-quais-setores-sao-obrigados-a-validar-cpf-por-lei)

---

## Conclusão

A convergência entre CPF e carteiras descentralizadas não é uma contradição -- é uma necessidade prática em um país que regula ativos digitais e exige identificação de participantes do mercado. O CPF funciona como ponte entre a identidade auto-soberana da Web3 e a identidade regulada exigida pela legislação brasileira.

APIs de validação de CPF desempenham um papel essencial nessa ponte, permitindo que plataformas Web3 implementem KYC de forma rápida, automatizada e em conformidade com a regulação. À medida que tecnologias como credenciais verificáveis e zero-knowledge proofs amadurecem, essa integração tende a se tornar mais sofisticada e mais respeitosa com a privacidade do usuário.

Cadastre-se em [cpfhub.io](https://www.cpfhub.io/) — 50 consultas mensais gratuitas, sem cartão de crédito — e comece a construir o KYC da sua plataforma Web3 com validação de CPF em conformidade com a regulação brasileira.

