Confiança descentralizada entre bancos no AzureDecentralized trust between banks on Azure

Neste cenário de exemplo é útil para bancos ou quaisquer outras instituições que deseja estabelecer um ambiente fidedigno para o compartilhamento sem recorrer a uma base de dados centralizado de informações.This example scenario is useful for banks or any other institutions that want to establish a trusted environment for information sharing without resorting to a centralized database. Para efeitos deste exemplo, iremos descrever o cenário no contexto de manter as informações de pontuação de crédito entre bancos, mas a arquitetura pode ser aplicada a qualquer cenário em que deseja compartilhar informações validadas com um um consórcio de organizações outro sem recorrer a utilização de um sistema central foi executado por uma entidade única.For the purpose of this example, we will describe the scenario in the context of maintaining credit score information between banks, but the architecture can be applied to any scenario where a consortium of organizations want to share validated information with one another without resorting to the use of a central system ran by one single party.

Tradicionalmente, bancos dentro de um sistema financeiro dependem de fontes centralizadas, como centrais de crédito para obter informações sobre a pontuação de crédito de um indivíduo e histórico.Traditionally, banks within a financial system rely on centralized sources such as credit bureaus for information on an individual's credit score and history. Uma abordagem centralizada apresenta uma concentração de riscos operacionais e, às vezes, uma aplicação de terceiros desnecessária.A centralized approach presents a concentration of operational risk and sometimes an unnecessary third party.

Com DLTs (tecnologia do livro razão distribuído), um consórcio de bancos pode estabelecer um sistema descentralizado, que pode ser mais eficiente, menos suscetível a ataques e servir como uma nova plataforma em que as estruturas inovadoras podem ser implementadas para resolver tradicional desafios de privacidade, a velocidade e o custo.With DLTs (distributed ledger technology), a consortium of banks can establish a decentralized system that can be more efficient, less susceptible to attack, and serve as a new platform where innovative structures can be implemented to solve traditional challenges with privacy, speed, and cost.

Neste exemplo irá mostrar-lhe como os serviços do Azure, como conjuntos de dimensionamento de máquinas virtuais, rede Virtual, o Cofre de chaves, o armazenamento, o Balanceador de carga, e Monitor pode ser rapidamente provisionado para a implementação de um blockchain de Ethereum PoA privada eficiente em que os bancos de membro pode estabelece seus próprios nós.This example will show you how Azure services such as virtual machine scale sets, Virtual Network, Key Vault, Storage, Load Balancer, and Monitor can be quickly provisioned for the deployment of an efficient private Ethereum PoA blockchain where member banks can establish their own nodes.

Casos de utilização relevantesRelevant use cases

Outros casos de utilização relevantes incluem:Other relevant use cases include:

  • Movimento de orçamentos alocados entre diferentes unidades de negócios de uma empresa multinacionalMovement of allocated budgets between different business units of a multinational corporation
  • Transfronteiriça pagamentosCross-border payments
  • Cenários de finanças TradeTrade finance scenarios
  • Sistemas de fidelidade que envolvem empresas diferentesLoyalty systems involving different companies
  • EcossistemasSupply chain ecosystems

ArquiteturaArchitecture

Diagrama de arquitetura de confiança do banco descentralizada

Este cenário aborda os componentes de back-end que são necessários para criar uma dimensionável, segura e monitorizados, enterprise blockchain rede privada dentro de um consórcio de dois ou mais membros.This scenario covers the back-end components that are necessary to create a scalable, secure, and monitored private, enterprise blockchain network within a consortium of two or more members. Detalhes de como esses componentes são aprovisionados (ou seja, dentro de diferentes subscrições e grupos de recursos), bem como os requisitos de conectividade (ou seja, VPN ou ExpressRoute) são deixados para sua consideração com base na política da sua organização requisitos.Details of how these components are provisioned (that is, within different subscriptions and resource groups) as well as the connectivity requirements (that is, VPN or ExpressRoute) are left for your consideration based on your organization's policy requirements. Eis como fluxos de dados:Here's how data flows:

  1. Um banco cria/atualizações de registo de crédito de uma pessoa através do envio de uma transação para a rede de blockchain via JSON-RPC.Bank A creates/updates an individual's credit record by sending a transaction to the blockchain network via JSON-RPC.
  2. Fluxos de dados do servidor de particular do aplicativo do banco A para o Azure Balanceador de carga e, em seguida, para um nó de VM ao validar na escala de máquina virtual definido.Data flows from Bank A's private application server to the Azure load balancer and subsequently to a validating node VM on the virtual machine scale set.
  3. A rede Ethereum PoA cria um bloco de cada vez predefinida (2 segundos para este cenário).The Ethereum PoA network creates a block at a preset time (2 seconds for this scenario).
  4. A transação é agrupada no bloco criado e validada em toda a rede de blockchain.The transaction is bundled into the created block and validated across the blockchain network.
  5. B bancária pode ler o registo de crédito criado pelo Banco A através da comunicação com o seu próprio nó da mesma forma, por meio de JSON-RPC.Bank B can read the credit record created by bank A by communicating with its own node similarly via JSON-RPC.

ComponentesComponents

  • Máquinas virtuais de conjuntos de dimensionamento de máquina virtual fornece o recurso de computação sob demanda para hospedar os processos de validador de blockchainVirtual machines within virtual machine scale sets provides the on-demand compute facility to host the validator processes for the blockchain
  • Key Vault é utilizado como o recurso de armazenamento seguro para as chaves privadas dos cada validadorKey Vault is used as the secure storage facility for the private keys of each validator
  • Balanceador de carga se propaga o RPC, configurar o peering, e pedidos de governação DAppLoad Balancer spreads the RPC, peering, and Governance DApp requests
  • Armazenamento de informações de rede persistente de alojamento e coordenar o leasingStorage hosting persistent network information and coordinating leasing
  • (Um agrupamento de alguns serviços do Azure) do Operations Management Suite fornece informações sobre os nós disponíveis, transações por minuto e consortium membrosOperations Management Suite (a bundling of a few Azure services) provides insight into available nodes, transactions per minute and consortium members

AlternativasAlternatives

A abordagem de Ethereum PoA é escolhida para este exemplo porque se trata de um ponto de entrada de bom para um consórcio das organizações que desejam criar um ambiente onde informações podem ser trocadas e partilhadas entre si facilmente no fidedigno, descentralizado e de fácil compreenda a forma.The Ethereum PoA approach is chosen for this example because it is a good entry point for a consortium of organizations that want to create an environment where information can be exchanged and shared with one another easily in a trusted, decentralized, and easy to understand way. Os modelos de solução do Azure disponíveis também fornecem uma forma rápida e conveniente, não apenas para um líder de consórcio iniciar um blockchain Ethereum PoA, mas também para as organizações de membro em consortium acelerar a seus próprios recursos do Azure no seu próprio grupo de recursos e a subscrição para aderir a uma rede existente.The available Azure solution templates also provide a fast and convenient way not just for a consortium leader to start an Ethereum PoA blockchain, but also for member organizations in the consortium to spin up their own Azure resources within their own resource group and subscription to join an existing network.

Para outros cenários estendidos ou diferentes, podem surgir preocupações, como a privacidade de transação.For other extended or different scenarios, concerns such as transaction privacy may arise. Por exemplo, num cenário de transferência de valores mobiliários, membros de um consórcio podem não querer suas transações seja visível mesmo para outros membros.For example, in a securities transfer scenario, members in a consortium may not want their transactions to be visible even to other members. Outras opções para Ethereum PoA existem que trata dessas questões na sua própria forma:Other alternatives to Ethereum PoA exist that addresses these concerns in their own way:

  • CordaCorda
  • QuórumQuorum
  • HyperledgerHyperledger

ConsideraçõesConsiderations

DisponibilidadeAvailability

[O Azure Monitor] monitor é utilizado para monitorizar continuamente a rede de blockchain para problemas garantir a disponibilidade.Azure Monitor is used to continuously monitor the blockchain network for issues to ensure availability. Uma ligação para um dashboard de monitorização personalizada com base no Azure Monitor será enviada para si após a implantação bem-sucedida do modelo de solução do blockchain utilizada neste cenário.A link to a custom monitoring dashboard based on Azure Monitor will be sent to you upon successful deployment of the blockchain solution template used in this scenario. O dashboard mostra nós que estão a enviar relatórios heartbeats nos últimos 30 minutos, bem como outras estatísticas úteis.The dashboard shows nodes that are reporting heartbeats in the past 30 minutes as well as other useful statistics.

Para outros tópicos de disponibilidade, consulte a [lista de verificação de disponibilidade] availability no Centro de arquitetura do Azure.For other availability topics, see the availability checklist in the Azure Architecture Center.

EscalabilidadeScalability

Uma preocupação popular para o blockchain é o número de transações que um blockchain pode incluir dentro de uma quantidade predefinida de tempo.A popular concern for blockchain is the number of transactions that a blockchain can include within a preset amount of time. Este cenário utiliza uma prova da autoridade onde tal escalabilidade pode ser melhor gerenciada que prova de trabalho.This scenario uses Proof-of-Authority where such scalability can be better managed than Proof-of-Work. Prova de autoridade de–redes com base, os participantes de consenso são conhecidos e geridos, tornando-o mais adequado para blockchain privada para um consórcio da organização que sabe um do outro.In Proof-of-Authority–based networks, consensus participants are known and managed, making it more suitable for private blockchain for a consortium of organization that knows one another. Parâmetros como média bloquear o tempo, transações por minuto e pode ser facilmente monitorizado através do dashboard personalizado do consumo de recursos de computação.Parameters such as average block time, transactions per minute and compute resource consumption can be easily monitored via the custom dashboard. Recursos, em seguida, podem ser ajustados em conformidade com base nos requisitos de dimensionamento.Resources can then be adjusted accordingly based on scale requirements.

Para obter orientações gerais sobre a criação de soluções escaláveis, consulte a [lista de verificação de escalabilidade] scalability no Centro de arquitetura do Azure.For general guidance on designing scalable solutions, see the scalability checklist in the Azure Architecture Center.

SegurançaSecurity

[O Azure Key Vault] vault é utilizado para armazenar e gerir as chaves privadas dos validadores facilmente.Azure Key Vault is used to easily store and manage the private keys of validators. A implementação do padrão neste exemplo cria uma rede de blockchain que está acessível através da internet.The default deployment in this example creates a blockchain network that is accessible via the internet. Para o cenário de produção onde for o pretendido uma rede privada, os membros podem ser ligados entre si através de ligações de gateway VPN de VNet a VNet.For production scenario where a private network is desired, members can be connected to each other via VNet-to-VNet VPN gateway connections. Os passos para configurar uma VPN estão incluídos na secção recursos relacionados abaixo.The steps for configuring a VPN are included in the related resources section below.

Para obter orientações gerais sobre como criar soluções seguras, consulte a documentação de segurança do Azure.For general guidance on designing secure solutions, see the Azure Security Documentation.

ResiliênciaResiliency

O blockchain Ethereum PoA pode próprio fornecer algum grau de resiliência à medida que os nós de validador podem ser implementados em regiões diferentes.The Ethereum PoA blockchain can itself provide some degree of resilience as the validator nodes can be deployed in different regions. O Azure tem opções para implementações em regiões mais 54 em todo o mundo.Azure has options for deployments in over 54 regions worldwide. Um blockchain, tal como neste cenário fornece exclusivas e atualizar possibilidades de cooperação para aumentar a resiliência.A blockchain such as the one in this scenario provides unique and refreshing possibilities of cooperation to increase resilience. A resiliência da rede não é só os forneci para uma única parte centralizada, mas todos os membros do consortium.The resilience of the network is not just provided for by a single centralized party but all members of the consortium. Uma prova de autoridade–blockchain com base permite que a resiliência da rede ser ainda mais planeada ponderada e deliberada.A proof-of-authority–based blockchain allows network resilience to be even more planned and deliberate.

Para obter orientações gerais sobre como conceber soluções resilientes, consulte estruturar aplicações resilientes para o Azure.For general guidance on designing resilient solutions, see Designing resilient applications for Azure.

PreçosPricing

Para explorar o custo de executar este cenário, todos os serviços são previamente configurados na Calculadora de custos.To explore the cost of running this scenario, all of the services are pre-configured in the cost calculator. Para ver como o preço seria alterado para seu caso de uso específico, altere as variáveis apropriadas para corresponder aos requisitos de desempenho e a disponibilidade esperados.To see how the pricing would change for your particular use case, change the appropriate variables to match your expected performance and availability requirements.

Nós fornecemos três perfis de exemplo de custos com base no número de instâncias de VM de conjunto de dimensionamento que execute as suas aplicações (as instâncias podem residir em regiões diferentes).We have provided three sample cost profiles based on the number of scale set VM instances that run your applications (the instances can reside in different regions).

  • Pequenas: Este exemplo de preços está correlacionada com 2 VMs por mês com a monitorização desativadaSmall: this pricing example correlates to 2 VMs per month with monitoring turned off
  • Médio: Este exemplo de preços está correlacionada com 7 VMs por mês com a monitorização ativadaMedium: this pricing example correlates to 7 VMs per month with monitoring turned on
  • Grande: Este exemplo de preços está correlacionada com 15 VMs por mês com a monitorização ativadaLarge: this pricing example correlates to 15 VMs per month with monitoring turned on

O preço acima é membro de um consórcio iniciar ou ingresse numa rede de blockchain.The above pricing is for one consortium member to start or join a blockchain network. Normalmente num consórcio onde há várias empresas ou organizações envolvido, cada membro irá obter a respetiva subscrição do Azure.Typically in a consortium where there are multiple companies or organizations involved, each member will get their own Azure subscription.

Próximos PassosNext Steps

Para ver um exemplo deste cenário, implementar o [aplicação de demonstração de blockchain Ethereum PoA] deploy no Azure.To see an example of this scenario, deploy the Ethereum PoA blockchain demo application on Azure. Em seguida, reveja os Leiame do código-fonte cenário.Then review the README of the scenario source code.

Para obter mais informações sobre como utilizar o modelo de solução Ethereum prova da autoridade do Azure, veja esta guia de utilização.For more information on using the Ethereum Proof-of-Authority solution template for Azure, review this usage guide.