ZKPayments: Alcançando Privacidade e Escalabilidade

intermediárioDec 24, 2023
Este artigo investiga o papel das Provas de Conhecimento Zero (ZK) no aprimoramento da escalabilidade do blockchain e na proteção da privacidade, ilustrando seu escopo de aplicação e implementação em processos de transação por meio de análises de casos práticos. Em última análise, o texto também aborda os compromissos e decisões necessários a tomar entre o cumprimento dos regulamentos e a protecção da privacidade individual.
ZKPayments: Alcançando Privacidade e Escalabilidade

Introdução

No mundo em rápida evolução da Web3, surgiram dois desafios críticos: privacidade e escalabilidade. A natureza imutável da blockchain levanta preocupações sobre a privacidade dos dados para utilizadores e empresas, enquanto a crescente popularidade das Moedas Digitais do Banco Central (CBDCs) acrescenta preocupações sobre a vigilância.

Ao mesmo tempo, alcançar escalabilidade em redes blockchain tornou-se vital para lidar com volumes crescentes de transações. Em meio a esses desafios, os pagamentos Zero-Knowledge (ZK) oferecem uma solução promissora que aborda questões de privacidade e escalabilidade. Este blog explora como os pagamentos ZK preenchem a lacuna entre confidencialidade e transparência nas transações Web3, proporcionando aos usuários a privacidade necessária sem comprometer os recursos fundamentais do blockchain. Além disso, investiga o potencial dos protocolos baseados em ZK para aumentar a escalabilidade, tornando as aplicações descentralizadas mais práticas e acessíveis.

Compreendendo o desafio da privacidade nas transações Web3

A Web3 possibilitou uma infinidade de aplicativos descentralizados, plataformas DeFi e mercados NFT. No entanto, a transparência das transações blockchain significa que os endereços das carteiras e os históricos de transações são visíveis para qualquer pessoa com acesso à rede.

Imagine se a sua conta bancária tradicional fosse pública e qualquer pessoa pudesse aceder a informações detalhadas sobre as suas transações financeiras, incluindo onde gastou o seu dinheiro e quanto recebeu. Tal cenário seria alarmante e inaceitável para a maioria das pessoas, pois comprometeria a sua privacidade e segurança.

Várias razões sublinham a importância da privacidade nas transações Web3:

  1. Segurança e proteção: a privacidade é vital para proteger os usuários contra possíveis tentativas de hackers, ataques de phishing e outras atividades maliciosas, como doxing. A proteção dos dados financeiros garante que os usuários permaneçam menos suscetíveis a ameaças direcionadas.
  2. Confidencialidade comercial: Para empresas que operam no espaço Web3, manter a privacidade dos detalhes das transações é essencial para manter uma vantagem competitiva e proteger informações comerciais confidenciais.
  3. Direitos Individuais: Assim como nas finanças tradicionais, os indivíduos têm direito à privacidade financeira. A Web3 deve respeitar e defender estes direitos, capacitando os utilizadores a terem controlo sobre os seus dados.

A ascensão dos pagamentos de conhecimento zero

As provas de conhecimento zero podem ser rastreadas até o artigo original de Zero-Knowledge Proofs [GMR85] em 1985. Posteriormente, uma prova simplificada de ZK [K92] foi apresentada em 1992. Até 2013, a prova de conhecimento zero poderá ser utilizada na vida real, mas a um ritmo mais lento. Em 2016, Groth propôs o algoritmo Groth 16, que reduziu bastante a complexidade computacional. Desde então, as provas de conhecimento zero foram gradualmente colocadas em uso comercial real.

No contexto das criptomoedas, Monero e Zcash foram pioneiros em priorizar a privacidade nas transações blockchain. Monero (XMR) introduziu assinaturas em anel e endereços furtivos em 2014, proporcionando um nível mais alto de privacidade do que os blockchains tradicionais. Zcash (ZEC) surgiu em 2016 com zk-SNARKs, oferecendo aos usuários a escolha entre transações transparentes e protegidas para um equilíbrio entre privacidade e transparência.

Agora, rollups e protocolos Zero-Knowledge (ZK) surgiram como uma solução promissora para resolver questões de privacidade e escalabilidade em transações Web3. Os pagamentos ZK usam protocolos criptográficos conhecidos como provas de conhecimento zero, permitindo que uma parte prove a validade de uma declaração a outra parte sem revelar qualquer informação sensível.

Como o ZK permite escalabilidade e privacidade?

Imagine que você tem uma caixa mágica que pode realizar cálculos secretamente. Esta caixa pode provar a qualquer pessoa que uma determinada afirmação é verdadeira, sem revelar quaisquer detalhes sobre como chegou a essa conclusão. Essa é a ideia básica por trás das Provas de Conhecimento Zero.

Agora, vamos relacionar isso aos pagamentos blockchain. Quando você deseja fazer um pagamento usando blockchain, geralmente precisa mostrar que tem dinheiro suficiente para cobrir a transação. Em blockchains tradicionais como o Bitcoin, isso envolve revelar o saldo da sua conta.

Na forma básica, uma prova de conhecimento zero é composta por três elementos: testemunha (informações confidenciais), desafio e resposta.

  • Testemunha: Com uma prova de conhecimento zero, o provador quer provar o conhecimento de alguma informação oculta. A informação secreta é a “testemunha” da prova, e o suposto conhecimento que o provador tem da testemunha estabelece um conjunto de perguntas que só podem ser respondidas por uma parte com conhecimento da informação. Assim, o provador inicia o processo de prova escolhendo aleatoriamente uma pergunta, calculando a resposta e enviando-a ao verificador.
  • Desafio: O verificador escolhe aleatoriamente outra pergunta do conjunto e pede ao provador que a responda.
  • Resposta: O provador aceita a pergunta, calcula a resposta e a devolve ao verificador. A resposta do provador permite ao verificador verificar se o primeiro realmente tem acesso à testemunha. Para garantir que o provador não esteja adivinhando cegamente e obtendo as respostas corretas por acaso, o verificador escolhe mais perguntas para fazer. Ao repetir esta interação muitas vezes, a possibilidade de o provador falsificar o conhecimento da testemunha diminui significativamente até que o verificador esteja satisfeito.

Atualmente, existem vários protocolos populares baseados em ZK disponíveis, incluindo zk-SNARKs (Argumentos de conhecimento sucintos e não interativos de conhecimento zero), zk-STARKs (argumento de conhecimento transparente escalável de conhecimento zero) e Bulletproofs.

No contexto da blockchain permitem aos utilizadores provar a validade de uma transação sem revelar o endereço real do remetente. Esse recurso permite agrupar várias transações em lote em uma única prova, reduzindo a sobrecarga computacional e melhorando significativamente a escalabilidade. Ao agregar múltiplas transações em uma prova, os pagamentos ZK podem reduzir a carga na rede blockchain e aumentar o rendimento das transações. Esta maior escalabilidade pode levar a tempos de confirmação mais rápidos e taxas de transação mais baixas, tornando as aplicações descentralizadas mais práticas e acessíveis para os utilizadores.

O que são provas de conhecimento zero (ZKPs)? https://ethereum.org/en/zero-knowledge-proofs/

Rollups de conhecimento zero? https://ethereum.org/en/developers/docs/scaling/zk-rollups/

Estudo de caso - ZkBob

zkBob é um aplicativo focado na privacidade que utiliza provas de conhecimento zero (zkSNARKs) e stablecoins para transações confidenciais. Suas partes principais incluem o contrato zkBob para lidar com transações, tokens BOB com recursos de privacidade, um Relayer para transferências seguras e abstração de taxas de gás, um AccessManager para controle de acesso e uma UI para interação do usuário. Garante transações privadas e neutralidade da camada base.

Vamos examinar um cenário envolvendo Alice e Carl usando zkBob para uma transação privada.

Situação: Alice deseja enviar uma transação para Carl sem revelar os detalhes da transação, como valor, remetente ou destinatário. Eles decidem usar o zkBob para obter essa privacidade.

Processo de transação

  1. Criando contas:
    • Alice e Carl criam suas contas zkBob usando suas chaves privadas.
    • Essas chaves privadas são utilizadas para gerar provas, acessar saldos e realizar transações.
  2. Gerando endereços:
    • Alice gera um novo endereço zkBob privado por meio da interface do usuário do aplicativo para receber a transação recebida.
    • Este endereço é exclusivo para esta transação e não pode ser vinculado à conta principal de Alice.
  3. Depósitos:
    • Alice inicia uma transação de depósito de sua carteira Ethereum normal para o contrato zkBob Pool.
    • Ela aprova o contrato para acessar seus fundos e então conclui o depósito.
  4. Solicitação de transferência:
    • Alice deseja enviar uma transação privada para Carl.
    • Ela gera uma prova zk para esta transação usando sua chave privada e o aplicativo zkBob.
  5. Interação do Retransmissor:
    • Alice envia a prova zk anonimamente para um retransmissor, um intermediário confiável.
    • O retransmissor recebe essa prova e a processa sem conhecer os detalhes da transação.
  6. Publicação da transação:
    • O retransmissor publica a transação no contrato zkBob sem revelar os detalhes da transação.
    • O contrato zkBob verifica a prova zk e atualiza os detalhes da transação sem divulgar o valor ou os participantes.
  7. Recebendo Transação:
    • Carl, no lado receptor, gera um novo endereço zkBob privado por meio da interface do usuário do aplicativo para receber a transação recebida.
    • Isso garante que seu endereço de recebimento não esteja vinculado à sua conta principal.
  8. Conclusão da transação:
    • O contrato zkBob atualiza os saldos de Alice e Carl sem revelar os detalhes da transação.
    • Carl agora pode ver que recebeu uma transação, mas os detalhes da transação permanecem privados.
  9. Opção de retirada:
    • Se Carl quiser usar a transação recebida em um ambiente público, ele poderá iniciar uma transação de saque.
    • Essa retirada gerará uma prova zk mostrando a propriedade da transação, permitindo-lhe convertê-la para um formato de uso público.

Ao longo deste processo, os detalhes da transação, as informações do remetente e do destinatário permanecem privadas devido ao uso de provas de conhecimento zero (zkSNARKs). O retransmissor garante que as transações sejam processadas sem revelar detalhes confidenciais, e o contrato zkBob mantém a integridade da transação, ao mesmo tempo que mantém a privacidade dos usuários envolvidos.

Estudo de caso - WaaS Pay

WaaS Pay é uma plataforma de implantação de conta de contrato inteligente, que utiliza o kit de protocolo Safe{Core} e o SDK de abstração de conta Safe{Core} , projetado para organizações que buscam pagamentos instantâneos em blockchain enquanto priorizam a privacidade. Ele oferece uma interface fácil de usar e sem código para personalizar recursos de conta de contrato inteligente, como logins sociais, rampas de ativação/desativação fiduciária e transações sem gás para destinatários. Com o zkBob facilitando transações anônimas por meio de Provas de Conhecimento Zero (ZKPs), o WaaS Pay garante que dados financeiros confidenciais permaneçam seguros e confidenciais. Alimentada por Polygon zkEVM, a plataforma garante escalabilidade e eficiência, enquanto um nó IPFS auto-hospedado com Helia protege metadados confidenciais.

Para mais informações: https://ethglobal.com/showcase/waas-pay-br0qs

Vantagens do ZKPayments

  1. Privacidade aprimorada: ZKPayments oferece um alto nível de privacidade, mantendo os detalhes das transações confidenciais, protegendo os usuários de possíveis violações de privacidade e exploração de dados.
  2. Segurança aprimorada: com dados transacionais confidenciais ocultos, os usuários ficam menos expostos a ataques direcionados, garantindo um ambiente mais seguro para a condução de transações Web3. Por ex. ZKPayments pode ajudar a mitigar os problemas de frontrunning e maximização do valor extraível (MEV) que prevalecem na web3.
  3. Transparência e conformidade: ZKPayments encontra um equilíbrio ao fornecer transparência de transações às partes relevantes, preservando a privacidade do usuário. Isso ajuda as empresas a atender aos requisitos de conformidade regulatória sem sacrificar a confidencialidade.
  4. Experiência do usuário aprimorada: Os requisitos computacionais reduzidos do ZKPayments se traduzem em taxas de transação mais baixas e maior escalabilidade. Esses casos de uso, juntamente com o ERC4337, conforme visto no estudo de caso acima, oferecem aos usuários e empresas uma experiência mais tranquila, incentivando maiores taxas de adoção e uso.

Principais casos de uso

  1. Transações Pessoais Confidenciais: Esses protocolos garantem compras e pagamentos privados sem revelar detalhes financeiros a terceiros, garantindo a máxima privacidade.
  2. Swaps de tokens que preservam a privacidade: Esses protocolos permitem trocas de tokens privados, protegendo o histórico de negociação e participações para maior privacidade financeira.
  3. Campanhas privadas de crowdfunding: Com estes protocolos, as campanhas de crowdfunding mantêm o anonimato dos contribuidores, ao mesmo tempo que desembolsam fundos de forma transparente, garantindo um processo de angariação de fundos privado e confiável.
  4. Folhas de pagamento privadas: Esses protocolos permitem que as empresas façam pagamentos discretos a prestadores de serviços ou funcionários, protegendo os valores dos pagamentos e os detalhes dos destinatários.
  5. Recompensas auditadas para contribuidores: Esses protocolos simplificam as múltiplas transferências privadas, garantindo a confidencialidade durante a auditoria das contribuições.
  6. Angariação de fundos e subvenções de código aberto: Estes protocolos oferecem pedidos de tokens seguros e privados de investidores, verificando a segurança dos fundos com prova de solvência, ao mesmo tempo que mantêm a confidencialidade das transações, promovendo a confiança na angariação de fundos e na gestão de subvenções.

O desafio

Os pagamentos Zero-Knowledge (ZK) oferecem transações Web3 privadas, mas apresentam desafios de conformidade. Cumprir os requisitos AML/KYC, conformidade fiscal, triagem de sanções, retenção de dados, regulamentações transfronteiriças e abordar o uso criminoso são cruciais. A colaboração com reguladores, conformidade dinâmica e segurança robusta podem garantir um uso responsável. ZKPayments remodela as finanças digitais, protegendo a privacidade do usuário e cumprindo a lei.

Como abordar a conformidade? Um estudo de caso (zk.money)

Para garantir a conformidade legal com as leis e regulamentos do Reino Unido, a Aztec Network implementou uma abordagem abrangente que atinge um equilíbrio entre privacidade e dissuasão de atividades ilícitas em seu DeFi dApp com foco na privacidade, zk.money.

Abordagem prática de dissuasão:

  • Garanta que os usuários tenham acesso à privacidade na rede, ao mesmo tempo que impede a lavagem de dinheiro e atividades ilícitas.
  • Esforço atual: Limites de depósito por transação em http://zk.money.

Iniciativas:

  • Limites diários de depósito de ativos em todo o sistema.
  • Limitação de taxa de depósito específica de IP.
  • Limites de depósito pendente de endereço único.
  • Restrições na janela da escotilha de fuga.
  • Depósitos e saques lentos.
  • Identifique facilmente endereços em risco.
  • Impedir que usuários ilícitos contornem o Falafel, o rollup da Aztec.

Conclusão

Concluindo, ZKPayments oferece uma solução transformadora para a crescente demanda por opções escalonáveis e focadas na privacidade em finanças Web3. Ao combinar perfeitamente privacidade e transparência por meio de provas de conhecimento zero, os usuários podem realizar transações seguras e eficientes, preservando suas informações confidenciais. Com um compromisso com a conformidade e princípios centrados no usuário, a ZKPayments abre caminho para um futuro descentralizado que prioriza a privacidade, promove a confiança e remodela o cenário financeiro digital de forma responsável. Adotar o ZKPayments abre as portas para um ecossistema web3 mais seguro e fácil de usar, prometendo um futuro financeiro mais brilhante e inclusivo para todos.

Isenção de responsabilidade:

  1. Este artigo foi reimpresso de [fetchch]. Todos os direitos autorais pertencem ao autor original [Satyam Kulkarni]. Se houver objeções a esta reimpressão, entre em contato com a equipe do Gate Learn ( gatelearn@gate.io ) e eles cuidarão disso imediatamente.
  2. Isenção de responsabilidade: As opiniões e pontos de vista expressos neste artigo são exclusivamente do autor e não constituem qualquer conselho de investimento.
  3. As traduções do artigo para outros idiomas são feitas pela equipe do Gate Learn. A menos que mencionado, é proibido copiar, distribuir ou plagiar os artigos traduzidos.
Comece agora
Inscreva-se e ganhe um cupom de
$100
!
Criar conta