Progettazione dell'architettura di calcolo multiparty

Archiviazione BLOB di Azure
Servizio Azure Kubernetes
database SQL di Azure

Il calcolo multiparty o il calcolo con mantenimento della privacy consente alle parti in una relazione aziendale di condividere i dati, eseguire calcoli e arrivare a un risultato reciproco senza divulgare i dati privati. I servizi di Azure consentono di creare una soluzione di elaborazione multiparty. La soluzione può includere risorse locali e basate sul cloud.

Il calcolo multiparty ha gli attributi seguenti:

  • Sono coinvolti più società o organizzazioni.
  • Le parti sono indipendenti.
  • Le parti non si fidano l'una dell'altra con tutti i dati.
  • Tutte le parti accedono a una piattaforma comune di elaborazione e archiviazione dei dati.
  • Alcuni processi devono essere privati per alcune parti coinvolte.

Una supply chain è un esempio di flusso di lavoro che coinvolge più parti. Le materie prime passano dal punto di origine alla produzione. Le merci provenienti dal produttore passano attraverso i partner di spedizione a un hub di distribuzione. Dall'hub, le merci vengono inviate ai punti vendita al dettaglio.

Il diagramma mostra una progressione dei membri di una supply chain come immagini clipart.

Questo processo ha aziende che lavorano insieme. Queste parti includono il fornitore di materie prime, il produttore, le aziende di spedizione, gli operatori del magazzino e i punti vendita al dettaglio. Il prodotto cambia le mani più volte durante la catena di fornitura. Le diverse parti devono tenere traccia del prodotto in tutte le fasi.

Tecnologie di elaborazione multiparty

Il calcolo multiparty include tecnologie diverse che consentono alle parti di eseguire transazioni in modo sicuro su una rete.

Il diagramma mostra i ledgers implementati come confidential computing, servizio Azure Kubernetes, macchine virtuali o offerte di partner.

Un'opzione è distributed ledgers. Blockchain è un esempio. Blockchain è un libro mastro di dati che può essere condiviso tra parti indipendenti in cui tutte le parti considerano attendibili i dati nel libro mastro. Le transazioni vengono raccolte in blocchi con ogni blocco collegato al blocco precedente. Alcuni ledgger distribuiti non usano blocchi. Ogni transazione può essere collegata alla transazione precedente nel libro mastro.

Un'altra possibilità per l'elaborazione multiparty usa la memoria protetta dall'hardware nella CPU stessa. Queste aree, denominate enclave sicure, sono protette in modo crittografico. Questo approccio significa che anche un amministratore con privilegi con accesso completo al server non può esaminare il processo o i dati all'interno di tali enclave sicuri.

Poiché le enclave sicure hanno la possibilità di attestarsi in remoto ad altre enclave, è possibile progettare una rete di più organizzazioni in cui il sistema viene eseguito dalle enclave. Questo approccio è denominato ambiente di esecuzione attendibile.

Azure offre un servizio gestito denominato Libro mastro riservato di Azure che consente di eseguire un modello blockchain in enclave sicuri.

Infine, è possibile scegliere un sistema centralizzato, che offre immutabilità e attendibilità. Azure SQL libro mastro del database offre l'attendibilità necessaria per l'elaborazione multiparty in un database relazionale. Potrebbe non essere necessario un consenso decentralizzato, ma solo l'aspetto immutabile del libro mastro.

Modelli di rete blockchain

Per decidere se la blockchain è adatta a un processo aziendale, considerare queste domande:

  • Questo processo aziendale supera i limiti di trust?
  • Le parti condividono e aggiornano i dati?
  • Ci sono intermediari che controllano l'unica fonte di verità?
  • Il processo prevede passaggi di verifica manuali a basso valore?

Se le risposte a queste domande sono , il processo aziendale è un buon candidato per un approccio basato su blockchain. Anche se alcune risposte non sono, la blockchain potrebbe comunque avere senso. Esaminare attentamente le altre opzioni di elaborazione multiparty prima di decidere.

Esistono diversi tipi di reti blockchain per soddisfare le esigenze aziendali. Una caratteristica è i criteri per partecipare alla rete. Se la rete è aperta per tutti, viene chiamata rete blockchain pubblica. È sufficiente scaricare il client e partecipare. La maggior parte delle criptovalute funziona in questo modo.

Un'alternativa è una rete blockchain autorizzata, in cui è necessaria l'autorizzazione dei membri esistenti della rete per l'aggiunta. Questo modello funziona per le aziende che gestiscono organizzazioni note. Ad esempio, un superstore può voler avere una rete blockchain chiusa e autorizzata per i partecipanti alla supply chain.

Un processo aziendale potrebbe richiedere solo dati a prova di manomissione o antimanomissione, che non richiederebbero la blockchain. Se il processo può essere eseguito centralmente o tutte le parti si considerano attendibili tra loro con i dati, la blockchain potrebbe anche non essere necessaria.

Elaborazione multiparty di Azure

Questa sezione descrive le opzioni di elaborazione multiparty disponibili usando i servizi di Azure.

Blockchain con Azure Macchine virtuali

È possibile eseguire software mastro usando Azure Macchine virtuali. Creare tutte le macchine virtuali necessarie e connetterle in una rete blockchain.

La distribuzione di macchine virtuali personalizzate consente di personalizzare la soluzione. L'approccio include il sovraccarico di gestione, ad esempio aggiornamenti, disponibilità elevata e requisiti di continuità aziendale. Potrebbero essere presenti più organizzazioni e più account cloud. La connessione dei singoli nodi può essere complicata.

Sono disponibili modelli di distribuzione in Azure per la maggior parte dei ledgers blockchain per le macchine virtuali.

Blockchain in Kubernetes

Poiché la maggior parte dei ledgers blockchain supporta la distribuzione in contenitori Docker, è possibile usare Kubernetes per gestire i contenitori. Azure ha un'offerta Kubernetes gestita denominata servizio Azure Kubernetes (AKS) che è possibile usare per distribuire e configurare i nodi della blockchain.

Le implementazioni del servizio Azure Kubernetes sono dotate di un servizio gestito per le macchine virtuali che alimentano il cluster del servizio Azure Kubernetes. Tuttavia, l'organizzazione deve comunque gestire i cluster del servizio Azure Kubernetes e qualsiasi opzione di rete o archiviazione nell'architettura.

Sono disponibili modelli di distribuzione in Azure per la maggior parte dei ledgers blockchain per il servizio Azure Kubernetes.

Blockchain as a Service

Azure supporta servizi di terze parti che eseguono software mastro in Azure. Il provider di servizi gestisce l'infrastruttura. Gestiscono la manutenzione e gli aggiornamenti. La disponibilità elevata e la gestione dei consorzio sono incluse nel servizio.

ConsenSys offre quorum in Azure. Quorum è un livello di protocollo open source che supporta le applicazioni basate su Ethereum.

In futuro potrebbero esserci altre offerte.

Azure Confidential Ledger

Il libro mastro riservato di Azure è un servizio gestito basato su Confidential Consortium Framework. Implementa una rete blockchain autorizzata di nodi all'interno del confidential computing di Azure. Confidential Ledger si basa sulla crittografia esistente.

  • Crittografia esistente
    • Dati inattivi. Crittografare i dati inattivi quando vengono archiviati nell'archivio BLOB o in un database.
    • Dati in transito. Crittografare i dati trasmessi tra reti pubbliche o private.
  • Confidential computing
    • Dati in uso. Crittografa i dati in uso, in memoria e durante il calcolo.

Il confidential computing consente la crittografia dei dati nella memoria principale. Il confidential computing consente di elaborare i dati da più origini senza esporre i dati di input ad altre parti. Questo tipo di calcolo sicuro supporta scenari di elaborazione multiparty in cui la protezione dei dati è obbligatoria in ogni passaggio, ad esempio il rilevamento del riciclaggio di denaro, il rilevamento delle frodi e l'analisi sicura dei dati sanitari.

I dati archiviati nel libro mastro riservato sono immutabili e a prova di manomissione nel libro mastro di sola accodamento. Il libro mastro è anche verificabile in modo indipendente. Il libro mastro riservato usa enclave sicuri per una rete blockchain decentralizzata e richiede una base di elaborazione attendibile minima.

Azure SQL libro mastro del database

Azure SQL ledger del database consente ai partecipanti di verificare l'integrità dei dati ospitati centralmente senza il consenso di rete di una rete blockchain. Per alcune soluzioni centralizzate è importante, ma l'infrastruttura decentralizzata non è necessaria. Questo approccio evita complessità e implicazioni sulle prestazioni di tale infrastruttura.

Diagramma che mostra l'architettura del ledger del database.

Nota

Azure SQL ledger del database è attualmente in anteprima pubblica.

Ledger offre funzionalità di prova manomissione per il database. Queste funzionalità consentono di attestare in modo crittografico che i dati non sono stati manomessi.

Ledger consente di proteggere i dati da qualsiasi utente malintenzionato o utente con privilegi elevati, tra cui database, sistema e amministratori cloud. I dati cronologici vengono conservati. Se una riga viene aggiornata nel database, il relativo valore precedente viene mantenuto in una tabella della cronologia. Questa opzione offre la protezione senza modifiche all'applicazione.

Ledger è una funzionalità di Azure SQL Database. Può essere abilitato in qualsiasi database di Azure SQL esistente.

Opzioni di confronto

Ledger riservato e Azure SQL ledger del database

Questa tabella confronta i ledger riservati con Azure SQL ledger del database.

database SQL ledger Confidential Ledger
Sistema centralizzato che richiede prove manomissione No
Sistema decentralizzato che richiede la manomissione dei dati No
Protegge i dati relazionali da manomissione No
Protegge i dati non strutturati dalla manomissione No
Proteggere l'archivio off-chain dei dati della catena in una blockchain No
Proteggere l'archivio off-chain per i file a cui si fa riferimento da una blockchain No
I dati relazionali sono queryabili No
I dati archiviati non strutturati sono queryabili No

Ledger riservato e Archiviazione BLOB di Azure

La funzionalità di archiviazione non modificabile di Archiviazione BLOB di Azure garantisce che i dati scritti in esso possano essere letti ma mai modificati. Questa tabella confronta la tecnologia con Confidential Ledger.

Confidential Ledger Archiviazione non modificabile
Enclave hardware riservati No
Integrità dei dati di sola accodamento Sì, limitato agli intervalli
Crittografia dei dati in uso No
Verifica del ledger blockchain No

Decisione di calcolo multiparty

Questo diagramma riepiloga le opzioni per l'elaborazione multiparty con i servizi di Azure.

Il diagramma riepiloga le decisioni per la scelta di un'opzione di calcolo multipartitura.

Scaricare un file di Visio di questa architettura.

Passaggi successivi