Parte 1 da nossa série sobre privacidade abordou o que a "privacidade" implica, como a privacidade em redes blockchain difere da privacidade web2 e por que é difícil alcançá-la em blockchains.
O principal argumento deste post é que se o estado final desejável é ter uma infraestrutura de privacidade programável que possa lidar com estados privados compartilhados sem nenhum ponto único de falha, então todos os caminhos levam ao MPC. Também exploramos a maturidade do MPC e suas suposições de confiança, destacamos abordagens alternativas, comparamos compensações e fornecemos uma visão geral da indústria.
Estamos todos construindo a mesma coisa? Continue lendo para descobrir.
Graças a Avishay (SodaLabs), Lukas (Taceo), Michael (Equilíbrio), e,Nico (Arcium) para as discussões que ajudaram a moldar esta postagem.
A infraestrutura de privacidade existente em blockchains é projetada para lidar com casos de uso muito específicos, como pagamentos privados ou votação. Esta é uma visão bastante limitada e reflete principalmente para o que os blockchains são atualmente utilizados (negociação, transferências e especulação).Tom Walpo colocou isso- A criptografia sofre de um Paradoxo de Fermi:
Além de aumentar a liberdade individual, acreditamos que a privacidade é um requisito para expandir o espaço de design das blockchains além do atual meta especulativo. Muitas aplicações exigem algum estado privado e/ou lógica oculta para funcionar corretamente:
A análise empírica (tanto para web2 quanto para web3) mostra que a maioria dos usuários não está disposta a pagar mais ou passar por etapas adicionais para obter privacidade adicional, e concordamos que a privacidade não é um ponto de venda em si. No entanto, isso permite que novos casos de uso mais significativos existam em cima das blockchains - permitindo-nos sair do Paradoxo de Fermi.
Tecnologias de aprimoramento de privacidade (PETs) e soluções modernas de criptografia (“criptografia programável" ) são os blocos de construção fundamentais para realizar essa visão (consulte apêndicepara obter mais informações sobre as diferentes soluções disponíveis e suas compensações).
Três hipóteses-chave moldam nossa visão de como acreditamos que a infraestrutura de privacidade em blockchains pode evoluir:
Com as suposições acima em mente - qual é o resultado final para a infraestrutura de privacidade em blockchains? Existe uma abordagem que seja adequada para cada aplicação? Uma tecnologia de aprimoramento de privacidade para governar todas elas?
Não exatamente. Todos eles têm compromissos diferentes e já estamos vendo eles serem combinados de várias maneiras. No total, identificamos 11 abordagens diferentes (ver apêndice).
Hoje, as duas abordagens mais populares para construir infraestrutura de privacidade em blockchains alavancam ZKPs ou FHE. No entanto, ambos têm falhas fundamentais:
Se o estado final desejável é ter uma infraestrutura de privacidade programável que possa lidar com o estado privado compartilhado sem qualquer ponto único de falha, então ambos os caminhos levam ao MPC:
Note que, embora essas duas abordagens estejam eventualmente convergindo, o MPC é utilizado para coisas diferentes:
Embora a discussão esteja começando a mudar para uma visão mais matizada, as garantias por trás dessas diferentes abordagens permanecem pouco exploradas. Dado que nossos pressupostos de confiança se resumem aos do MPC, as três principais perguntas a serem feitas são:
Vamos abordar essas perguntas com mais detalhes.
Sempre que uma solução usa FHE, sempre é preciso perguntar: "Quem detém a chave de descriptografia?". Se a resposta for "a rede", a pergunta seguinte é: "Quais entidades reais compõem essa rede?". Esta última questão é relevante para todos os casos de uso que dependem do MPC de alguma forma.
Origem: Palestra da Zama na ETH CC
O principal risco com o MPC é a colusão, ou seja, bastantes partes agindo maliciosamente e colaborando para descriptografar dados ou apropriar-se indevidamente de computação. A colusão pode ser acordada off-chain e só é revelada se as partes maliciosas fizerem algo óbvio (chantagem, cunhar tokens do nada, etc). Desnecessário dizer que isso tem implicações significativas para as garantias de privacidade que o sistema pode oferecer. O risco de colusão depende de:
TLDR: Não tão forte quanto gostaríamos, mas mais forte do que depender apenas de um terceiro centralizado.
O limiar necessário para descriptografar depende do esquema MPC escolhido - em grande parte, um compromisso entre a vivacidade ("entrega garantida de saída") e a segurança. Você pode ter um esquema N/N que é muito seguro, mas que falha se apenas um nó fica offline. Por outro lado, os esquemas N/2 ou N/3 são mais robustos, mas têm um risco maior de colusão.
As duas condições a equilibrar são:
O esquema escolhido varia de acordo com as implementações. Por exemplo, Zama está mirando N/3, enquanto a Arcium está atualmente implementando um Regime N/Nmas depois visando também suportar esquemas com garantias de maior vivacidade (e maiores pressuposições de confiança).
Uma solução de compromisso ao longo desta fronteira de tradeoff seria ter uma solução mista:
Embora isso seja atraente na teoria, também introduz complexidade adicional, como a interação do comitê de computação com o comitê de alta confiança.
Outra maneira de fortalecer as garantias de segurança é executar o MPC em hardware confiável para que as partes-chave sejam mantidas dentro de um enclave seguro. Isso torna mais difícil extrair ou usar as partes-chave para qualquer outra coisa que não seja definida pelo protocolo. Pelo menos ZamaeArciumestão explorando o ângulo TEE.
Riscos mais sutis incluem casos extremos em coisas como engenharia social, onde, por exemplo, um engenheiro sênior é contratado por todas as empresas incluídas no cluster MPC por mais de 10 a 15 anos.
Do ponto de vista de desempenho, o desafio chave com MPC é o overhead de comunicação. Ele cresce com a complexidade da computação e o número de nós que fazem parte da rede (mais comunicação de ida e volta é necessária). Para casos de uso de blockchain, isso leva a duas implicações práticas:
O coquetel de privacidade completo consiste em:
Isso é complexo, introduz muitos casos de borda inexplorados, tem alta sobrecarga e pode não ser praticamente viável por muitos anos. Outro risco é a falsa sensação de segurança que se pode obter ao adicionar vários conceitos complexos uns sobre os outros. Quanto mais complexidade e pressupostos de confiança adicionamos, mais difícil se torna raciocinar sobre a segurança da solução geral.
Vale a pena? Talvez, mas também vale a pena explorar abordagens alternativas que podem trazer eficiência computacional significativamente melhor às custas de garantias de privacidade apenas um pouco mais fracas. Como Lyron da Seismicobservado - devemos focar na solução mais simples que atenda aos nossos critérios de nível de privacidade exigido e compensações aceitáveis, em vez de superengenharia apenas por causa disso.
Se tanto ZK quanto FHE acabarem por recuar para as suposições de confiança do MPC, por que não usar o MPC para computação diretamente? Esta é uma pergunta válida e algo que equipes como Arcium, SodaLabs (usado por Cotiv2),Taceo, e Nillionestão tentando fazer. Observe que o MPC assume muitas formas, mas, das três abordagens principais, estamos nos referindo aqui a protocolos baseados em compartilhamento de segredos e circuitos ofuscados (GC), não a protocolos baseados em FHE que usam o MPC para descriptografia.
Embora o MPC já seja usado para cálculos simples, como assinaturas distribuídas e carteiras mais seguras, o principal desafio de usar o MPC para cálculos mais gerais é a sobrecarga de comunicação (aumenta tanto com a complexidade do cálculo quanto com o número de nós envolvidos).
Existem algumas maneiras de reduzir a sobrecarga, como fazer o pré-processamento (ou seja, as partes mais caras do protocolo) com antecedência e off-line - algo tanto ArciumeSodaLabsestão explorando. O cálculo é então executado na fase online, que consome parte dos dados produzidos na fase offline. Isso reduz significativamente o overhead de comunicação geral.
A tabela abaixo da SodaLabs mostra benchmarks iniciais sobre quanto tempo leva para executar diferentes opcodes 1.000 vezes em seu gcEVM (notado em microssegundos). Embora isso seja um passo na direção certa, ainda há muito trabalho a ser feito para melhorar a eficiência e expandir o conjunto de operadores além de alguns nós.
Origem: SodaLabs
O benefício da abordagem baseada em ZK é que você só usa MPC para casos de uso que requerem computação sobre um estado privado compartilhado. FHE compete mais diretamente com MPC e depende muito da aceleração de hardware.
Recentemente, houve um interesse renovado em TEEs, que podem ser aproveitados tanto de forma isolada (blockchains privadas baseadas em TEE ou coprocessadores) quanto em combinação com outras PETs, como soluções baseadas em ZK (usar apenas TEE para computação em estado privado compartilhado).
Embora as TEEs sejam, de certa forma, mais maduras e introduzam menos sobrecarga de desempenho, elas não estão isentas de desvantagens. Em primeiro lugar, as TEEs possuem diferentes pressupostos de confiança (1/N) e oferecem uma solução baseada em hardware em vez de software. Uma crítica frequentemente ouvida está relacionada ao passado vulnerabilidades do SGX, mas vale ressaltar que TEE ≠ Intel SGX. Os TEEs também exigem confiar no fornecedor de hardware e o hardware é caro (não acessível para a maioria). Uma solução para o risco de ataques físicos poderia ser a de executar TEEs no espaçopara coisas críticas da missão.
No geral, os TEEs parecem mais adequados para atestação ou casos de uso que precisam apenas de privacidade de curto prazo (decodificação de limiar, livros de pedidos escuros, etc). Para privacidade permanente ou de longo prazo, as garantias de segurança parecem menos atraentes.
A privacidade intermediada pode oferecer privacidade a outros usuários, mas as garantias de privacidade vêm exclusivamente da confiança em uma terceira parte (ponto único de falha). Embora se assemelhe à 'privacidade web2' (privacidade de outros usuários), ela pode ser fortalecida com garantias adicionais (criptográficas ou econômicas) e permitir a verificação da execução correta.
Comitês de disponibilidade de dados privados (DAC) são um exemplo disso; Os membros do DAC armazenam dados off-chain e os usuários confiam neles para armazenar corretamente os dados e fazer cumprir as atualizações de transição de estado. Outro exemplo disso é o Sequenciador Franqueadoproposto por Tom Walpo.
Embora essa abordagem faça grandes concessões nas garantias de privacidade, pode ser a única alternativa viável para aplicações de baixo valor e alto desempenho em termos de custo e desempenho (pelo menos por enquanto). Um exemplo é Protocolo de Lente, que planeja usar um DAC privado para obter feeds privados. Para casos de uso como o social on-chain, a compensação entre privacidade e custo/desempenho é provavelmente razoável por enquanto (dado o custo e a sobrecarga de alternativas).
Os endereços ocultos podem fornecer garantias de privacidade semelhantes à criação de um novo endereço para cada transação, mas o processo é automatizado nos bastidores e abstraído dos usuários. Para mais informações, consulte estevisão geral por Vitalik ou este imersão profunda em abordagens diferentes. Os principais players neste campo incluem UmbraeFluidkey.
Embora os endereços furtivos ofereçam uma solução relativamente simples, a principal desvantagem é que eles só podem adicionar garantias de privacidade para transações (pagamentos e transferências), não para computação de propósito geral. Isso os diferencia das outras três soluções mencionadas acima.
Além disso, as garantias de privacidade fornecidas pelos endereços furtivos não são tão fortes quanto as alternativas. O anonimato pode ser quebrado comanálise de agrupamento simples, especialmente se as transferências de entrada e saída não estiverem em uma faixa semelhante (por exemplo, receber $10.000, mas gastar em média $10-100 em transações cotidianas). Outro desafio com endereços furtivos é a atualização das chaves, que atualmente precisa ser realizada individualmente para cada carteira (os rollups de armazenamento de chaves podem ajudar a resolver esse problema). Do lado da experiência do usuário, protocolos de endereço furtivo também exigem abstração de conta ou um pagador para cobrir taxas se a conta não tiver o token de taxa (por exemplo, ETH).
Dado o ritmo acelerado de desenvolvimento e a incerteza geral em torno de diferentes soluções técnicas, existem vários riscos para a nossa tese de que o MPC seja o resultado final. As principais razões pelas quais talvez não precisemos do MPC de uma forma ou de outra incluem:
Em última análise, uma cadeia é tão forte quanto seu elo mais fraco. No caso da infraestrutura de privacidade programável, as garantias de confiança se resumem às do MPC se quisermos que ela possa lidar com estado privado compartilhado sem um único ponto de falha.
Embora esta peça possa soar crítica em relação ao MPC, não é. O MPC oferece uma grande melhoria ao status quo atual de depender de terceiros centralizados. O principal problema, em nossa opinião, é a falsa sensação de confiança em toda a indústria e as questões que estão sendo varridas para debaixo do tapete. Em vez disso, devemos lidar com as questões de frente e concentrar-nos na avaliação dos riscos potenciais.
Nem todos os problemas, no entanto, precisam ser resolvidos usando as mesmas ferramentas. Embora acreditemos que o MPC é o jogo final, abordagens alternativas são opções viáveis, desde que a sobrecarga para soluções alimentadas por MPC permaneça alta. Vale sempre a pena considerar qual abordagem melhor se adapta às necessidades/características específicas dos problemas que estamos tentando resolver e quais compensações estamos dispostos a fazer.
Mesmo que você tenha o melhor martelo do mundo, nem tudo é um prego.
Tecnologias que melhoram a privacidade, ou PETs, têm como objetivo melhorar um ou mais aspectos mencionados acima. Mais concretamente, eles são soluções técnicas para proteger dados durante o armazenamento, processamento e comunicação.
Existem muitos PETs diferentes para escolher, mas os mais relevantes para a indústria blockchain incluem a sopa de três letras - ZKP, MPC, FHE e TEE - juntamente com métodos adicionais, como endereços ocultos:
Esses PETs podem ser combinados de várias maneiras para alcançar diferentes compensações e pressupostos de confiança. Também temos soluções que dependem de um terceiro confiável (privacidade intermediada), como comitês de disponibilidade de dados privados (DAC). Isso pode permitir privacidade de outros usuários, mas as garantias de privacidade vêm exclusivamente da confiança em um terceiro. Nesse sentido, se assemelha à "privacidade web2" (privacidade de outros usuários), mas pode ser fortalecido com garantias adicionais (criptográficas ou econômicas).
No total, identificamos 11 abordagens diferentes para garantir alguma privacidade em redes blockchain. Algumas das compensações observadas incluem:
Dentro dessas 11 categorias, muitas empresas diferentes estão trabalhando em uma ou mais soluções. Abaixo está uma visão geral (não exaustiva) do estado atual da indústria:
Parte 1 da nossa série sobre privacidade abordou o que a "privacidade" implica, como a privacidade em redes blockchain difere da privacidade web2 e por que é difícil alcançá-la em blockchains.
O principal argumento deste post é que se o estado final desejável é ter uma infraestrutura de privacidade programável que possa lidar com estados privados compartilhados sem nenhum ponto único de falha, então todos os caminhos levam ao MPC. Também exploramos a maturidade do MPC e suas suposições de confiança, destacamos abordagens alternativas, comparamos compensações e fornecemos uma visão geral da indústria.
Estamos todos construindo a mesma coisa? Continue lendo para descobrir.
Graças a Avishay (SodaLabs), Lukas (Taceo), Michael (Equilíbrio), e,Nico (Arcium) para as discussões que ajudaram a moldar esta postagem.
A infraestrutura de privacidade existente em blockchains é projetada para lidar com casos de uso muito específicos, como pagamentos privados ou votação. Esta é uma visão bastante limitada e reflete principalmente para o que os blockchains são atualmente utilizados (negociação, transferências e especulação).Tom Walpo colocou isso- A criptografia sofre de um Paradoxo de Fermi:
Além de aumentar a liberdade individual, acreditamos que a privacidade é um requisito para expandir o espaço de design das blockchains além do atual meta especulativo. Muitas aplicações exigem algum estado privado e/ou lógica oculta para funcionar corretamente:
A análise empírica (tanto para web2 quanto para web3) mostra que a maioria dos usuários não está disposta a pagar mais ou passar por etapas adicionais para obter privacidade adicional, e concordamos que a privacidade não é um ponto de venda em si. No entanto, isso permite que novos casos de uso mais significativos existam em cima das blockchains - permitindo-nos sair do Paradoxo de Fermi.
Tecnologias de aprimoramento de privacidade (PETs) e soluções modernas de criptografia (“criptografia programável" ) são os blocos de construção fundamentais para realizar essa visão (consulte apêndicepara obter mais informações sobre as diferentes soluções disponíveis e suas compensações).
Três hipóteses-chave moldam nossa visão de como acreditamos que a infraestrutura de privacidade em blockchains pode evoluir:
Com as suposições acima em mente - qual é o resultado final para a infraestrutura de privacidade em blockchains? Existe uma abordagem que seja adequada para cada aplicação? Uma tecnologia de aprimoramento de privacidade para governar todas elas?
Não exatamente. Todos eles têm compromissos diferentes e já estamos vendo eles serem combinados de várias maneiras. No total, identificamos 11 abordagens diferentes (ver apêndice).
Hoje, as duas abordagens mais populares para construir infraestrutura de privacidade em blockchains alavancam ZKPs ou FHE. No entanto, ambos têm falhas fundamentais:
Se o estado final desejável é ter uma infraestrutura de privacidade programável que possa lidar com o estado privado compartilhado sem qualquer ponto único de falha, então ambos os caminhos levam ao MPC:
Note que, embora essas duas abordagens estejam eventualmente convergindo, o MPC é utilizado para coisas diferentes:
Embora a discussão esteja começando a mudar para uma visão mais matizada, as garantias por trás dessas diferentes abordagens permanecem pouco exploradas. Dado que nossos pressupostos de confiança se resumem aos do MPC, as três principais perguntas a serem feitas são:
Vamos abordar essas perguntas com mais detalhes.
Sempre que uma solução usa FHE, sempre é preciso perguntar: "Quem detém a chave de descriptografia?". Se a resposta for "a rede", a pergunta seguinte é: "Quais entidades reais compõem essa rede?". Esta última questão é relevante para todos os casos de uso que dependem do MPC de alguma forma.
Origem: Palestra da Zama na ETH CC
O principal risco com o MPC é a colusão, ou seja, bastantes partes agindo maliciosamente e colaborando para descriptografar dados ou apropriar-se indevidamente de computação. A colusão pode ser acordada off-chain e só é revelada se as partes maliciosas fizerem algo óbvio (chantagem, cunhar tokens do nada, etc). Desnecessário dizer que isso tem implicações significativas para as garantias de privacidade que o sistema pode oferecer. O risco de colusão depende de:
TLDR: Não tão forte quanto gostaríamos, mas mais forte do que depender apenas de um terceiro centralizado.
O limiar necessário para descriptografar depende do esquema MPC escolhido - em grande parte, um compromisso entre a vivacidade ("entrega garantida de saída") e a segurança. Você pode ter um esquema N/N que é muito seguro, mas que falha se apenas um nó fica offline. Por outro lado, os esquemas N/2 ou N/3 são mais robustos, mas têm um risco maior de colusão.
As duas condições a equilibrar são:
O esquema escolhido varia de acordo com as implementações. Por exemplo, Zama está mirando N/3, enquanto a Arcium está atualmente implementando um Regime N/Nmas depois visando também suportar esquemas com garantias de maior vivacidade (e maiores pressuposições de confiança).
Uma solução de compromisso ao longo desta fronteira de tradeoff seria ter uma solução mista:
Embora isso seja atraente na teoria, também introduz complexidade adicional, como a interação do comitê de computação com o comitê de alta confiança.
Outra maneira de fortalecer as garantias de segurança é executar o MPC em hardware confiável para que as partes-chave sejam mantidas dentro de um enclave seguro. Isso torna mais difícil extrair ou usar as partes-chave para qualquer outra coisa que não seja definida pelo protocolo. Pelo menos ZamaeArciumestão explorando o ângulo TEE.
Riscos mais sutis incluem casos extremos em coisas como engenharia social, onde, por exemplo, um engenheiro sênior é contratado por todas as empresas incluídas no cluster MPC por mais de 10 a 15 anos.
Do ponto de vista de desempenho, o desafio chave com MPC é o overhead de comunicação. Ele cresce com a complexidade da computação e o número de nós que fazem parte da rede (mais comunicação de ida e volta é necessária). Para casos de uso de blockchain, isso leva a duas implicações práticas:
O coquetel de privacidade completo consiste em:
Isso é complexo, introduz muitos casos de borda inexplorados, tem alta sobrecarga e pode não ser praticamente viável por muitos anos. Outro risco é a falsa sensação de segurança que se pode obter ao adicionar vários conceitos complexos uns sobre os outros. Quanto mais complexidade e pressupostos de confiança adicionamos, mais difícil se torna raciocinar sobre a segurança da solução geral.
Vale a pena? Talvez, mas também vale a pena explorar abordagens alternativas que podem trazer eficiência computacional significativamente melhor às custas de garantias de privacidade apenas um pouco mais fracas. Como Lyron da Seismicobservado - devemos focar na solução mais simples que atenda aos nossos critérios de nível de privacidade exigido e compensações aceitáveis, em vez de superengenharia apenas por causa disso.
Se tanto ZK quanto FHE acabarem por recuar para as suposições de confiança do MPC, por que não usar o MPC para computação diretamente? Esta é uma pergunta válida e algo que equipes como Arcium, SodaLabs (usado por Cotiv2),Taceo, e Nillionestão tentando fazer. Observe que o MPC assume muitas formas, mas, das três abordagens principais, estamos nos referindo aqui a protocolos baseados em compartilhamento de segredos e circuitos ofuscados (GC), não a protocolos baseados em FHE que usam o MPC para descriptografia.
Embora o MPC já seja usado para cálculos simples, como assinaturas distribuídas e carteiras mais seguras, o principal desafio de usar o MPC para cálculos mais gerais é a sobrecarga de comunicação (aumenta tanto com a complexidade do cálculo quanto com o número de nós envolvidos).
Existem algumas maneiras de reduzir a sobrecarga, como fazer o pré-processamento (ou seja, as partes mais caras do protocolo) com antecedência e off-line - algo tanto ArciumeSodaLabsestão explorando. O cálculo é então executado na fase online, que consome parte dos dados produzidos na fase offline. Isso reduz significativamente o overhead de comunicação geral.
A tabela abaixo da SodaLabs mostra benchmarks iniciais sobre quanto tempo leva para executar diferentes opcodes 1.000 vezes em seu gcEVM (notado em microssegundos). Embora isso seja um passo na direção certa, ainda há muito trabalho a ser feito para melhorar a eficiência e expandir o conjunto de operadores além de alguns nós.
Origem: SodaLabs
O benefício da abordagem baseada em ZK é que você só usa MPC para casos de uso que requerem computação sobre um estado privado compartilhado. FHE compete mais diretamente com MPC e depende muito da aceleração de hardware.
Recentemente, houve um interesse renovado em TEEs, que podem ser aproveitados tanto de forma isolada (blockchains privadas baseadas em TEE ou coprocessadores) quanto em combinação com outras PETs, como soluções baseadas em ZK (usar apenas TEE para computação em estado privado compartilhado).
Embora as TEEs sejam, de certa forma, mais maduras e introduzam menos sobrecarga de desempenho, elas não estão isentas de desvantagens. Em primeiro lugar, as TEEs possuem diferentes pressupostos de confiança (1/N) e oferecem uma solução baseada em hardware em vez de software. Uma crítica frequentemente ouvida está relacionada ao passado vulnerabilidades do SGX, mas vale ressaltar que TEE ≠ Intel SGX. Os TEEs também exigem confiar no fornecedor de hardware e o hardware é caro (não acessível para a maioria). Uma solução para o risco de ataques físicos poderia ser a de executar TEEs no espaçopara coisas críticas da missão.
No geral, os TEEs parecem mais adequados para atestação ou casos de uso que precisam apenas de privacidade de curto prazo (decodificação de limiar, livros de pedidos escuros, etc). Para privacidade permanente ou de longo prazo, as garantias de segurança parecem menos atraentes.
A privacidade intermediada pode oferecer privacidade a outros usuários, mas as garantias de privacidade vêm exclusivamente da confiança em uma terceira parte (ponto único de falha). Embora se assemelhe à 'privacidade web2' (privacidade de outros usuários), ela pode ser fortalecida com garantias adicionais (criptográficas ou econômicas) e permitir a verificação da execução correta.
Comitês de disponibilidade de dados privados (DAC) são um exemplo disso; Os membros do DAC armazenam dados off-chain e os usuários confiam neles para armazenar corretamente os dados e fazer cumprir as atualizações de transição de estado. Outro exemplo disso é o Sequenciador Franqueadoproposto por Tom Walpo.
Embora essa abordagem faça grandes concessões nas garantias de privacidade, pode ser a única alternativa viável para aplicações de baixo valor e alto desempenho em termos de custo e desempenho (pelo menos por enquanto). Um exemplo é Protocolo de Lente, que planeja usar um DAC privado para obter feeds privados. Para casos de uso como o social on-chain, a compensação entre privacidade e custo/desempenho é provavelmente razoável por enquanto (dado o custo e a sobrecarga de alternativas).
Os endereços ocultos podem fornecer garantias de privacidade semelhantes à criação de um novo endereço para cada transação, mas o processo é automatizado nos bastidores e abstraído dos usuários. Para mais informações, consulte estevisão geral por Vitalik ou este imersão profunda em abordagens diferentes. Os principais players neste campo incluem UmbraeFluidkey.
Embora os endereços furtivos ofereçam uma solução relativamente simples, a principal desvantagem é que eles só podem adicionar garantias de privacidade para transações (pagamentos e transferências), não para computação de propósito geral. Isso os diferencia das outras três soluções mencionadas acima.
Além disso, as garantias de privacidade fornecidas pelos endereços furtivos não são tão fortes quanto as alternativas. O anonimato pode ser quebrado comanálise de agrupamento simples, especialmente se as transferências de entrada e saída não estiverem em uma faixa semelhante (por exemplo, receber $10.000, mas gastar em média $10-100 em transações cotidianas). Outro desafio com endereços furtivos é a atualização das chaves, que atualmente precisa ser realizada individualmente para cada carteira (os rollups de armazenamento de chaves podem ajudar a resolver esse problema). Do lado da experiência do usuário, protocolos de endereço furtivo também exigem abstração de conta ou um pagador para cobrir taxas se a conta não tiver o token de taxa (por exemplo, ETH).
Dado o ritmo acelerado de desenvolvimento e a incerteza geral em torno de diferentes soluções técnicas, existem vários riscos para a nossa tese de que o MPC seja o resultado final. As principais razões pelas quais talvez não precisemos do MPC de uma forma ou de outra incluem:
Em última análise, uma cadeia é tão forte quanto seu elo mais fraco. No caso da infraestrutura de privacidade programável, as garantias de confiança se resumem às do MPC se quisermos que ela possa lidar com estado privado compartilhado sem um único ponto de falha.
Embora esta peça possa soar crítica em relação ao MPC, não é. O MPC oferece uma grande melhoria ao status quo atual de depender de terceiros centralizados. O principal problema, em nossa opinião, é a falsa sensação de confiança em toda a indústria e as questões que estão sendo varridas para debaixo do tapete. Em vez disso, devemos lidar com as questões de frente e concentrar-nos na avaliação dos riscos potenciais.
Nem todos os problemas, no entanto, precisam ser resolvidos usando as mesmas ferramentas. Embora acreditemos que o MPC é o jogo final, abordagens alternativas são opções viáveis, desde que a sobrecarga para soluções alimentadas por MPC permaneça alta. Vale sempre a pena considerar qual abordagem melhor se adapta às necessidades/características específicas dos problemas que estamos tentando resolver e quais compensações estamos dispostos a fazer.
Mesmo que você tenha o melhor martelo do mundo, nem tudo é um prego.
Tecnologias que melhoram a privacidade, ou PETs, têm como objetivo melhorar um ou mais aspectos mencionados acima. Mais concretamente, eles são soluções técnicas para proteger dados durante o armazenamento, processamento e comunicação.
Existem muitos PETs diferentes para escolher, mas os mais relevantes para a indústria blockchain incluem a sopa de três letras - ZKP, MPC, FHE e TEE - juntamente com métodos adicionais, como endereços ocultos:
Esses PETs podem ser combinados de várias maneiras para alcançar diferentes compensações e pressupostos de confiança. Também temos soluções que dependem de um terceiro confiável (privacidade intermediada), como comitês de disponibilidade de dados privados (DAC). Isso pode permitir privacidade de outros usuários, mas as garantias de privacidade vêm exclusivamente da confiança em um terceiro. Nesse sentido, se assemelha à "privacidade web2" (privacidade de outros usuários), mas pode ser fortalecido com garantias adicionais (criptográficas ou econômicas).
No total, identificamos 11 abordagens diferentes para garantir alguma privacidade em redes blockchain. Algumas das compensações observadas incluem:
Dentro dessas 11 categorias, muitas empresas diferentes estão trabalhando em uma ou mais soluções. Abaixo está uma visão geral (não exaustiva) do estado atual da indústria: