Nym mixnet e integração com WalletConnect — primeiros passos

O destaque para esse trabalho de um estagiário recente da Nym, mostra como a mixnet pode se conectar ao WalletConnect, protegendo dApps e carteiras.

WalletConnect é um protocolo Web3 de código aberto que permite interações seguras entre dApps e carteiras de criptografia, suportando mais de 300 carteiras. Como a maior parte da Web3, o tráfego de comunicações ocorre na internet aberta, deixando os usuários vulneráveis à vigilância, desanonimização e ataques.

O trabalho exploratório do estagiário da Nym Raoul demonstrou a viabilidade de uma integração entre o WalletConnect e a Nym mixnet para proteger o tráfego do WalletConnect na camada de rede.

A proteção do padrão é crítica para o futuro da Web3. Aplicativos descentralizados só se tornarão o futuro da web se as pessoas que os usarem puderem ter certeza de que sua atividade é privada e segura.

Essa prova inicial de conceito mostra um potencial promissor de como a mixnet pode ser conectada a protocolos mais amplos de carteira de código aberto, protegendo as transações entre carteiras e dAps contra a vigilância.

No lado do dApp, essa integração exploratória é baseada na ferramenta ’Fornecedor ethereum’, enquanto para as carteiras, a integração protege o WalletConnect TypeScript SDK para carteiras baseadas em navegador.

Por favor, note que esta não é uma integração do usuário final com proteções de privacidade completas, mas apenas delimitando as possibilidades de uma integração futura. É um exercício de viabilidade, bifurcado do repositório WalletConnect original. Esta proposta inclui a vinculação via ‘Node Package Manager’, enquanto o dApp escolhido usa a integração WalletConnect convencional. Confiar nessa integração para proteções de privacidade é arriscado por duas razões principais:

  • Nem todos os dApps integram o WalletConnect da mesma maneira
  • O repositório bifurcado já está por trás do upstream em termos de commits, criando sérios problemas de incompatibilidade.

No entanto, a integração funciona e, portanto, sua lógica é sólida, abrindo caminho para integrações oficiais mais formalizadas que estão por vir.

Se você é um desenvolvedor e deseja tentar essa integração, aqui estão os passos:

1. Escolha uma carteira e um aplicativo das 180 carteiras e 450 dApps que atualmente funcionam com o WalletConnect.

2. Faça o download do código-fonte dessa carteira e dApp.

3. Baixe o walletconnect-utils-nym e o walletconnect-monorepo-nym.

4. Execute ‘npm link’ em cada pacote modificado para criar uma versão local e importável.

5. Se a carteira e o dApp dependem do SDK do WalletConnect TS e do provedor Ethereum, a integração foi projetada com essas ferramentas em mente. Pular para o passo 6.

6. Se a carteira e/ou o dApp o fizerem não confie no SDK do WalletConnect TS ou no provedor Ethereum, mas em uma biblioteca de terceiros, vá em frente e baixe as bibliotecas intermediárias. Execute o link npm conforme necessário para esses intermediários.

7. Execute ‘npm install’ primeiro para a carteira e dApp.

8. Atualize as dependências no código-fonte da carteira e do dApp para usar a versão com tecnologia Nym, por exemplo, nym-ethereum-provider ou nym-web3wallet.

9. Vincule as dependências habilitadas para nym executando ‘npm link nym-package-name-1 … nym-package-name-n’

10. Passo opcional: atualize o downflow de parâmetros para incluir portas Nym.

11. Execute um cliente Nym no dispositivo da carteira. A porta padrão para o cliente Nym deve ser 1970.

12. Execute dois clientes Nym no dApp. As portas padrão para esses clientes Nym devem ser 1977 e 1990.

13. Execute o dApp habilitado para Nym e a carteira habilitada para Nym.

14. Isso é!

Fique de olho neste blog e nas redes sociais da Nym para mais notícias sobre integração. Com a liberação de mixFetch, os desenvolvedores agora podem conectar e jogar as poderosas proteções de privacidade da Nym mixnet em seus projetos com muito mais facilidade.

Muito obrigado a Raoul por seu importante trabalho!

Nym está sempre buscando talentos promissores para se juntar à equipe principal como estagiários remunerados. Se você compartilha a visão da Nym de privacidade para todos, entre em contato para saber mais sobre oportunidades de estágio.

Link do texto base em inglês aqui.

Faça parte da comunidade da Nym

Discord // Telegram // Element // Twitter