Princípio de operação do blockchain: quem cria blocos

Anonim

Quando não há intermediários na transação, qualquer participante pode enganar o outro. No Blockchain, o problema é resolvido usando algoritmos matemáticos rigorosos para os quais os blocos são criados.

No material, vamos dizer quem cria e verifica os blocos no blockchain. Você aprenderá como os algoritmos de consenso garantem a segurança desse processo.

  1. P2P: onde redes de pares são usadas
  2. Criptografia no blockchain: nos dedos
  3. Blockchalter - cadeia de blocos de transação. Nós desmontamos a definição de acordo com
  4. Criptografia no blockchain: Por que você precisa de uma assinatura digital?
  5. Princípio de operação do blockchain: quem cria blocos
  6. Para que fins e tarefas se encaixa no blockcha

Lembre-se de conceitos básicos

  • Uma rede de pares é uma rede em que os nós interagem uns com os outros sem um intermediário.
  • O Blockchain é uma espécie de redes peer-to-peer, uma cadeia de blocos de transação.
  • Bloco - estrutura especial para gravação de transações.
  • Transação - uma entrada em mudanças no estado de ativos.

Desconfiança no blockchain

Como não há servidor no blockchain, adicione e verifique informações aos próprios usuários. Ao mesmo tempo, cada participante pode perseguir seus interesses pessoais ao dano à segurança do blockchain. A partir daqui, há um problema de desconfiança dos participantes entre si. Para resolvê-lo, algoritmos matemáticos são usados, o que será discutido mais.

Imagine que existem ativos em sua carteira, e outro usuário blockchain acredita que eles não são. Sem interferência externa, é difícil decidir qual dos dois direitos. É necessário escolher entre os usuários daqueles que irão verificar as transações e adicionar apenas o correto. Esses usuários são chamados de miners.

Mainers - Participantes bloqueados que estão envolvidos na criação de novos blocos e cheques de transação.

Para organizar o funcionamento adequado dos mineiros, é necessário concordar, quem será e como eles realizarão seu trabalho. Esta é uma tarefa difícil, porque você precisa criar essas regras, o que será mais lucrativo para observar os mineiros do que quebrar. Este é um exemplo clássico de uma tarefa da teoria do jogo: Como escolher uma estratégia que será a mesma vantajosa para os participantes com interesses diferentes.

Tal tarefa foi formulada e resolvida por matemáticos no século passado. Agora esta solução fornece segurança tanto no blockchain quanto em outras tecnologias complexas. Para entender como as principais conseguem violar os interesses uns dos outros, considere essa tarefa mais.

A tarefa dos generais bizantinos

No artigo científico de 1982, foi formulado um dilema lógico. Isso ilustra o problema de comunicar os nós de uma rede peer-to-peer que negociam o próximo passo. Como analogia, o bizâncio foi usado - um antigo estado feudal com uma infinidade de exércitos independentes. Daí o nome - a tarefa dos generais bizantinos.

A ação ocorre durante o cerco da cidade do exército bizantino. À noite, Legiões de lados diferentes cercavam a cidade. Os generais de cada legião estão esperando pela ordem do comandante-chefe. Opções de pedido: "ataque" ou "recuo".

Princípio de operação do blockchain: quem cria blocos 21098_1
Os generais estão aguardando a ordem do comandante em chefe para resolver "ataque" ou "retirado"

A primeira complexidade da tarefa - o Império está em declínio. Qualquer um dos generais e até mesmo o comandante-chefe pode ser traidor de bizânio interessado em derrota. Os generais precisam ser considerados para não permitir resultados desfavoráveis. No total, três resultados da batalha:

Resultado favorável. Se todos os generais atacarem - Bizâncio destruir o inimigo.

Princípio de operação do blockchain: quem cria blocos 21098_2

Resultado intermediário. Se todos os generais se retiram - a bizantia reterá seu exército.

Princípio de operação do blockchain: quem cria blocos 21098_3

Um resultado desfavorável. Se alguns generais forem atacados, e alguns se retirarão - o inimigo eventualmente destrói todo o exército de Bizâncio em partes.

Princípio de operação do blockchain: quem cria blocos 21098_4

Se cada geral agir a seu critério, então a probabilidade de um resultado favorável é bastante baixa. Portanto, os generais precisam trocar informações entre si para vir a uma única solução.

A segunda complexidade na tarefa é a falta de um canal de comunicação confiável entre os generais. Mesmo que não haja traidores entre os generais, a informação pode ser falsa. Por exemplo, o correio atrasará ou captura. Esta situação confundirá outros generais e uma decisão incorreta será feita. Em tais condições, você precisa desenvolver uma estratégia unificada de ações que serão vantajosas para todos os generais.

Princípio de operação do blockchain: quem cria blocos 21098_5
Um dos generais não enviou a mensagem certa, então outros não sabem como atacá-los ou recuar

A matemática provou que é sempre possível obter uma solução nesta tarefa, se os generais corretos forem mais de dois terços do total. Em diferentes sistemas, a tarefa pode ser resolvida de maneiras diferentes.

Tolerância a falha bizantina - a capacidade da rede para continuar a trabalhar, mesmo que alguns dos nós se recusassem ou agem maliciosamente. Em outras palavras, esta propriedade da rede em que a tarefa dos generais bizantinos foi resolvida.

A tolerância a falha bizantina é necessária nos sistemas de motores de aeronaves, em usinas nucleares e praticamente em qualquer sistema, cujas ações dependem dos resultados do trabalho de um grande número de sensores. Até o SpaceX considera como um possível requisito para seus sistemas.

Se esta tarefa é aplicar ao contexto do blockchain, os generais são mineiros. Eles devem concordar e reconhecer a transação para real para que caísse no blockchain. Este processo é chamado de consenso.

Princípio de operação do blockchain: quem cria blocos 21098_6
Mainers exibir todas as transações e decidir confirmá-los ou rejeitar

Por exemplo, os mineiros vêem que um usuário quer enviar bitcoins para outro. O primeiro Maestre acredita que tal transação deve ser aprovada. O segundo suspeita de que esta operação produz um invasor. O terceiro desconectado da rede e não verificou a transação. Tome uma única solução e, em seguida, venha para consenso.

Como a tarefa dos generais bizantinos tem várias soluções, então blocos diferentes alcançam a tolerância a falha bizantina usando diferentes algoritmos de consenso. Considere mais o mais comum.

Consenso de algoritmos.

O blockchain funciona com base em uma rede distribuída. Não há centro único que gerencie essa rede. Para organizar a operação segura do blockchain, você deve negociar quem será mineiro e como criará blocos. Mainers trabalham em regras estritamente definidas chamada algoritmo de consenso.

O algoritmo de consenso é um método que descreve como o Mainer é selecionado no blockchain e pelos quais as regras criam blocos.

Para entender melhor o que é necessário um consenso no sistema de blockchain, imagine os inquilinos de um prédio de apartamentos. Os blockchas são necessários para interagir uns com os outros e tomar decisões sobre o desenvolvimento da casa: coletar dinheiro para revisão, escolha a organização de manutenção ou nomear o dever. Existem três maneiras de negociar - três diferentes algoritmos de consenso. Cada um deles é baseado em um determinado modelo matemático.

Prova de trabalho (pow) é um algoritmo para evidência de trabalho. Main pode se tornar qualquer colete em casa. Para criar novos blocos, ele terá que usar seu computador para resolver tarefas criptográficas complexas.

O algoritmo considerará a versão correta do blockchain no qual a maioria dos blocos. E o máximo de todos os blocos estará na versão, para a criação dos quais os inquilinos passaram a maior parte de todas as capacidades do computador. Um método muito democrático é obtido: Se 51% dos mineiros acreditam que as transações em blocos estão corretas e serão. Portanto, o blockchain é quase impossível de hackear.

Princípio de operação do blockchain: quem cria blocos 21098_7
Novos blocos criam esses residentes que têm um computador

Prova de estaca (POS) é um algoritmo para a parcela comprovada de propriedade. Mainers tornam-se aqueles que têm mais ativos no blockchain. Teremos esses inquilinos com os maiores apartamentos. E no blockchalter etérico, por exemplo, serão usuários que têm a etef de cryptocurrency. Com este algoritmo, os custos de eletricidade são mínimos, uma vez que a criação de blocos no blockchain não requer mais resolver tarefas criptográficas complexas. Quanto mais sua participação no blockchain, mais muitas vezes você criará novos blocos.

A versão certa do blockchain, como na prova de trabalho, será considerada aquela em que a maioria dos blocos. Mas a prova de estaca não pode ser chamada democrática. A maioria dos blocos criará a maioria dos residentes, mas os inquilinos mais ricos. No entanto, é ainda mais seguro. Se Majnem pertence à maior parte da casa, então ficará malicioso acontecer.

Princípio de operação do blockchain: quem cria blocos 21098_8
Novos blocos criam residentes com maiores apartamentos

O Prof of Authority (POA) é um algoritmo de prova de personalidade. Pode ser que os inquilinos se reunissem e decidissem que haverá um apartamento para criar blocos. Este algoritmo é distribuído em blocos fechados privados. Por exemplo, é adequado para administrar um apartamento em casa do nosso exemplo.

O próprio mineiro elegeu escolhe a versão verdadeira do blockchain. Ele terá que se identificar para que todos os residentes acreditem nele. Se em algum momento os inquilinos deixarão de ser consoantes com as soluções manejadas, elas serão capazes de atribuir outra. O novo maior vai começar a construir sua cadeia de blocos, e o velho blockchain existirá separadamente. Tal processo no blockchain é chamado Hardforka.

Princípio de operação do blockchain: quem cria blocos 21098_9
Novos blocos cria esse inquilino, que foi escolhido com antecedência

Algoritmos de consenso são muito. Constantemente inventar novos, mas esses três são os mais conhecidos, testados pelo tempo e freqüentemente usados.

Conclusão

Em todas as redes peer-to-peer, há desconfiança entre os participantes. No blockchain, os mineiros resolvem esse problema. Estes são os usuários que verificam as transações e adicionam apenas corretos a novos blocos.

O artigo de 1982 descreve a tarefa de generais bizantinos. Foi descrito pela primeira vez no algoritmo de como a rede pode continuar a trabalhar, mesmo que alguns dos nós fossem negados ou infligidos maliciosos.

No Blockchain, são usadas três variedades de algoritmos de consenso:

  • Prova de trabalho (pow) é um algoritmo para evidência de trabalho.
  • Prova de estaca (POS) é um algoritmo para a parcela comprovada de propriedade.
  • O Prof of Authority (POA) é um algoritmo de prova de personalidade.

Consulte Mais informação