
Identidades digitais, as credenciais eletrônicas incorporadas em carteiras telefônicas, logins no native de trabalho e outros aplicativos estão se tornando onipresentes. Enquanto oferecem conveniência sem precedentes, eles também criam novos riscos de privacidade, principalmente no rastreamento e vigilância.
Um desses riscos é vincabilidade, A capacidade de associar um ou mais usos de uma credencial a uma pessoa específica. Atualmente, quando as pessoas usam sua carteira de motorista móvel ou fazem login em vários aplicativos, os identificadores ocultos podem vincular essas atividades separadas, criando perfis detalhados do comportamento do usuário.
Para abordar isso, lançamos Crescente (abre na nova guia)uma biblioteca criptográfica que adiciona Deslocável para formatos de identidade amplamente utilizados, protegendo a privacidade. Isso inclui tokens da Internet JSON (o padrão de autenticação por trás de muitos logins de aplicativos) e licenças de driver móvel. O Crescent também trabalha sem exigir que as organizações que emitem essas credenciais atualizem seus sistemas.
A proteção vai além dos recursos de privacidade existentes. Alguns sistemas de identidade digital já oferecem Divulgação seletivapermitindo que os usuários compartilhem apenas informações específicas em cada interação.
Mas mesmo com a divulgação seletiva, as credenciais ainda podem ser vinculadas através de números de série, assinaturas criptográficas ou identificadores incorporados. O recurso de desvincabilidade do Crescent foi projetado para impedir qualquer coisa na credencial, além do que um usuário escolhe explicitamente revelar, de ser usado para conectar suas interações digitais separadas.

Dois caminhos para a desvantagem
Para entender como o Crescent funciona, ajuda a examinar as duas principais abordagens que os pesquisadores se desenvolveram para adicionar a desviabilidade aos sistemas de identidade:
- Esquemas especializados de assinatura criptográfica. Esses esquemas podem proporcionar uma desbaste, mas requerem alterações extensas na infraestrutura existente. Novos algoritmos devem ser padronizados, implementados e integrados em plataformas de software program e {hardware}. Por exemplo, o Bbs (abre na nova guia) Atualmente, o esquema de assinatura está sendo padronizado pela Força -Tarefa de Engenharia da Web (IETF), mas mesmo após a conclusão, a adoção pode ser lenta.
- Provas de conhecimento zero com credenciais existentes. Esta abordagem, usada por Crescente (abre na nova guia)permite que os usuários provem fatos específicos sobre suas credenciais sem revelar os dados subjacentes que podem permitir o rastreamento. Por exemplo, alguém pode provar que possui uma carteira de motorista válida e morar em um código postal específico sem expor nenhuma outra informação ou identificadores pessoais que possam vincular essa interação aos futuros.
As provas de conhecimento zero se tornaram mais práticas desde que foram desenvolvidas há 40 anos, mas não são tão eficientes quanto os algoritmos criptográficos usados nas credenciais de hoje. O Crescent aborda esse desafio computacional por meio do pré -processamento, realizando os cálculos mais complexos com uma vez com antecedência, para que a geração de prova posterior seja rápida e eficiente para dispositivos móveis.
Além da desbaste, o Crescent suporta a divulgação seletiva, permitindo que os usuários provem fatos específicos sem revelar detalhes desnecessários. Por exemplo, pode confirmar que uma credencial é válida e não expirada sem divulgar an information exata de expiração, que de outra forma poderia servir como um identificador exclusivo. Essas proteções de privacidade funcionam mesmo quando as credenciais são armazenadas no {hardware} seguro de um telefone, o que as mantém ligadas ao dispositivo e evita o acesso não autorizado.
Highlight: Série de eventos
Fórum de Pesquisa da Microsoft
Junte -se a nós para uma troca contínua de idéias sobre pesquisas na period do common IA. Assista aos quatro primeiros episódios sob demanda.
Atrás da cortina criptográfica
Na sua essência, o Crescent usa uma forma sofisticada de prova criptográfica chamada SNARK zero-conhecimento (argumento não interativo sucinto do conhecimento). Este método permite que uma parte show a posse de informações ou credenciais sem revelar os dados subjacentes.
O Crescent usa especificamente o sistema de prova Groth16, uma das primeiras implementações práticas dessa tecnologia. O que torna o Groth16 particularmente útil é que suas provas são pequenas, rápidas de verificar e podem ser compartilhadas em uma única etapa sem comunicação entre o usuário e o verificador.
O sistema funciona primeiro estabelecendo parâmetros criptográficos compartilhados com base em um modelo de credencial. Várias organizações que emitem credenciais semelhantes, como diferentes departamentos de veículos motorizados estaduais que emitem licenças de motorista móvel, podem usar os mesmos parâmetros, desde que sigam formatos de dados compatíveis e padrões de segurança.
As regras matemáticas que definem o que cada prova verificará são escritas usando ferramentas de programação especializadas que as convertem em um sistema de restrição Rank-1 (R1Cs), uma estrutura matemática que descreve exatamente o que precisa ser comprovado sobre uma credencial.
Para tornar o sistema rápido o suficiente para uso do mundo actual, Crescent divide a geração de prova em dois estágios distintos:
- Put together o estágio. Esta etapa é executada uma vez e gera valores criptográficos que podem ser armazenados no dispositivo do usuário para uso repetido.
- Mostrar estágio. Quando um usuário precisa apresentar sua credencial, essa etapa mais rápida leva os valores armazenados e os randomiza para evitar qualquer conexão com as apresentações anteriores. Ele também cria um resumo criptográfico compacto que revela apenas as informações específicas necessárias para essa interação específica.
As figuras 2 e 3 ilustram esse fluxo de trabalho de proteção de credenciais e a divisão entre as etapas Put together e Mostrar.


Um aplicativo de amostra
Para demonstrar como o Crescent funciona, criamos um aplicativo de amostra cobrindo dois cenários do mundo actual: verificando o emprego e provando a idade para acesso on-line. O aplicativo inclui código de amostra para configurar emissores e verificadores fictícios como servidores Rust, juntamente com uma carteira de extensão do navegador para o usuário. Os números de etapas correspondem às etapas da Figura 4.
Configurar
- Um serviço crescente pré-gera os parâmetros de conhecimento zero para criar e verificar provas a partir de tokens da Internet e licenças de motorista móvel.
- O usuário obtém uma carteira de motorista móvel de seu departamento de veículos a motor.
- O usuário obtém um token da Internet de comprovante de emprego de seu empregador, Contoso.
- Essas credenciais e suas chaves privadas são armazenadas na carteira crescente.
Cenários
- Verificação de emprego: O usuário apresenta seu token da Internet JSON para Fabrikam, uma clínica de saúde on -line, para provar que eles são empregados na Contoso e elegíveis para benefícios no native de trabalho. Fabrikam descobre que o usuário trabalha no Contoso, mas não na identidade do usuário, enquanto o Contoso permanece sem conhecimento da interação.
- Verificação de idade: O usuário apresenta sua carteira de motorista móvel para uma rede social, provando ter mais de 18 anos. A prova confirma a elegibilidade sem revelar sua idade ou identidade.
Nos dois cenários, o Crescent garante que as apresentações de credenciais permaneçam desvincular, impedindo que qualquer parte as conecte ao usuário.
Por simplicidade, a amostra outline seu próprio protocolo de emissão e apresentação, mas pode ser integrado a estruturas de identidade de nível superior, como o OpenID/OAuth, credenciais verificáveis ou o ecossistema de licença de driver móvel.

Para saber mais sobre o projeto, visite o projeto Crescent Github (abre na nova guia) página, ou confira nossas apresentações recentes dadas no Crypto 2025 da palavra actual (abre na nova guia) e North Sec 2025 (abre na nova guia) conferências.