Blockchains públicas são inerentemente transparentes. Para que as blockchains funcionem em um ambiente descentralizado, qualquer peer (par) deve ser capaz de verificar, de forma independente, todas as transações. Uma rápida olhada nas redes
Bitcoin ou
Ethereum é suficiente para ver como seus bancos de dados são públicos.
Essa infraestrutura oferece várias vantagens, mas muitas vezes compromete a privacidade e o anonimato. Observadores podem fazer a associação entre transações blockchain e
endereços para, possivelmente, remover o anonimato de donos dos endereços.
As chamadas
criptomoedas pseudônimas são úteis para uma infinidade de aplicativos. No entanto, as moedas de privacidade podem ser mais indicadas para quem busca a verdadeira confidencialidade financeira. Quando se trata de criptomoedas privadas, a Monero está no topo da lista.
Monero (palavra em linguagem esperanto para "dinheiro") é uma
criptomoeda criada com base nos princípios de
unlinkability (impossibilidade de associação) e
untraceability (sem rastreabilidade). De forma simplificada, significa que não é possível estabelecer uma conexão entre duas transações de Monero, nem determinar a origem ou o destino dos fundos.
Este é o recurso da Monero. Ela ainda usa uma blockchain para rastrear a movimentação de fundos, mas utiliza criptografia pura para ocultar fontes, valores e destinos das transações. Vamos ilustrar isso comparando com o ledger do Bitcoin:
Diferente do Bitcoin, a blockchain da Monero seria algo assim:
Logo, abordaremos como ocorre essa ofuscação de informações.
Uma breve história da Monero
A Monero é um fork (bifurcação) da Bytecoin, uma criptomoeda de privacidade lançada em 2012. O protocolo da Bytecoin foi o primeiro baseado em
CryptoNote, uma
tecnologia open-source (de código aberto) que visava resolver alguns problemas do Bitcoin. Esses problemas são relacionados à mineração
ASIC (uso de hardware especializado para
mineração) e à falta de privacidade nas transações. Hoje, a tecnologia CryptoNote é a base de muitas criptomoedas com ênfase na confidencialidade.
Em 2014, os desenvolvedores que estavam insatisfeitos com a distribuição inicial da Bytecoin, fizeram um
fork, criando um novo projeto conhecido como
Bitmonero. Mais tarde, o nome foi alterado, removendo o "Bit" e chegando ao nome que conhecemos hoje,
Monero.
Ao pesquisar sobre a Monero, você encontrará os termos "ring signature" (assinatura em anel) e "stealth address" (endereços ocultos). Essas são duas das principais inovações que sustentam o anonimato das transações da Monero. Nesta seção, forneceremos uma visão geral dos dois conceitos.
O que são Transações Confidenciais e Ring Signatures
Uma ring signature é um tipo de
assinatura digital que pode ser executada por qualquer membro de um grupo de usuários que tenha as
chaves públicas dos membros do grupo. Qualquer pessoa pode verificar se um dos membros forneceu a assinatura. Mas não é possível dizer
qual deles o fez.
O artigo de 2001,
How to Leak a Secret, que detalhou essa estrutura, usa o exemplo de um ministério do governo. Suponha que um membro desse ministério – Bob – tenha alguma evidência que incrimine o primeiro-ministro. Bob quer provar a um jornalista que ele é, de fato, um membro do ministério, mas deseja manter seu anonimato.
Bob não seria capaz de fazer isso usando uma assinatura digital regular. Comparando-a com sua chave pública, qualquer um poderia dizer, com certeza, que somente a chave privada de Bob poderia gerar aquela assinatura. Ele poderia sofrer graves consequências por divulgar as atividades do primeiro-ministro. No entanto, se as chaves de outros membros do ministério forem usadas em um esquema de ring signature, não seria possível determinar qual dos membros enviou a mensagem. Ainda assim, poderíamos afirmar que foi um membro do ministério que vazou a informação, o que indicaria a autenticidade das informações.
Essa técnica é usada toda vez que você cria uma transação. Ao criar a transação, sua
carteira Monero usa chaves de outros usuários da blockchain para formar o "anel" (ring signature). Essas chaves atuam efetivamente como distrações – para um observador, qualquer pessoa no "anel" poder ter assinado a transação. Dessa forma, um estranho nunca pode determinar se um
output (saída) foi transferido ou não. Na melhor da hipóteses, na perspectiva do observador, ele poderia afirmar que um dos oito outputs da imagem abaixo
pode ter sido transferido. Os falsos outputs, usados como distração, são chamados de
mixin.
Anel com sete mixins.
Na imagem acima, o output verde é o que está sendo realmente transferindo. Os vermelhos são as distrações que você coletou da blockchain. Na visão de um observador, você poderia estar transferindo qualquer um dos oito outputs.
Antes, os outputs incluídos no anel precisavam ter o mesmo tamanho. Caso contrário, seria fácil de decifrar as distrações, pois os valores das transações eram visíveis. Você poderia ter, por exemplo, um anel contendo apenas outputs de 2 XMR.
A atualização para o RingCT (
Ring Confidential Transactions) mudou isso. Ela incorporou
Transações Confidenciais, uma técnica em que os valores das transações são ocultos. Sua integração ao protocolo Monero foi um grande avanço em termos de privacidade, pois significa que você não precisa mais trabalhar com denominações predefinidas. Agora é possível construir um "anel" com outputs de tamanhos diferentes, sem revelar nenhuma informação que possa ser usada para remover seu anonimato.
Stealth Addresses
As ring signatures ocultam a origem dos fundos, mas com
endereços públicos regulares, você ainda pode ver para onde estão indo. Isso pode ser um problema caso sua identidade esteja vinculada a um dos seus endereços blockchain.
Suponha que você use o mesmo endereço para cada pedido da sua loja online (e-commerce). Qualquer pessoa que fizer um pedido, poderá ver seu saldo e descobrir o endereço da sua empresa. Com isso, você pode acabar sendo um alvo.
O Stealth Adress (endereço oculto) oculta o destino dos fundos. Ele faz com que o remetente gere um endereço de uso único, com base em um endereço público, que será usado exclusivamente para essa transação. O endereço público pode ser algo como:
41mT1gUnYHK6mDAxVsKeB7SP9hVesbESbWcupd7mMYC73GL4nSgsEwTGKHGT7GKoSEdMKvs8Fdu1ufPJbo5BV4d1PfYiEew
Se procurarmos o endereço em um
block explorer da Monero, veremos que não é possível associar nenhuma transação a ele. Isso acontece porque quando um remetente envia fundos, é criado um endereço oculto, através de alguns cálculos, usando o endereço acima como base. O envio de XMR é feito para um novo endereço na blockchain. Cada endereço criado será diferente do endereço anterior e não é possível fazer associações.
No entanto, você tem duas informações que podem ser usadas: a
private view key (chave de exibição privada) e a
private spend key (chave de gasto privada). Como os nomes indicam, a view key permite ver todas as transações associadas ao seu endereço. Você pode fornecê-la a outras pessoas (seu contador, por exemplo) para conferir fundos que você recebeu. A spend key é, normalmente, o que você considera como sua
chave privada – usada para gastar suas
moedas.
A Monero possui uma política de privacy by default (privacidade por padrão), ou seja, não existe a opção de não usar um endereço oculto. Portanto, o ledger público é automaticamente oculto mas você ainda pode escolher divulgar algumas informações sobre suas transações.
As criptomoedas Monero e Bitcoin possuem algumas semelhanças. Entretanto, existem muitos aspectos únicos de cada uma.
Fungibilidade
Existe muita discussão em relação à
fungibilidade no ecossistema do Bitcoin. A fungibilidade refere-se à permutabilidade de um bem com outro bem do mesmo tipo. O ouro, por exemplo, é considerado fungível. Você pode trocar uma onça sua com a de outra pessoa e ainda serão funcionalmente idênticas. O mesmo vale para o dinheiro – você pode trocar uma nota de dez dólares por outra. Por outro lado, uma obra de arte como a Mona Lisa não é fungível, pois ela é única. Não existe outra unidade que possa substituí-la.
Para muitas outras moedas digitais, fica mais difícil determinar a fungibilidade. As unidades de Bitcoin são fungíveis a nível de protocolo, pois o software não faz nenhuma distinção entre cada unidade de BTC. A ambiguidade aparece nos termos social e político. Alguns afirmam que o Bitcoin não é fungível porque cada output (saída) é único. Outros argumentam que isso não importa.
Como a blockchain do Bitcoin é transparente, detalhes de transações, como valores e destinos, podem ser rastreados. Suponha que você recebeu uma nota de cinco dólares como troco em um supermercado. Essa nota pode já ter sido usada em uma transação criminosa anterior, mas isso não apresenta nenhum impacto na usabilidade da nota que está com você. Com o Bitcoin, houve incidentes em que
moedas foram recusadas ou confiscadas com base em sua história de "contaminação". Mesmo que os usuários não tenham conhecimento de transações passadas, a vigilância pode colocar moedas na "lista de contaminadas", afetando sua usabilidade como moeda. E é por isso que alguns consideram o Bitcoin, um ativo não fungível.
Alguns acreditam que essas práticas podem prejudicar algumas das propriedades que tornam as criptomoedas do ledger público atraentes. Moedas "limpas" criadas recentemente (e, portanto, não têm histórico) podem ser consideradas mais valiosas do que moedas antigas e "sujas".
Os que se opõem ao perfil da moeda acreditam que ela usa técnicas de análise não confiáveis e subjetivas. De fato, as ferramentas para
Coin Mixing e CoinJoining, as quais ofuscam a fonte dos fundos, estão cada vez mais acessíveis aos usuários.
A Monero contorna esses problemas desde o início. Como não é possível dizer a origem ou o destino dos fundos, ela é um tipo de moeda mais parecido com o dinheiro, quando comparada a outras moedas sem ênfase em privacidade. Mesmo em empresas com políticas rigorosas, o XMR de transações questionáveis pode ser trocado sem problemas.
No entanto, a privacidade extra da Monero tem um custo. As transações são muito maiores em tamanho, o que significa que existem obstáculos consideráveis a serem superados antes que o sistema possa
escalar para acomodar um número maior de usuários.
Curiosamente, sua forte fungibilidade rendeu até um certo grau de notoriedade à criptomoeda, superando o Bitcoin como opção para cibercriminosos envolvidos em
Cryptojacking,
Ransomware e transações na dark web.
Blocos e mineração
Como o Bitcoin, a Monero usa
Proof-of-Work para adicionar blocos de transações à blockchain. Como em todos os protocolos baseados no CryptoNote, ele foi projetado para ser
ASIC-resistant. O objetivo é impedir o domínio de
pools de mineração executando hardwares de mineração especializados e de alto desempenho.
O algoritmo Proof-of-Work da Monero (alterado recentemente de CryptoNight para RandomX) visa tornar o sistema mais justo, favorecendo a mineração com uso de
CPU e diminuindo a eficácia das GPUs. A lógica por trás disso é que a mineração será melhor distribuída se PCs mais comuns puderem manter a competitividade. Apesar disso,
poder de hashing permanece relativamente concentrado em
pools de mineração.
Em relação ao tamanho do
bloco, a Monero não tem um limite fixo, diferente dos 4 milhões em unidades de
peso de bloco do Bitcoin. Em vez disso, a Monero tem um
tamanho de bloco dinâmico, ou seja, os blocos podem se expandir para acomodar uma demanda maior. Assim, se a demanda for reduzida, o tamanho permitido diminui. O tamanho é calculado conforme o tamanho médio dos cem blocos anteriores (extraídos a cada dois minutos, em média). Os mineradores podem produzir blocos que excedem o limite, mas serão penalizados com uma recompensa reduzida.
Vale ressaltar que o
fornecimento não é finito, como é o caso do Bitcoin. A Monero também possui um cronograma decrescente de
recompensa de bloco, mas esse valor não tende a zero com o tempo. Em vez disso, o subsídio por bloco permanecerá indefinidamente em um valor fixo para incentivar os participantes a continuar minerando blocos.
Hard forks
Podemos observar outra diferença interessante entre Bitcoin e Monero, em termos de governança. O Bitcoin é um pouco aversivo aos
forks, na medida em que mesmo atualizações simples são muito discutidas antes de serem implementadas. Mas existe um motivo para isso. Às vezes, os desenvolvedores de Bitcoin precisam ser conservadores para garantir que o sistema permaneça estável, seguro e descentralizado.
Obviamente, os forks são apenas mecanismos de atualização de protocolo. Geralmente, eles são necessários para corrigir bugs ou adicionar novos recursos. No Bitcoin, no entanto, os usuários preferem evitá-los, pois podem causar divisão e representar uma ameaça à descentralização. Normalmente, os hard forks de Bitcoin surgem quando um grupo deseja criar uma nova criptomoeda a partir da rede existente. Fora isso, seu uso costuma ser relacionado à correção de vulnerabilidades mais urgentes.
Na Monero, no entanto, frequentes hard forks fazem parte do roteiro. Isso garante que o software se adapte rapidamente às alterações e possa implantar atualizações de segurança. Alguns acreditam que atualizações de protocolo "obrigatórias" são uma fraqueza, embora os hard forks da Monero não carreguem conotações negativas, como pode acontecer com outras criptomoedas. Isso não quer dizer que eles são infalíveis – hard forks frequentes aumentam o risco de uma vulnerabilidade passar despercebida e usuários não atualizados podem acabar saindo da rede.
Desenvolvimento da Monero
Como no Bitcoin, o desenvolvimento da Monero está aberto a todos. Qualquer pessoa pode contribuir com o código fonte e a documentação. A comunidade decide quais recursos adicionar, remover ou alterar. No momento da confecção deste artigo, o projeto conta com mais de 500 colaboradores. A equipe de desenvolvimento é formada por desenvolvedores como Riccardo Spagni (também conhecido como FluffyPony), Francisco Cabañas (ArticMine) e desenvolvedores pseudônimos de NoodleDoodle, othe e binaryFate.
Juntamente com os patrocínios, o
Community Crowdfunding System (CCS) é usado para financiar o desenvolvimento. Os usuários podem apresentar ideias que, se selecionadas pela comunidade, passam por um período de crowdfunding. Uma vez atingidos alguns marcos para a concretização do projeto, os fundos são enviados aos responsáveis.
Por anos, a Monero (XMR) tem sido a principal criptomoeda para quem busca garantia de privacidade. Possui uma comunidade dedicada de desenvolvedores comprometida em aumentar a confidencialidade das transações de seus usuários. Novas atualizações (como a integração
Kovri) procuram promover a missão de impedir associações e diminuir a rastreabilidade da criptomoeda.