Editar

Partilhar via


Projeto de arquitetura de computação multipartidária

Azure Blob Storage
Azure Kubernetes Service (AKS)
Azure SQL Database

A computação multipartidária ou computação que preserva a privacidade permite que as partes em uma relação comercial compartilhem dados, façam cálculos e cheguem a um resultado mútuo sem divulgar seus dados privados. Os serviços do Azure podem ajudá-lo a criar uma solução de computação com vários participantes. A solução pode incluir recursos baseados na nuvem e no local.

A computação multipartidária tem os seguintes atributos:

  • Mais de uma empresa ou organização está envolvida.
  • Os partidos são independentes.
  • As partes não confiam umas nas outras com todos os seus dados.
  • Todas as partes acedem a uma plataforma comum de computação e armazenamento de dados.
  • Alguns processos devem ser privados para algumas das partes envolvidas.

Uma cadeia de suprimentos é um exemplo de um fluxo de trabalho que envolve várias partes. As matérias-primas fluem desde o ponto de origem até ao fabrico. As mercadorias do fabricante passam por parceiros de envio para um centro de distribuição. A partir do centro, as mercadorias são enviadas para pontos de venda.

O diagrama mostra uma progressão de membros de uma cadeia de suprimentos como imagens de clip-art.

Este processo faz com que as empresas trabalhem em conjunto. Estas partes incluem o fornecedor de matérias-primas, o fabricante, as empresas de navegação, os operadores de armazéns e os pontos de venda a retalho. O produto muda de mãos várias vezes durante a cadeia de abastecimento. Diferentes partes precisam rastrear o produto em todas as etapas.

Tecnologias de computação multipartidárias

A computação multipartidária inclui diferentes tecnologias que permitem que as partes realizem transações seguras através de uma rede.

O diagrama mostra livros contábeis sendo implementados como computação confidencial, Serviço Kubernetes do Azure, máquinas virtuais ou ofertas de parceiros.

Uma opção são os livros razão distribuídos. Blockchain é um exemplo. Blockchain é um livro-razão de dados que pode ser compartilhado entre partes independentes, onde todas as partes confiam nos dados no livro-razão. As transações são coletadas em blocos, com cada bloco vinculado ao bloco anterior. Alguns livros contábeis distribuídos não usam blocos. Cada transação pode ser vinculada à transação anterior no livro-razão.

Outra possibilidade para computação multipartidária usa memória protegida por hardware na própria CPU. Essas regiões, chamadas enclaves seguros, são protegidas criptograficamente. Essa abordagem significa que mesmo um administrador privilegiado com acesso total ao servidor não pode olhar para o processo ou os dados dentro desses enclaves seguros.

Como enclaves seguros têm a capacidade de se atestar remotamente a outros enclaves, você pode projetar uma rede de várias organizações onde o sistema é executado a partir dos enclaves. Essa abordagem é chamada de ambiente de execução confiável.

O Azure Confidential Ledger é um serviço gerenciado pelo Azure que permite executar modelos de blockchain em enclaves seguros.

Finalmente, você pode escolher um sistema centralizado, que oferece imutabilidade e confiabilidade. O livro razão do Banco de Dados SQL do Azure oferece a confiança necessária para a computação de várias partes em um banco de dados relacional. Você pode não precisar de um consenso descentralizado, mas apenas do aspeto de imutabilidade do livro-razão.

Modelos de rede Blockchain

Para decidir se o blockchain é uma boa opção para um processo de negócios, considere estas perguntas:

  • Esse processo de negócios ultrapassa os limites de confiança?
  • Várias partes partilham e atualizam dados?
  • Existem intermediários que controlam a única fonte da verdade?
  • O processo envolve etapas de verificação manual de baixo valor?

Se as respostas a essas perguntas forem sim, o processo de negócios é um bom candidato para uma abordagem baseada em blockchain. Mesmo que algumas respostas sejam não, o blockchain ainda pode fazer sentido. Analise atentamente as outras opções de computação multipartidária antes de decidir.

Existem vários tipos de redes blockchain para atender às necessidades do seu negócio. Uma característica são os critérios de participação na rede. Se a rede é aberta para todos, é chamada de rede blockchain pública. Basta fazer o download do cliente e aderir. A maioria das criptomoedas funciona dessa forma.

Uma alternativa é uma rede blockchain com permissão, onde você precisa de permissão dos membros existentes da rede para participar. Este modelo funciona para empresas que lidam com organizações conhecidas. Por exemplo, uma superloja pode querer ter uma rede blockchain fechada e permitida para seus participantes da cadeia de suprimentos.

Um processo de negócios pode exigir apenas dados invioláveis ou invioláveis, o que não exigiria blockchain. Se o seu processo pode ser executado centralmente, ou todas as partes confiam umas nas outras com os dados, o blockchain também pode ser desnecessário.

Computação multipartidária do Azure

Esta seção descreve as opções de computação de vários participantes disponíveis usando os serviços do Azure.

Blockchain com Máquinas Virtuais do Azure

Você pode executar o software de contabilidade usando as Máquinas Virtuais do Azure. Crie quantas máquinas virtuais precisar e conecte-as em uma rede blockchain.

A implantação de suas próprias máquinas virtuais permite que você personalize sua solução. A abordagem inclui despesas gerais de gerenciamento, como atualizações, alta disponibilidade e requisitos de continuidade de negócios. Você pode ter várias organizações e várias contas na nuvem. Conectar os nós individuais pode ser complicado.

Existem modelos de implantação disponíveis no Azure para a maioria dos livros contábeis de blockchain para máquinas virtuais.

Blockchain no Kubernetes

Como a maioria dos livros contábeis de blockchain suporta a implantação em contêineres, você pode usar o Kubernetes para gerenciar os contêineres. O Serviço Kubernetes do Azure (AKS) é um serviço Kubernetes gerenciado pelo Azure que você pode usar para implantar e configurar seus nós de blockchain.

As implementações do AKS vêm com um serviço gerenciado para as máquinas virtuais que alimentam o cluster AKS. No entanto, sua organização ainda deve gerenciar seus clusters AKS e quaisquer opções de rede ou armazenamento em sua arquitetura.

Existem modelos de implementação disponíveis no Azure para a maioria dos livros de blockchain para AKS.

Blockchain como um serviço

O Azure dá suporte a serviços de terceiros que executam software de contabilidade no Azure. O prestador de serviços gere a infraestrutura. Eles lidam com manutenção e atualizações. Alta disponibilidade e gestão de consórcios estão incluídos no serviço.

A ConsenSys oferece Quorum no Azure. Quorum é uma camada de protocolo de código aberto que suporta aplicativos baseados em Ethereum.

Pode haver outras ofertas no futuro.

Azure confidential ledger

O Azure Confidential Ledger é um serviço gerenciado criado na Estrutura de Consórcio Confidencial. Ele implementa uma rede blockchain permitida de nós dentro da computação confidencial do Azure. O Confidential Ledger baseia-se na encriptação existente.

  • Encriptação existente
    • Dados em repouso. Criptografe dados inativos quando armazenados em um armazenamento de blob ou em um banco de dados.
    • Dados em trânsito. Criptografe dados que estão fluindo entre redes públicas ou privadas.
  • Computação confidencial
    • Dados em uso. Criptografe os dados que estão em uso, enquanto na memória e durante a computação.

A computação confidencial permite a encriptação de dados na memória principal. A computação confidencial permite processar dados de várias fontes sem expor os dados de entrada a outras partes. Esse tipo de computação segura suporta cenários de computação de várias partes em que a proteção de dados é obrigatória em todas as etapas, como deteção de lavagem de dinheiro, deteção de fraude e análise segura de dados de saúde.

Os dados armazenados no Livro-razão Confidencial são imutáveis e invioláveis no livro-razão somente anexo. O livro razão também é verificável de forma independente. O Confidential Ledger usa enclaves seguros para uma rede blockchain descentralizada e requer uma base de computação confiável mínima.

Livro razão da Base de Dados SQL do Azure

O livro-razão do Banco de Dados SQL do Azure permite que os participantes verifiquem a integridade dos dados armazenados centralmente sem o consenso de rede de uma rede blockchain. Para algumas soluções centralizadas, a confiança é importante, mas a infraestrutura descentralizada não é necessária. Esta abordagem evita a complexidade e as implicações de desempenho de tal infraestrutura.

O diagrama mostra a arquitetura do livro-razão do banco de dados.

O Ledger fornece recursos de prova de violação para seu banco de dados. Esses recursos permitem que você ateste criptograficamente que seus dados não foram adulterados.

O Ledger ajuda a proteger os dados de qualquer invasor ou usuário com privilégios elevados, incluindo administradores de banco de dados, sistema e nuvem. Os dados históricos são preservados. Se uma linha for atualizada no banco de dados, seu valor anterior será mantido em uma tabela de histórico. Isso oferece proteção sem alterações no aplicativo.

O Ledger é um recurso do Banco de Dados SQL do Azure. Ele pode ser habilitado em qualquer Banco de Dados SQL do Azure existente.

Comparando opções

Razão confidencial e razão do Banco de Dados SQL do Azure

Esta tabela compara o Razão Confidencial com o livro razão do Banco de Dados SQL do Azure.

Razão do Banco de Dados SQL Contabilidade confidencial
Sistema centralizado que requer provas de violação Sim No
Sistema descentralizado que exige que os dados sejam invioláveis Não Sim
Protege os dados relacionais contra adulteração Sim No
Protege dados não estruturados contra adulteração Não Sim
Armazenamento seguro off-chain de dados em cadeia em um blockchain Sim No
Armazenamento off-chain seguro para arquivos referenciados a partir de um blockchain Não Sim
Os dados relacionais podem ser consultados Sim No
Os dados armazenados não estruturados podem ser consultados Não Sim

Livro-razão confidencial e armazenamento de Blob do Azure

O recurso de armazenamento imutável do Armazenamento de Blobs do Azure garante que os dados gravados nele possam ser lidos, mas nunca alterados. Esta tabela compara essa tecnologia com o Confidential Ledger.

Contabilidade confidencial Armazenamento imutável
Enclaves de hardware confidenciais Sim No
Integridade de dados somente de acréscimo Sim Sim, limitado a intervalos
Encriptação de dados em utilização Sim No
Prova de livro-razão Blockchain Sim No

Decisão de computação multipartidária

Este diagrama resume as opções para a computação de várias partes com os serviços do Azure.

O diagrama resume as decisões para escolher uma opção de computação multipartidária.

Transfira um ficheiro do Visio desta arquitetura.

Próximos passos