Releitura clássica do 15º aniversário: O texto completo da versão chinesa do white paper do Bitcoin

Autor: Satoshi Nakamoto; Tradução chinesa: Li Xiaolai

Resumo: Uma versão puramente peer-to-peer de um sistema de dinheiro eletrônico que permitirá que os pagamentos on-line sejam enviados diretamente de uma parte para outra sem passar por uma instituição financeira. Embora as assinaturas digitais ofereçam algumas soluções, os principais benefícios dos pagamentos eletrónicos são compensados quando ainda é necessário um terceiro de confiança para evitar gastos duplos. Propomos uma solução que utilize uma rede peer-to-peer para resolver o problema da dupla despesa. A rede peer-to-peer carimbará a data e hora de cada transação inserindo os dados em hash da transação em uma extensa cadeia de prova de trabalho baseada em hash que é impossível de alterar a menos que seja completamente refeita. A cadeia mais longa é usada para provar os eventos que foram testemunhados e sua ordem e, por outro lado, para provar que vem do maior pool de hashpower da CPU. Contanto que a grande maioria do poder de computação da CPU seja controlada por nós benignos – ou seja, eles não cooperam com aqueles que tentam atacar a rede – então os nós benignos gerarão a cadeia mais longa e superarão o invasor. A rede em si precisa de uma estrutura mínima. A informação será divulgada com base nos melhores esforços e os nós entrarão e sairão livremente; No entanto, ao aderir, é sempre necessário aceitar a mais longa cadeia de provas de trabalho como prova de tudo o que aconteceu durante o período em que não estiveram envolvidos.

1. Introdução

O comércio pela Internet depende quase exclusivamente de instituições financeiras como terceiros confiáveis para processar pagamentos eletrônicos. Embora o sistema seja muito bom para a maioria das transações, ele ainda é prejudicado pelas falhas inerentes dos modelos baseados em confiança. Uma transação completamente irreversível não é praticamente possível, uma vez que as instituições financeiras não podem evitar disputas arbitrais. O custo da arbitragem aumenta os custos de transação, o que, por sua vez, limita o tamanho da transação mínima possível e simplesmente impede muitas transações de micropagamento. Além disso, há um custo ainda maior: o sistema não pode fazer pagamentos irreversíveis por serviços que não são reversíveis. A possibilidade de reversão criou uma necessidade generalizada de confiança. Os comerciantes têm de ser cautelosos com os seus clientes, incomodando-os para fornecer mais informações que não seriam necessárias se não fossem (se confiáveis). Uma determinada percentagem de fraude é considerada inevitável. Estes custos e incertezas de pagamento podem ser evitados quando os pagamentos são feitos diretamente entre pessoas usando moeda física; No entanto, não existe um mecanismo para ambas as partes efetuarem pagamentos através de canais de comunicação sem que um deles seja confiável.

O que realmente precisamos é de um sistema de pagamento eletrónico baseado em provas criptográficas em vez de confiança, que permita que quaisquer duas partes transacionem diretamente sem terem de confiar em terceiros. A transação irreversível da garantia de hashrate pode ajudar os vendedores a evitar fraudes, e o mecanismo de garantia diária para proteger os compradores é fácil de implementar. Neste artigo, vamos propor uma solução para gastos duplos, usando um servidor de carimbo de data/hora distribuído peer-to-peer para gerar provas baseadas em hashrate que registram cada transação em ordem cronológica. O sistema é seguro, desde que os nós honestos geralmente tenham mais poder de CPU do que os atacantes que cooperam entre si.

2. Transações

Definimos uma moeda eletrónica como uma cadeia de assinaturas digitais. Quando um proprietário dá uma moeda a outra pessoa, fá-lo anexando a seguinte assinatura digital ao final da cadeia de assinatura digital: o hash da transação anterior e a chave pública do novo proprietário. O beneficiário pode verificar a propriedade da cadeia de assinatura digital verificando a assinatura.

! [sQZAt4qlbgm150hgxHy4ui11TxFPpIbbi5Z7GUia.jpeg] (https://img.jinse.cn/7126684_watermarknone.png "7126684")

O problema com esse caminho é que o destinatário não pode verificar se ninguém pagou duas vezes entre os proprietários anteriores. Uma solução comum é trazer uma autoridade centralizada confiável, ou "casa da moeda", e fazer com que ela verifique se há gastos duplos em cada transação. Após cada transação, a moeda deve ser devolvida à casa da moeda, que emite uma nova moeda. Além disso, apenas as moedas emitidas diretamente pela Casa da Moeda são credíveis e não foram duplamente pagas. O problema com esta solução é que o destino de todo o sistema monetário está ligado à empresa que gere a casa da moeda (como um banco), e todas as transações devem passar por ela.

Precisávamos de uma maneira de o destinatário confirmar que o proprietário anterior não havia assinado nenhuma transação anterior. Para os nossos propósitos, apenas as primeiras transações contam, por isso não nos preocupamos com tentativas subsequentes de gastos duplos. A única maneira de confirmar que uma transação não existe é ser informado de todas as transações. No modelo da Casa da Moeda, a Casa da Moeda está ciente de todas as transações e é capaz de confirmar a ordem dessas transações. Para poder realizar isso sem o envolvimento de uma "parte confiável", o registro de transação deve ser declarado publicamente1, e precisamos de um sistema que permita que os participantes concordem com o mesmo histórico de transações exclusivo que recebem. O beneficiário tem de provar que, no momento de cada transação, a maioria dos nós pode concordar que foi a primeira a ser recebida.

3. Servidor de carimbo de data/hora

Esta solução começa com um servidor de carimbo de data/hora. Eis como funciona um servidor de carimbo de data/hora: ele carimba a data e hora do hash de um conjunto de registros e, em seguida, transmite o hash, como faz um jornal, ou como um post em uma Usenet.2 3 4 5. Obviamente, um carimbo de data/hora prova que os dados existiam antes desse ponto no tempo, caso contrário, o hash não teria sido gerado. Cada carimbo de data/hora contém um carimbo de data/hora anterior em seu hash, formando assim uma cadeia; Cada novo carimbo de data/hora é adicionado após o carimbo de data/hora anterior.

! [IkJWI40CL5rPFbmKNx829DpApCPH8JY1zjTQ9neY.jpeg] (https://img.jinse.cn/7126685_watermarknone.png "7126685")

4. Prova de Trabalho

Para implementar um servidor de carimbo de data/hora distribuído baseado ponto a ponto, precisamos usar um sistema de prova de trabalho como o Hash Cash 6 de Adam Burke, em vez de algo como um post de jornal ou grupo de notícias. A chamada prova de trabalho é encontrar um valor; Para que esse valor seja verdadeiro: depois de extrair um valor de hash para ele — por exemplo, usando SHA-256 para calcular um valor de hash — o valor de hash deve começar com um determinado número de zeros. Cada requisito adicional de 0 aumenta exponencialmente a quantidade de trabalho, e a verificação dessa quantidade de trabalho requer apenas um hash para ser calculado.

Em nossa rede de carimbo de data/hora, implementamos a prova de trabalho da seguinte maneira: continuamos adicionando um nonce a um bloco até que um valor que satisfaça as condições seja encontrado; A condição para isso é que o hash do bloco comece com o número especificado de 0s. Uma vez que o resultado do consumo de energia de computação da CPU satisfaça a prova de trabalho, o bloco não pode mais ser alterado, a menos que todo o trabalho anterior seja refeito. Como novos blocos são adicionados o tempo todo, alterar o bloco atual significa reterminar todos os blocos subsequentes.

! [L5fHgxjJJ6fSYcFToKfNERzgNlhNgUwdgMiNG2N5.jpeg] (https://img.jinse.cn/7126686_watermarknone.png "7126686")

A prova de trabalho também resolve o problema de como decidir quem pode tomar decisões em nome da maioria. Se a chamada "maioria" é baseada em uma abordagem "um endereço IP, um voto", então qualquer pessoa que possa lidar com muitos endereços IP pode ser considerada uma "maioria". A prova de trabalho é essencialmente "uma CPU, um voto". A chamada "decisão maioritária" é representada pela cadeia mais longa, porque é a cadeia que nela tem sido mais trabalhada. Se a maioria do poder de computação da CPU for controlada por nós honestos, então a cadeia honesta crescerá mais rápido e será muito mais rápida do que outras cadeias concorrentes. Para alterar um bloco que já foi produzido, um invasor teria que recompletar a prova de trabalho para esse bloco e todos os blocos subsequentes e, em seguida, alcançar e superar o trabalho do nó honesto. Este artigo mostra por que a probabilidade de um invasor atrasado alcançar diminui exponencialmente à medida que o número de blocos aumenta.

A fim de lidar com o número crescente de poder de computação de hardware e o número de contribuições de nós que podem mudar ao longo do tempo, a dificuldade de prova de trabalho é determinada por uma média móvel do número de blocos produzidos por hora, em média. Se o bloco for gerado muito rapidamente, a dificuldade aumentará.

5. Rede

As etapas para executar a rede são as seguintes:

  1. Todas as novas transações são transmitidas para todos os nós;
  2. Cada nó empacota novas transações em um bloco;
  3. Cada nó começa a encontrar uma prova de trabalho difícil para este bloco;
  4. Quando um bloco encontra sua prova de trabalho, ele transmite o bloco para todos os nós;
  5. Muitos outros nós aceitarão o bloco se e somente se as seguintes condições forem atendidas: todas as transações são válidas e não foram pagas duas vezes;
  6. Muitos nós indicam à rede que aceitam o bloco tratando o hash do bloco aceito como o hash antes do novo bloco quando o próximo bloco é criado.

O nó sempre pensa que a cadeia mais longa é a correta e continua adicionando novos dados a ela. Se dois nós transmitirem simultaneamente duas versões diferentes do "Next Block" para a rede, alguns nós receberão um deles primeiro, enquanto outros receberão o outro primeiro. Nesse caso, os nós continuarão trabalhando no bloco que receberam primeiro, mas também salvarão o outro ramo, caso ele se torne a cadeia mais longa. Quando a próxima prova de trabalho é encontrada e uma das ramificações se torna mais longa, essa divergência temporária é resolvida e os nós que trabalham na outra ramificação mudam para uma cadeia mais longa.

Novas transações não precisam necessariamente ser transmitidas para todos os nós. Contanto que nós suficientes sejam alcançados, não demorará muito para que essas transações sejam agrupadas em um bloco. Bloquear transmissões também permite que algumas mensagens sejam descartadas. Se um nó não receber um bloco, o nó perceberá que perdeu o bloco anterior quando receber o próximo bloco e fará uma solicitação para substituir o bloco ausente.

6. Incentivos

Por convenção, a primeira transação de cada bloco é uma transação especial que gera uma nova moeda e pertence ao gerador do bloco. Isso recompensa os nós por apoiarem a rede e fornecerem uma maneira de emitir moedas em circulação - em um sistema onde não há autoridade centralizada para emitir essas moedas de qualquer maneira. Assim, adicionar constantemente um certo número de novas moedas em circulação é como mineiros de ouro constantemente usando seus recursos para adicionar ouro à circulação. No nosso sistema, os recursos que são consumidos são o tempo que a CPU está a trabalhar e a energia que utilizam.

As recompensas também podem vir de taxas de transação. Se o valor de saída de uma transação for inferior ao seu valor de entrada, então a diferença é a taxa de transação; A taxa de transação é usada para recompensar os nós por empacotarem a transação neste bloco. Uma vez que o número definido de moedas esteja em circulação, as recompensas serão totalmente cobertas por taxas de transação, e não haverá absolutamente nenhuma inflação.

O mecanismo de recompensa também pode encorajar os nós a serem honestos. Se um invasor ganancioso pode roubar mais poder da CPU do que todos os nós honestos, ele deve fazer uma escolha: ele deve usar esse poder de computação para enganar os outros, roubando de volta o dinheiro que gastou? Ou usar esse poder de computação para gerar novas moedas? Ele deveria ser capaz de achar mais rentável jogar de acordo com as regras, que agora lhe permitem ganhar mais moedas do que todas as outras combinadas, o que é claramente mais rentável do que destruir secretamente o sistema e reduzir sua riqueza ao nada.

7. Recuperando espaço em disco

Se a transação mais recente de uma moeda ocorreu antes de blocos suficientes, o histórico de transações de gastos da moeda antes dessa transação pode ser descartado para economizar espaço em disco. Para fazer isso sem quebrar o hash do bloco, o hash do registro de transação será incluído em uma árvore Merkle, e apenas a raiz da árvore será incluída no hash do bloco. Ao cortar os ramos, os blocos antigos podem ser comprimidos. O hash interno não precisa ser salvo.

! [GOSWSMEutHTHRctOsFIZ6l0XiCZpQDCytysccOvF.jpeg] (https://img.jinse.cn/7126687_watermarknone.png "7126687")

Um cabeçalho de bloco sem qualquer histórico de transações tem cerca de 80 bytes. Supondo que um bloco é produzido a cada dez minutos, 80 bytes multiplicados por 6 vezes 24 vezes 365 equivalem a 4,2 milhões por ano. A partir de 2008, a maioria dos computadores à venda vinha com 2 GB de RAM, e a Lei de Moore prevê que 1,2 GB será adicionado por ano, mesmo que o cabeçalho do bloco tenha que ser armazenado na memória.

8. Confirmação de pagamento simplificada

É possível confirmar pagamentos mesmo sem ter que executar um nó de rede completo. Tudo o que o usuário precisa é de uma cópia do cabeçalho do bloco da cadeia mais longa com prova de trabalho - ele pode verificar o nó on-line para confirmar que ele tem a cadeia mais longa - e, em seguida, obter o nó de ramo da árvore Merkle, que por sua vez se conecta à transação quando o bloco foi carimbado. O usuário não pode verificar a transação sozinho, mas conectando-se a um determinado lugar na cadeia, ele pode ver que um nó de rede aceitou a transação, e o bloco adicionado depois disso confirma ainda mais que a rede aceitou a transação.

! [ZUtmrmdPnropshOMBHizRFDwDh0pncg5VGNnzWcI.jpeg] (https://img.jinse.cn/7126688_watermarknone.png "7126688")

Enquanto os nós honestos ainda estiverem no controle da rede, a verificação é confiável. No entanto, quando a rede é controlada por um atacante, a verificação é menos confiável. Embora os nós de rede possam verificar as próprias transações, desde que o invasor permaneça no controle da rede, o método de verificação simplificado pode ser enganado pelos registros de transações falsificados do invasor. Uma das contramedidas é que o software cliente aceita avisos de nós de rede. Quando um nó de rede encontra um bloco inválido, ele envia um alerta e uma notificação aparece no software do usuário para informar o usuário para baixar o bloco completo e avisar o usuário para confirmar a consistência da transação. Os comerciantes com pagamentos de alta frequência ainda devem querer executar seu próprio nó completo para garantir uma segurança mais independente e uma confirmação de transação mais rápida.

9. Combinação e divisão de valor

Embora seja possível processar moedas uma a uma, é desajeitado estabelecer um registro separado para cada centavo. Para permitir a divisão e consolidação de valores, as transações contêm múltiplas entradas e saídas. Em geral, ou uma única entrada de uma transação anterior relativamente grande, ou uma combinação de muitas entradas de uma quantidade menor; Ao mesmo tempo, existem no máximo duas saídas: uma para pagamento (ao beneficiário) e outra para troco (ao remetente), se necessário.

! [rRreBWdF8I1swfs5QtBILVrI0guXumj1ulPkbKyu.jpeg] (https://img.jinse.cn/7126689_watermarknone.png "7126689")

É importante notar que "fan-out" não é um problema aqui - "fan-out" significa que uma transação depende de várias transações, e essas transações dependem de mais transações. Nunca é necessário extrair uma cópia histórica completa e independente de qualquer transação.

10. Privacidade

Os modelos bancários tradicionais alcançam um certo grau de proteção da privacidade ao restringir o acesso a informações sobre comerciantes e terceiros confiáveis. Esta abordagem foi rejeitada devido à necessidade de tornar públicos todos os registos de transações. No entanto, a manutenção da privacidade pode ser alcançada cortando o fluxo de informações em outro lugar – o anonimato da chave pública. O público pode ver que fulano transferiu uma certa quantia de dinheiro para fulano, no entanto, não há informações que apontem para uma determinada pessoa. Este nível de liberação de informações é um pouco como a negociação no mercado de ações, apenas o tempo e o valor da transação individual são anunciados, no entanto, ninguém sabe quem são os dois lados da transação.

! [FACNxW4jyufvrE53ONTept7HLlHzayQU9CwIg4eX.jpeg] (https://img.jinse.cn/7126690_watermarknone.png "7126690")

Há outra camada de firewall. Os comerciantes devem habilitar um novo par de chaves públicas e privadas para cada transação, para que ninguém mais possa rastrear essas transações até o mesmo proprietário. Algumas operações com entradas múltiplas são ainda inevitavelmente retroativas, uma vez que essas entradas serão inevitavelmente identificadas como provenientes do mesmo proprietário. O perigo é que, se o proprietário de uma chave pública for exposto, todas as outras transações relacionadas a ela serão expostas.

11. Cálculos

Digamos um cenário em que um invasor está tentando gerar uma cadeia alternativa que é mais rápida do que a honesta. Mesmo que ele tenha sucesso, ele não pode fazer nenhuma mudança no sistema, ou seja, ele não pode criar valor do nada, e ele não pode obter dinheiro que nunca lhe pertence. Os nós de rede não tratam uma transação inválida como pagamento, e os nós honestos nunca aceitarão um bloco contendo tal pagamento. Na melhor das hipóteses, o atacante pode modificar suas próprias transações e tentar recuperar o dinheiro que já gastou.

A rivalidade entre a corrente honesta e o atacante pode ser descrita por um passeio aleatório binomial. Um evento de sucesso é quando um novo bloco acaba de ser adicionado à cadeia honesta, aumentando sua vantagem em 1, enquanto um evento de falha é quando a cadeia do invasor acaba de ser adicionada a um novo bloco, reduzindo a vantagem da cadeia honesta em 1.

A probabilidade de um atacante conseguir recuperar o atraso por trás é semelhante ao problema de um jogador ir à falência. Suponhamos que um apostador com fichas ilimitadas comece com um défice e lhe permita apostar um número ilimitado de vezes, com o objetivo de preencher o défice que já tem. Podemos calcular a probabilidade de que ele eventualmente será capaz de preencher o déficit, ou seja, a probabilidade de que o atacante será capaz de alcançar a cadeia honesta, da seguinte forma:

! [dxwr3HPLYbHZisFnpwH6hIvaudm3FchUzRFXaD7m.jpeg] (https://img.jinse.cn/7126691_watermarknone.png "7126691")

Uma vez que assumimos que p>,q Uma vez que o atacante precisa alcançar mais e mais blocos, a probabilidade de sucesso diminui exponencialmente. Se o atacante não tiver a sorte de dar um salto à frente no início, sua taxa de vitória será eliminada enquanto ele fica mais para trás.

Agora, considere quanto tempo o destinatário de uma nova transação terá que esperar para ter certeza total de que o remetente não pode alterar a transação. Assumimos que o remetente é um atacante que tenta convencer o beneficiário de que pagou o pagamento por um período de tempo e, em seguida, transferir o dinheiro de volta para si mesmo. Quando isso acontece, o destinatário receberá, naturalmente, um aviso, mas o remetente espera que o barco de madeira já esteja no barco.

O destinatário cria um novo par de chaves públicas e privadas e, em seguida, comunica as chaves públicas ao remetente pouco antes de assinar. Isso evita uma situação em que o remetente prepara um bloco na cadeia com antecedência com computação contínua, e tem a sorte de estar à frente o suficiente para executar a transação até lá. Uma vez que o dinheiro tenha sido enviado, o remetente desonesto começa a trabalhar secretamente em outro parachain, tentando adicionar uma versão reversa da transação a ele.

O beneficiário espera até que a transação seja embalada em um bloco, e já há blocos z que foram adicionados posteriormente. Ele não sabe exatamente o quão bem os atacantes estão se saindo, mas ele pode assumir que os blocos honestos gastam uma quantidade média de tempo no processo de gerar cada bloco; A progressão potencial de um atacante está em conformidade com uma distribuição de Poisson, com um valor esperado de:

! [Go4WNHNh1YtPsMqjI2XbNCMTnITJUIl9w8LqM6yj.jpeg] (https://img.jinse.cn/7126692_watermarknone.png "7126692")

Para calcular a probabilidade de um invasor ainda conseguir alcançar, precisamos multiplicar a densidade de probabilidade da distribuição Parzon pelo número de blocos que o invasor precisa alcançar pela probabilidade de que eles possam alcançar se estiverem atrás desse número de blocos:

! [5O3ugdwP0uoNL0qOnvLbnUvNTXGMBmxJj4yS00y3.jpeg] (https://img.jinse.cn/7126694_watermarknone.png "7126694")

Converter para um programa C...

! [XjwW5ZbFNIZCfiPFAnbg7b4iW4qp9A8g1LFKe2f2.jpeg] (https://img.jinse.cn/7126698_watermarknone.png "7126698")

Tomando alguns dos resultados, podemos ver que a probabilidade diminui exponencialmente à medida que z aumenta:

! [452fZL5ude7CUuUz85STQEcvquwOCHxhZ3pEhKRc.jpeg] (https://img.jinse.cn/7126700_watermarknone.png "7126700")

Se P for inferior a 0,1%...

! [zfsBufXK54KjstagaZXrPOUREzaoQU7VPy9eYjjX.jpeg] (https://img.jinse.cn/7126701_watermarknone.png "7126701")

12. Conclusão

Propomos um sistema de comércio eletrónico que não tenha de depender da confiança; O ponto de partida é uma estrutura de moeda simples que usa assinaturas digitais e, embora ofereça um controle de propriedade robusto, não pode evitar gastos duplos. Para resolver esse problema, propomos uma rede peer-to-peer que usa um mecanismo de prova de trabalho para registrar um histórico de transações públicas e, desde que o nó honesto possa controlar a maioria do poder de computação da CPU, é impossível para um invasor adulterar com sucesso o sistema apenas em termos de poder de computação. A robustez desta rede reside na sua simplicidade não estruturada. Os nós podem trabalhar simultaneamente em um instante com pouca colaboração. Eles nem precisam ser reconhecidos, porque o caminho da mensagem não depende de um destino específico; As mensagens só têm de ser divulgadas com base nos melhores esforços. Os nós entram e saem livremente e, quando se juntam, só precisam aceitar a cadeia de prova de trabalho como prova de tudo o que aconteceu enquanto estavam offline. Eles votam em seu poder de CPU e indicam sua aceitação de transações válidas, adicionando constantemente novos blocos válidos à cadeia e rejeitando blocos inválidos. Quaisquer regras e recompensas necessárias podem ser aplicadas através deste mecanismo de consenso.

Referências

  1. b-dinheiro Dai Wei (1998-11-01)
  2. Conceção de um serviço seguro de carimbo de data/hora com requisitos mínimos de confiança Henri Massias, Xavier Serret-Avila, Jean-Jacques Quisquater 20º Simpósio de Teoria da Informação no Benelux (1999-05)
  3. Como carimbo de data/hora de um documento digital Stuart Haber, W.Scott Stornetta Journal of Cryptology (1991) DOI: 10.1007/bf00196791
  4. Melhorando a eficiência e a confiabilidade do carimbo de data/hora digital Dave Bayer, Stuart Haber, W. Scott Stornetta Sequências II (1993) DOI: 10.1007/978-1-4613-9323-8_24
  5. Nomes seguros para bit-strings Stuart Haber, W. Scott Stornetta Atas da 4ª Conferência da ACM sobre Segurança Informática e das Comunicações - CCS '97(1997) DOI: 10.1145/266420.266430
  6. Hashcash - Uma contra-medida de negação de serviço Adam Back (2002-08-01)
  7. Protocolos para Criptos de Chave Pública Ralph C. Merkle 1980 IEEE Symposium on Security and Privacy (1980-04) DOI: 10.1109/sp.1980.10006
  8. Uma Introdução à Teoria da Probabilidade e suas Aplicações William Feller John Wiley & Sons (1957)
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • Comentar
  • Partilhar
Comentar
0/400
Nenhum comentário
  • Pino
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)