Google publica como open source biblioteca de prova de conhecimento zero (ZKP) para verificação de idade
(blog.google)- Em meio à crescente demanda por verificação de idade online, o Google publicou como open source uma biblioteca de ZKP que pode ser usada para garantia de idade
- ZKP permite que usuários comprovem condições como ter 18 anos ou mais sem entregar dados pessoais desnecessários, reduzindo a exposição de informações pessoais na verificação de idade
- O código publicado dá suporte à garantia de idade na UE com base na parceria com a Sparkasse e pode ser usado por desenvolvedores dos setores privado e público na implementação de IDs digitais
- Usuários, empresas e outras organizações dependentes, desenvolvedores e pesquisadores podem aproveitar, respectivamente, um ecossistema mais seguro, soluções open source, uma base de código e implementações de ZKP mais eficientes
- Como o Regulamento eIDAS da UE, previsto para entrar em vigor em 2026, incentiva a integração de tecnologias de proteção reforçada da privacidade à EUDI Wallet, isso também pode influenciar o desenvolvimento de carteiras pelos Estados-membros
Publicação da biblioteca ZKP do Google
- O Google publicou como open source as bibliotecas de Zero-Knowledge Proof (ZKP)
- A publicação cumpre uma promessa anterior e faz parte de um movimento para apoiar a garantia de idade na UE com base na parceria com a Sparkasse
- Essa ferramenta criptográfica pode ser usada por desenvolvedores dos setores privado e público para criar aplicações com proteção reforçada da privacidade e soluções de ID digital
O papel da ZKP na verificação de idade
- ZKP é uma tecnologia que permite provar que um determinado fato é verdadeiro sem trocar outros dados
- Um visitante de um site pode provar de forma verificável que tem 18 anos ou mais sem compartilhar informações adicionais
Participantes visados pelo código publicado
- O Google avalia que o compartilhamento de ZKP beneficia vários participantes do ecossistema
- Usuários da web e de apps podem fazer parte de um ecossistema digital mais seguro e mais centrado na privacidade
- Empresas e outras organizações dependentes, independentemente do porte, podem usar soluções open source para atender a requisitos de proteção da privacidade
- Desenvolvedores podem usar livremente a base de código ZKP para criar aplicações centradas na privacidade
- Pesquisadores podem aproveitar implementações de ZKP mais eficientes e de maior desempenho para criar novas aplicações e formas de uso da tecnologia
Contexto do eIDAS da UE e da EUDI Wallet
- O Regulamento eIDAS da UE, previsto para entrar em vigor em 2026, incentiva os Estados-membros a integrar tecnologias de proteção reforçada da privacidade, como ZKP, à European Digital Identity Wallet, ou EUDI Wallet
- A publicação das ferramentas ZKP do Google pode ser usada pelos Estados-membros para integrar essa tecnologia às futuras EUDI Wallets e acelerar seu desenvolvimento
Acesso ao código
- A base de código ZKP está disponível em google/longfellow-zk
1 comentários
Opiniões no Hacker News
Ainda assim, não quero uma abordagem que bloqueie o acesso apenas com base na idade
Os pais deveriam, no mínimo, poder sobrescrever a idade dos filhos ou permitir exceções seletivamente
Minha experiência com computadores teria sido completamente diferente se metade da internet estivesse bloqueada, especialmente considerando que tipo de conteúdo acaba sendo bloqueado
No YouTube e no TikTok há muito conteúdo bizarro que não é proibido, mas não é saudável, e meus parentes mais novos são fortemente atraídos por isso
Não é preciso identificar quem está usando o dispositivo; a responsabilidade por deixar uma criança usar um dispositivo bloqueado deveria ser dos pais
O dispositivo declara um estado, como maior/menor de 18 anos, e sites ou apps deveriam ser obrigados legalmente apenas a respeitar essa declaração
O dispositivo deveria poder ser controlado pelos pais, e caberia a eles decidir se a restrição de idade se aplica à criança
Também deveria haver perfis, para que, mesmo quando a criança use o celular ou laptop dos pais, ela não estrague os dados deles nem acesse coisas que não deveria ver
Antigamente também era considerado aceitável que os pais alugassem para os filhos um filme classificado como R, com nudez, sexo ou violência; isso era diferente de a locadora alugar diretamente para a criança
Se você julga que seu filho de 16 anos é maduro o bastante para ver pornografia, isso é uma decisão dos pais
Ou parece achar que o principal risco da verificação de idade está simplesmente em “passar por verificação de idade”
Se não houver uma solução segura guiada pelo mercado — anônima, sem vigilância e que prove apenas a idade —, e se o governo não puder monitorar, negar e revogar individualmente, então é exatamente esse tipo de controle que acabará sendo imposto a todos
Não se vence o inimigo só dizendo que não precisamos das algemas que querem colocar em todo mundo
Precisamos adotar provas de conhecimento zero e tecnologias descentralizadas, open source e de alta segurança para resolver problemas reais que parecem pequenos, mas não vão desaparecer, como idade e pornografia
Caso contrário, teremos de “confiar” que políticos fracos, grupos de interesse e estranhos da internet não vão explorar nossa falta de defesa
Com a IA somada a isso, os riscos e danos de ficar passivo aumentam de forma extrema
Você provavelmente, como eu, é um homem mais velho, da geração que pôde vagar livremente por uma internet anterior à comercialização das relações humanas, encontrando coisas e pessoas incríveis e aprendendo em um espaço parecido com a Biblioteca de Alexandria
Mas é preciso perguntar à Geração Z e aos mais jovens, especialmente às meninas, como foi a experiência delas na internet
Você já tentou jogar casualmente online com amigos e foi assediado repetidamente por 3 ou 4 homens adultos?
Quantas vezes ofereceram dinheiro a uma menor de idade em formas como “loot boxes” em troca de fotos nuas?
Em todos os sites que visitava, algoritmos empurravam conteúdo dizendo para aceitar a anorexia, apostar no que Trump diria na TV, usar drogas ou simplesmente se matar?
Nós, a geração dos tios, precisamos parar de sentir nostalgia da nossa experiência infantil com computadores e ouvir as crianças e as pesquisas relacionadas
A internet dos geeks gentis e nerds de ontem não existe mais, e ela precisa mudar se quisermos preservar ao menos um pouco de uma sociedade que funcione
Se visitar sites passar a exigir comprovação governamental individual, o governo poderá negar ou revogar dinamicamente, a qualquer momento, o direito de acesso de uma pessoa a qualquer site que adote verificação de idade
Se sites adultos adotarem esse sistema, ele se espalhará para sites que queiram reduzir responsabilidade
Pode chegar a bancos, serviços empresariais e, no fim, a quase todos os lugares
O governo vai exagerar e ampliar as questões de responsabilidade, mas não aprovará leis que criem um porto seguro para responsabilidades relacionadas à idade
A Wikipedia já está lutando para evitar a adoção de verificação de idade
Verificação de idade administrada pelo governo significa que nem mesmo a Wikipedia poderá ser acessada sem uma permissão governamental individualmente rastreada, controlada e revogável https://www.eff.org/deeplinks/2025/07/we-support-wikimedia-f...
Raramente um argumento de ladeira escorregadia foi tão escorregadio na prática
Não há sequer uma barreira técnica entre acesso sob controle governamental por cidadão a sites claramente adultos e acesso a todos os sites com conteúdo substancial mediante permissão e controle do governo
Será apenas uma curva de adoção pelos sites, e a cada aumento na adoção cresce o alcance da vigilância governamental em tempo real sobre a vida minuto a minuto, além da capacidade de negar o acesso que quiser, a quem quiser, quando quiser
A distopia já chegou, e isso é assustador
A solução que parece necessária é uma comprovação de terceiros que possa ser fornecida por qualquer um que cumpra padrões públicos, limitada apenas à comprovação de idade, e implementada com base em provas de conhecimento zero
Precisamos criar uma alternativa anônima, sem vigilância e que torne impossível a negação individual, para quebrar o impulso de expansão do poder estatal
Se técnicos com consciência de segurança e o mercado não resolverem isso, a versão que destrói a liberdade vencerá, e será difícil voltar atrás
Se sites adultos adotarem o sistema, ele se espalhará para todos os sites que queiram reduzir responsabilidade, e bancos, serviços empresariais e, no fim, quase todos poderão seguir o mesmo caminho
Mesmo com provas de conhecimento zero, no momento em que a comprovação se tornar conveniente e comum, ela se espalhará, e em pouco tempo a única coisa garantida não será apenas a idade
Aqui, a expressão conhecimento zero parece um pouco exagerada
Na prática, está mais perto de dividir o conhecimento e compartilhar com cada parte apenas a parcela relevante
E o Google, no papel de intermediário, parece ter a possibilidade de acessar mais informações do que qualquer uma das partes envolvidas
O Google está apenas compartilhando uma biblioteca que implementa isso, e, assim como o Google não consegue acessar informações bancárias de usuários do Android ou do Gmail, ele também não deverá conseguir acessar essas informações
Por exemplo, em vez da data de nascimento, só se poderia saber “tem mais de 16 anos”
Mas isso é difícil de comprovar, e é difícil confiar que o Google fará assim
Talvez na Estônia algo assim seja possível
Eles escreveram um artigo sobre como fazer verificação de idade de forma totalmente preservadora de privacidade, sem sequer precisar de provas de conhecimento zero
https://magarshak.com/papers/Personal.pdf
Há muitos vieses nesta thread, mas talvez dê para ter uma discussão técnica
Não estou tão aprofundado neste assunto, então seria bom se alguém respondesse
Fico curioso sobre o quanto isso realmente é conhecimento zero
Pelo que entendi, há três partes: eu, o site que quero acessar e o provador (Google ou governo?)
O site sabe quem eu sou?
O site sabe quem é meu provador e, por exemplo, consegue inferir até que esse provador não gosta de memes do Winnie-the-Pooh?
O provador sabe qual site ou que tipo de conteúdo estou tentando ver?
O provador sabe quem eu sou?
Eu sempre consigo saber quem são o site e o provador, e quando essa prova acontece?
Como exemplo típico, digamos que você queira provar idade ≥ n usando uma identidade emitida pelo governo
O site não sabe quem você é
O ponto central é gerar uma prova matemática de que você tem uma identidade governamental válida e que nela consta “idade ≥ n”
O site pode saber quem é o emissor
Como a prova se baseia nas informações nas quais o provador se apoiou, neste caso é preciso saber qual governo emitiu a identidade para que a prova tenha significado
O provador não precisa saber qual é o site nesse processo
Ele só sabe que emitiu a identidade, e não precisa ser consultado novamente depois
É possível, porém, projetar isso de uma forma que exija uma prova de conhecimento zero de uma autorização escrita recente de alguma instituição, mas isso não é a essência das provas de conhecimento zero
Se o usuário sempre consegue saber, isso é uma questão de experiência de usuário
É possível se a carteira e o site forem implementados para sempre mostrar quando e que tipo de credencial está sendo solicitado
Aqui, o provador não é o Google
O Google apenas fornece a infraestrutura para gerar e verificar provas; o correto seria chamar o provador de emissor, ou seja, a instituição confiável que fornece a prova de identidade
Um fluxo possível seria assim
Primeiro, um emissor, como governo, banco ou operadora de celular, emite uma credencial assinada para a minha carteira, por exemplo no celular
Isso pode ser uma identidade digital completa ou uma “prova de idade” mais restrita
Depois, o site solicita ao navegador uma prova de que uma condição como age >= 18 é satisfeita
O site fornece o “zk-program” (circuito) a ser executado e espera uma prova de que o programa foi executado sobre entradas confiáveis, mas não públicas
O celular sabe que há uma credencial válida assinada pelo emissor e gera uma prova de conhecimento zero de que aquele atributo oculto satisfaz a condição
Idealmente, isso é gerado localmente, mas ainda não está pronto
O site verifica a prova usando entradas públicas como a chave pública do emissor, o circuito usado, a condição solicitada e um novo nonce/challenge
Então, só pela prova de conhecimento zero em si, o site não sabe quem eu sou, mas passa a saber quem emitiu meu ID
O site conhece a chave pública do provador, e o provador não sabe quais sites eu visitei
O provador sabe quem eu sou
Se o usuário sabe quem são o site e o provador, e quando a prova ocorre, isso pode variar bastante conforme a experiência de usuário implementada
O site não sabe quem é o usuário
Esse é o objetivo inteiro dessa abordagem
O site sabe quem é o provador
Como precisa fazer verificação criptográfica assimétrica da prova, ele precisa de uma lista de chaves públicas, e é possível associar a identidade do provador a essas chaves
O provador não deveria saber que conteúdo estou tentando ver
Se for JWT, dá para verificar sem informar ao provador a prova de qual usuário está sendo verificada
Mas, se houver uma API do tipo “esta prova foi revogada?”, é possível recriar acidentalmente um canal de informação
O provador sabe quem é o usuário, ou pelo menos tem alguma parte das informações do usuário que vai provar a terceiros
Na prática, é preciso pensar em informações de contas Google, Apple, Microsoft, bancos etc.
Tecnicamente é possível que o usuário sempre saiba o site e o provador, mas, do ponto de vista humano real, isso é duvidoso
Sou funcionário do Google, mas estou longe deste projeto e não tenho conhecimento interno
O sistema pode ser uma prova de conhecimento zero válida, mas os serviços reais ainda podem coletar informações de identificação pessoal dos usuários
Além disso, não há nada que impeça o provador de conspirar com o site que você está tentando acessar para revelar informações sobre você
https://www.youtube.com/watch?v=fOGdb1CTu5c
Esse vídeo explica muito bem
É suspeito que a garantia de idade esteja virando moda exatamente no momento em que agentes de IA estão prestes a conseguir operar computadores pessoais de forma autônoma, como trabalhadores humanos de escritório.
Fico preocupado que a garantia de idade talvez não tenha nada a ver com “crianças”.
Esse problema existe desde que crianças estão on-line.
No início dos anos 2000, tentaram usar cartões de crédito, e obviamente fracassou.
O Reino Unido também tentou, na última década, impedir o acesso de menores a pornografia dessa forma e fracassou.
Ferramentas de IA provavelmente nem estão no radar dos políticos que continuam empurrando esse tipo de coisa.
Essas medidas e outras medidas de violação de privacidade nunca tiveram relação com crianças.
É possível comprovar a idade sem perder a privacidade.
Idade é apenas um dos indicadores.
Não quero tecnologia de conhecimento zero para a informação X; não quero ter uma identidade em si.
Ponto final.
Assim, em vez de levarem sua idade real, ficam sabendo apenas uma de duas categorias amplas.
“Provas de conhecimento zero permitem que uma pessoa prove que algum fato sobre si mesma é verdadeiro sem trocar outros dados. Por exemplo, um visitante de um site pode provar de forma verificável que tem 18 anos ou mais sem compartilhar mais nada.”
Mas isso não significa que “não se compartilha nada nem mesmo ao configurar o token”.
É possível provar que algum token criptográfico A) não contém informações de identificação pessoal e B) o próprio token não pode ser usado como um ID vinculado à minha identidade no Google ou em um banco de dados governamental?
Como ambas as coisas são impossíveis, não apoio esse modelo de tokens.
Você recebe um certificado de uma entidade confiável que verifica se você tem 18 anos ou mais e, com ele, pode gerar um token que contém apenas a informação “X verificou que eu tenho 18 anos ou mais”.
Nem o verificador original nem quem recebe o token deveriam conseguir vinculá-lo ao certificado original.
Veja a seção 2 deste documento: https://eudi.dev/2.4.0/discussion-topics/g-zero-knowledge-pr...
Eu gostaria de saber se há algum argumento de que, na prática, isso é difícil de alcançar tecnicamente.
Além disso, essa arquitetura parece capaz de satisfazer a maioria das propostas de lei de verificação de idade em todo o mundo.
Mesmo que fossem dois departamentos da mesma empresa, seria possível provar que eles viram todos os IDs dos usuários, mas não conseguem vincular nomes de usuário a IDs.
Ainda não é o ideal, porque lida com informações de identificação pessoal e há risco de vazamento, mas é muito melhor do que o que a maioria faz hoje.
A forma pretendida é permitir que um governo que já possui dados de idade crie uma mensagem assinada, e a plataforma que verifica a idade saiba apenas que você é adulto, sem saber quem você é nem sua idade exata.
Provas de conhecimento zero para esse fim são um cavalo de Troia para rastreamento de identidade e atestação de dispositivo.
Isso porque esses pré-requisitos seriam necessários para impedir que todo mundo emitisse em massa provas de que é adulto e as distribuísse de graça.
Em assinaturas de contrato e pagamentos, isso funciona porque há incentivos inerentes, mas não há isso em comprovação de idade.
No fim, acho que vão argumentar: “Como a prova pode ser compartilhada, precisamos de um ponto de verificação confiável para confirmar que a pessoa que realmente possui o token de conhecimento zero neste exato momento é você”.
E então podem mandar você ligar a câmera do smartphone e obedecer às instruções de autenticação biométrica.
Não parece que o governo esteja mais tomando medidas para regulamentar alguma coisa, e talvez nem venha a tomar.
Assim fica claro que eles não estão procurando uma solução prática.
Precisamos de um “como explicar provas de conhecimento zero a legisladores”.
Isso já basta.