Giugno 2018

Volume 33 Numero 6

Il presente articolo è stato tradotto automaticamente.

Blockchain - Introduzione ad Azure Blockchain Workbench

Dal Stefano Tempesta | 2018 giugno

Azure Blockchain Workbench (aka.ms/abcworkbench) è il passaggio più recente in viaggio Microsoft per consentire ai clienti di adottare le tecnologie blockchain e iniziare a usare Azure Blockchain. Per fornire un contesto, Blockchain Azure è una raccolta di servizi di Azure e le funzionalità progettate per consentire alle aziende di creare e distribuire una nuova classe di applicazioni per la condivisione di processi di business e dati con più organizzazioni semi-trusted. Attualmente i clienti possono distribuire questi servizi nelle relative sottoscrizioni Azure e integrarli con blockchains disponibile in Azure Marketplace. A questo punto, con Azure Blockchain Workbench, carico di lavoro viene eseguita per essi, è possibile concentrarsi minore in scaffolding e ulteriori informazioni sulla logica e i contratti smart.

Blockchain Workbench Azure Orchestra diversi servizi Azure intorno Ledger digitale blockchain comune e in un'architettura di riferimento che può essere usata per compilare applicazioni basate su blockchain. È uno strumento gratuito e facile da utilizzare con un'interfaccia semplificata che consente agli utenti di creare applicazioni decentralizzate end-to-end sfruttate tutte le funzionalità del Blockchain di Azure. È dotato di flussi di lavoro tra organizzazioni di esempio e i contratti smart, nonché un'interfaccia utente della finestra che i clienti possono utilizzare per ridurre drasticamente i costi di sviluppo e accelerare i modelli di prova.

Se si ha familiarità con blockchain, è consigliabile leggere articolo in attesa di Jonathan Waldman, "Nozioni fondamentali sui Blockchain" (msdn.com/magazine/mt845650), il problema di marzo 2018 di MSDN Magazine. Inoltre, eseguire un punto per visualizzare il video Microsoft Mechanics, "Introduzione a Blockchain e Azure Blockchain Workbench," alla aka.ms/workbenchintro.

Introduzione a Azure Blockchain Workbench

In modo che le applicazioni oggi interagiscono con i database, decentralizzate applicazioni in esecuzione su un blockchain comunicano ed eseguono la logica su un ledger digitale specifico, ad esempio Ethereum o Hyperledger. Una rete ledger digitale è costituito da una rete peer-to-peer decentralizzata dei nodi. Questi nodi conservare una copia dell'archivio dati ed eseguire una macchina virtuale per supportare calcolo arbitrario rispetto a contabilità, mantenendo il consenso. I contratti smart sono il meccanismo che consenta di questo calcolo complesso in rete, analogamente alle stored procedure in un database relazionale tradizionale.

Nonostante la possibilità di sfruttare blockchain in crescita diversi processi di business, sono presenti ostacoli che consentono di superare prima che le aziende possono adottare blockchain tecnologie. Mancanza di governance, scalabilità e prestazioni della rete sono spesso citato come sfide che influiscono sull'adozione di blockchain nello spazio dell'organizzazione.

La creazione di una soluzione completa in esecuzione su blockchain in genere richiede il provisioning dell'infrastruttura e lo sviluppo di un'applicazione client, la scrittura e la distribuzione di un'API di gateway, che implementa il supporto per l'archiviazione off catena, la scrittura dei log e report e l'integrazione identità e la chiave dell'insieme di credenziali servizi nella soluzione. È un set comune di problematiche relative alla blockchain lo sviluppo di app che vengono affrontati da Azure Blockchain Workbench, riducendo notevolmente la quantità di tempo necessario per compilare una soluzione blockchain.

Blockchain Workbench Azure fornisce risorse di codice e distribuzione basato su modello ARM per tutti i lo scaffolding necessario per blockchain POCs, inclusi il blockchain gateway di rete, un'API, un reattività dell'applicazione Web, l'integrazione di Azure Active Directory, una chiave di Azure L'integrazione dell'insieme di credenziali, un database di SQL configurato per raccogliere i dati nella catena, servizi e di un set di supporto per dati hash e firma. Lo strumento rende inoltre possibile creare un front-end Web senza scrivere alcun codice. Usa metadati forniti per i contratti intelligenti per recapitare in modo dinamico un'esperienza utente contesto per i partecipanti. Poiché il framework popola database di SQL Server come archivio di off catena, consente alle organizzazioni di sfruttare le competenze esistenti e strumenti per le funzionalità aggiuntive.

Risultato: Blockchain Workbench Azure consente di ridurre tempi e costi per i progetti di prova (POC). Consente ai clienti di concentrarsi sulla creazione di applicazioni innovative che illustrano il potenziale di blockchain, da impiegare meno tempo e risorse nelle attività di integrazione necessari per spiega come configurare un modello di verifica di base.

Azure Blockchain Workbench è disponibile in Azure Marketplace (aka.ms/tryworkbench), e un video del Workbench di azione è disponibile per il team Microsoft Mechanics aka.ms/workbenchdemo.

Distribuire Azure Blockchain Workbench

La distribuzione del Blockchain Workbench Azure richiede i seguenti passaggi prerequisiti:

1. Un tenant di Azure Active Directory (Azure AD) all'host di Azure AD necessari e le app di insieme di credenziali chiave.

2. Registrazione di un'app di Azure AD e un valore di chiave dell'insieme di credenziali necessario fare riferimento durante la distribuzione di Azure Blockchain Workbench.

È possibile creare un nuovo tenant di Azure AD per la configurazione degli utenti di test o la registrazione delle applicazioni di Azure diversi tenant di AD di Azure Active Directory aziendale tenant. Istruzioni dettagliate su questi passaggi di configurazione vengono segnalate nella documentazione di Azure Blockchain Workbench ufficiale aka.ms/workbenchdocs.

Dopo avere completati i passaggi precedenti richiesti, l'area di lavoro può essere distribuito. Accedi al portale di Azure e aggiungere una nuova risorsa da Azure Marketplace, racchiusa figura 1. Cercare e selezionare Azure Blockchain Workbench per avviare il processo di provisioning.

Figura 1 Workbench Blockchain di Azure in Azure Marketplace

Questo modello di soluzione è progettato per semplificare la distribuzione e l'integrazione dei servizi necessari per compilare un'applicazione in una rete blockchain. Con un numero limitato di input dell'utente e una distribuzione a singolo clic nel portale di Azure, è possibile distribuire un ledger blockchain con i servizi di Azure pertinenti necessari per compilare un'applicazione blockchain end-to-end, inclusi nel pacchetto con un esempio dell'interfaccia utente Web. L'applicazione generata include un'applicazione Web, API REST, archiviazione off catena e simili. Anziché spesa ore generazione e la configurazione dei servizi necessarie per l'integrazione con una rete blockchain, il team di Azure è automatizzate questi pezzi richiede molto tempo, pertanto è possibile concentrarsi sulla compilazione out gli scenari. Tramite l'applicazione Azure Blockchain Workbench Web, è possibile generare un'esperienza utente end-to-end per i flussi di lavoro di business in base a contratti smart.

Il provisioning di Azure Blockchain Workbench richiede sei passaggi, con le prime due stabilire i parametri di configurazione e i due avanti che punta capacità di rete e il monitoraggio. Passaggio 1 richiede alcune impostazioni di base, rappresentati figura 2, che includono:

• Un identificatore univoco come prefisso per tutte le risorse di Azure il provisioning come parte di questo modello di denominazione.

• Il nome utente amministratore per tutte le macchine virtuali con provisioning (VM).

• Una chiave pubblica SSH utilizzata per la connessione alle macchine virtuali. Copiare e incollare una chiave pubblica RSA nel formato a riga singola (inizia con "ssh-rsa") o il formato con estensione PEM su più righe. È possibile generare le chiavi SSH tramite ssh-keygen in Linux e macOS o PuTTYGen in Windows.

• Una password per proteggere l'accesso al database incluso come parte della distribuzione del Workbench.

• La sottoscrizione di Azure a cui si desidera utilizzare per la distribuzione. Tenere presente che, uso di Azure Blockchain Workbench è disponibile alcun costo di licenza, ma si paga per Azure con provisioning risorse di elaborazione, archiviazione e rete.

• Il gruppo di risorse da utilizzare per raggruppare tutte queste risorse. Consiglia di creare un nuovo gruppo di risorse per la soluzione Blockchain Workbench.

• L'area a cui si desidera distribuire le risorse.

Figura 2 Getting Started Provisioning Azure Blockchain Workbench

Passaggio 2 è necessario aver completato i passaggi precedenti richiesti della registrazione dell'app client blockchain in Azure AD, come è necessario l'ID applicazione di registrazione e chiave quando richiesto, immettere. È inoltre necessario specificare il nome del dominio Tenant ottenuti come parte della registrazione dell'app client in Azure AD.

Nel passaggio 3 è possibile specificare il numero di nodi nella contabilità blockchain sottoposto a provisioning e le dimensioni delle macchine virtuali allocate. Passaggio 4 è per facoltativamente acconsentito esplicitamente a Operations Management Suite (OMS) per monitorare la soluzione distribuita.

I passaggi 5 e 6 sono semplicemente un riepilogo delle risorse in corso il provisioning e la conferma di aver compreso che vi sia un'implicazione di costo. Una volta completata la distribuzione del Workbench di, verrà visualizzato un nuovo gruppo di risorse con il nome specificato. Alcune risorse distribuite in questo caso, ad esempio Application Insights consentirà che consente di ottenere ulteriori informazioni sullo stato dell'area di lavoro, inclusi i dettagli sulle macchine virtuali e reti distribuite.

Come accennato in precedenza, si basa su Azure Blockchain Workbench Azure AD per l'autenticazione, accedere a identificazione del tipo di controllo e flusso di lavoro. Solo gli utenti specificati in cui viene fatto riferimento AD Azure sarà in grado di autenticare e utilizzare le risorse distribuite. Inoltre, gli utenti devono essere associati a un gruppo di utenti specifici per interagire ed eseguire azioni. È pertanto necessario gestire gli account utente l'interazione con Azure Blockchain Workbench e assegnare loro le autorizzazioni necessarie.

Distribuzione di un contratto intelligente

Una volta distribuito, è possibile accedere Blockchain Workbench Azure passando al relativo URL. Verrà visualizzato un account di accesso Active Directory di backup Azure esperienza in cui è possibile immettere l'azienda o personale credenziali dell'account Microsoft per accedere all'applicazione.

È ora possibile avviare sfruttando i contratti smart, che contengono la logica di business che guida flussi diversi scenari. Questo approccio offre l'immutabilità, esecuzione deterministica e trasparenza necessario in ambienti non attendibili. Contratti intelligenti vengono scritti in linguaggi specifici di stack blockchain. Ad esempio, solidità viene usato per Ethereum, mentre Go viene utilizzato per l'infrastruttura Hyperledger. Un contratto intelligente viene distribuito a tutti i nodi di blockchain. Durante l'esecuzione, le informazioni che fornisce viene replicate anche a tutti i nodi nella rete.

L'obiettivo principale di Azure Blockchain Workbench è spiega come configurare lo scaffolding per l'applicazione blockchain, in modo che gli utenti possono concentrarsi sulla creazione di logica di business basato sul contratto smart. Dopo che viene creata un'istanza di un contratto smart del Workbench di, viene scritta la blockchain, gli aggiornamenti successivi a quelli del contratto intelligente vengono registrati nel blockchain. Dopo che l'amministratore di Azure Blockchain Workbench è distribuito smart contratti e le assegnazioni utente completata per i contratti smart, altri utenti possono interagire con l'applicazione blockchain e coinvolgere nei flussi di lavoro contratto smart.

Iniziamo distribuendo uno qualsiasi dei contratti smart demo esistente. Dopo l'accesso correttamente, verrà visualizzato un collegamento di amministrazione in alto a destra. Fare clic sul collegamento amministrativo per accedere al Dashboard di amministrazione. Esistono attualmente tre azioni disponibili per l'amministratore nell'area di lavoro, illustrato nella figura 3. Da qui è possibile assegnare gli utenti, distribuire contratti demo e distribuire i contratti personalizzati.

Figura 3 il Dashboard di amministrazione

Facendo clic su distribuire Demo contratto nel Dashboard di amministrazione consente di visualizzare un elenco di tutti i contratti demo che possono essere forniti. La versione corrente di Blockchain Workbench contiene un set di contratti smart demo e i file di configurazione per iniziare. La documentazione di Workbench fornisce ulteriori informazioni su scenari specifici e dettagliata dell'interfaccia utente. Sono inoltre disponibili istruzioni dettagliate sul modo in cui sono stati creati i contratti smart demo e i file di configurazione associati e su come configurare gli account utente di Azure AD per abilitare questo scenario.

Caricamento di un contratto personalizzato

È anche possibile creare contratti personalizzati in uno dei linguaggi di programmazione supportati dalla piattaforma blockchain di riferimento e distribuirli in Azure Blockchain Workbench. Tutti i Azure Blockchain Workbench richiede tre file che definiscono la logica di business, le interazioni e visualizzazioni dei flussi di lavoro implementati. Questi sono:

Smart contratto: Per iniziare, è necessario creare un contratto intelligente che contiene la logica di business per lo scenario. Nell'esempio seguente, il contratto intelligente è possibile fare riferimento blockchain Ethereum, i contratti vengono scritti in solidità il linguaggio di programmazione.

Configurazione: Nel file di configurazione, gli utenti, eseguire il mapping delle proprietà, le azioni e le informazioni del protocollo blockchain per il contratto smart. È inoltre possibile definire i parametri sono necessari dei partecipanti per la creazione di istanze e le azioni nel contratto di smart.

Configurazione dell'interfaccia utente: Nei file di interfaccia utente di configurazione, si definisce l'interfaccia utente di controllo di accesso basate sui ruoli a ogni stato del contratto smart, ad esempio limitando che indirizzano può richiedere azioni specifiche. In questo file, l'utente esegue il mapping degli Stati e gli utenti tipo e specifica le definizioni di stato, la percentuale di completamento in ogni stato del contratto e le azioni in ogni stato.

Creazione di smart contratto

La definizione di contratto contiene alcuni componenti che devono essere specificati per lavorare con Azure Blockchain Workbench. Prima di definire i dettagli del contratto specifici per lo scenario, ad esempio gli stati, i partecipanti e le funzioni che descrivono la logica alla base di ogni azione, è necessario implementare un contratto LexingtonBase. Il contratto effettivo con la logica di business per lo scenario di business eredita dal contratto LexingtonBase (che è equivalente a una classe in c#), come illustrato nella figura 4.

Figura 4 LexingtonBase contratto

contract LexingtonBase {
  event LexingtonContractCreated(string contractType, address originatingAddress);
  event LexingtonContractUpdated(string contractType, string action,     address originatingAddress);
  string internal ContractType;

  function LexingtonBase(string contractType) internal {
    ContractType = contractType;
  }

  function ContractCreated() internal {
    LexingtonContractCreated(ContractType, msg.sender);
  }

  function ContractUpdated(string action) internal {
    LexingtonContractUpdated(ContractType, action, msg.sender);
  }
}

Ogni contratto deve avere uno stato che rappresenta lo stato corrente del contratto, indirizzi di partecipanti coinvolti nel contratto smart, i dati archiviati nel contratto, le funzioni che definisce la logica di business per azioni diverse e di un costruttore per Quando il contratto intelligente viene creata un'istanza. Figura 5 fornisce un esempio del costruttore e le proprietà del contratto smart trasferire Asset.

Figura 5 Asset trasferimento intelligente contratto

contract AssetTransfer is LexingtonBase('AssetTransfer')
{
  enum AssetState { Created, Active, OfferPlaced, PendingInspection,
    Inspected, Appraised,
    NotionalAcceptance, BuyerAccepted, SellerAccepted, Accepted,
      Complete, Terminated }

  address public Owner;
  string public Description;
  uint public AskingPrice;
  AssetState public State;
  address public Buyer;
  uint public OfferPrice;
  address public Inspector;
  address public Appraiser;

  function AssetTransfer(string description, uint256 price)
  {
    Owner = msg.sender;
    AskingPrice = price;
    Description = description;
    State = AssetState.Active;
    ContractCreated();
  }
}

Assicurarsi che la corrispondenza di nome classe nome e il costruttore. È possibile trovare il codice sorgente di esempio in linguaggio solidità per questo contratto smart, nonché i file di configurazione JSON, scegliere il repository GitHub alla bit.ly/2HJPcET.

Creazione del File di configurazione

Il file di configurazione definisce i parametri per il contratto intelligente e proprietà principali. Sono inclusi Elenca tutti i tipi e le proprietà, così come definizione di un costruttore che indica i parametri che l'utente deve eseguire per creare un'istanza del contratto intelligente di input. Figura 6 viene illustrato un esempio delle proprietà Asset trasferire e costruttore dal file di configurazione.

Costruttore e le proprietà di trasferimento Asset figura 6

"Properties": {
    "State": {
      "Type": "state"
    },
    "Owner": {
      "Type": "user"
    },
    "Description": {
      "Type": "string"
    },
    "AskingPrice": {
      "Type": "money"
    },
    "Buyer": {
      "Type": "user"
    },
    "OfferPrice": {
      "Type": "money"
    },
    "Inspector": {
      "Type": "user"
    },
    "Appraiser": {
      "Type": "user"
    }
  },

"Constructor": {
    "description": {
      "Type": "string"
    },
    "price": {
      "Type": "money"
    }
  },

Inoltre, l'utente deve enumerare e fornisce dettagli per tutte le azioni possibili, specificando i parametri di input per ogni azione. Figura 7 viene illustrato un esempio della specifica azione MakeOffer dal file di configurazione trasferire Asset, che richiede all'utente l'immissione di un controllo e della valutazione SCAMPI un prezzo di offerta.

Figura 7 MakeOffer azione specifica

"MakeOffer": {
    "Parameters": {
      "inspector": {
        "Type": "user"
      },
      "appraiser": {
        "Type": "user"
      },
      "offerPrice": {
        "Type": "money"
      }
    }
  },

Infine, includere le informazioni di configurazione blockchain, come indicato di seguito:

"Chains": {
    "Ethereum": {
      "Type": "Ethereum",
      "Version": "1.0",
      "Location": "AssetTransfer.sol",
      "TypeName": "AssetTransfer",
      "ActionOverrides": {},
      "PropertyOverrides": {}
    }
  }

Creazione del File di configurazione dell'interfaccia utente

Gli utenti di definire i dettagli dell'interfaccia utente per ogni azione nel file di configurazione dell'interfaccia utente. Sono inclusi i dettagli sugli utenti, ad esempio il ruolo dell'iniziatore o partecipante e mapping utente tipo, mapping di stato, nonché un costruttore che indica il testo da visualizzare quando un utente desidera creare un'istanza del contratto smart. Figura 8 viene illustrato un esempio delle proprietà Asset trasferire e costruttore dal file di configurazione dell'interfaccia utente.

Figura 8 InitiatingRoles

"InitiatingRoles": [
    "Admin",
    "User"
  ],
  "Personas": {
    "Owner": {
      "Role": "Initiator",
      "IsInitiator": true,
      "PropertyMapping": "Owner"
    },
    "Buyer": {
      "Role": "Participant",
      "PropertyMapping": "Buyer"
    },
    "Appraiser": {
      "Role": "Participant",
      "PropertyMapping": "Appraiser"
    },
    "Inspector": {
      "Role": "Participant",
      "PropertyMapping": "Inspector"
    }
  },
  "StateProperty": "State",
  "StateMapping": {
    "Created": 0,
    "Active": 1,
    "OfferPlaced": 2,
    "PendingInspection": 3,
    "Inspected": 4,
    "Appraised": 5,
    "NotionalAcceptance": 6,
    "BuyerAccepted": 7,
    "SellerAccepted": 8,
    "Accepted": 9,
    "Complete": 10,
    "Terminated": 11
  },
"Constructor": {
    "DisplayName": "Create Asset Transfer",
    "Description": "Description of asset transfer"
  },

Inoltre, l'utente deve enumerare tutti gli stati possibili e includere i dettagli per ogni stato specificando le azioni che possono essere eseguite a ogni passaggio per ogni utente tipo, nonché un valore percentuale di completamento per concedere agli utenti una visualizzazione dello stato di avanzamento tramite il contratto smart. Ad esempio, il file di configurazione dell'interfaccia utente di contratto di Asset trasferire mostra che una volta che lo stato viene illustrata un'offerta è stata inserita, solo i proprietari e acquirenti possono eseguire azioni specificate, come illustrato nel codice in figura 9.

Figura 9 OfferPlaced codice

"OfferPlaced": {
    "PercentComplete": 30,
    "Style": "Success",
    "Actions": {
      "Owner": {
        "AcceptOffer": {},
        "Reject": {},
        "Terminate": {}
      },
      "Buyer": {
        "RescindOffer": {}
      }
    }
  }

Dopo aver creato il contratto smart personalizzato e file di configurazione associati, l'attività successiva consiste nel distribuire il contratto smart. Dopo aver selezionato caricare contratto personalizzato nel Workbench dell'amministratore del Dashboard di Azure Blockchain, verrà visualizzata una pagina per caricare un file di configurazione e del contratto personalizzato. Esistono tre file che è necessario fornire. Selezionare il file di contratto intelligente e i due file di configurazione creati in precedenza, come indicato nella schermata Contratto caricare rappresentata figura 10.

Figura 10, la schermata di contratto di caricamento

Assegnazione utente

Dopo aver distribuito un contratto smart (demo o personalizzato), gli utenti con personalità iniziatore possono creare nuove istanze di contratto. Per creare un'istanza di un particolare contratto, l'utente deve disporre di un utente tipo associato tale contratto. A seconda della specifica del contratto smart, non ogni persona può disporre dei diritti per creare un contratto. Come amministratore, è possibile assegnare un utente a un contratto e specificare il proprio ruolo (tipo) nel processo di business. Si noti che prima che un amministratore può eseguire alcuna azione di assegnazione dell'utente, devono esserci almeno un contratto (demo o personalizzato) distribuito. Dopo aver caricato un contratto, il passaggio successivo consiste per completare l'assegnazione di utente per il contratto. Gli amministratori possono assegnare utenti a contratti smart dalla schermata di assegnazione utente nel Dashboard Blockchain Workbench amministratore di Azure.

Una volta assegnato a contratti, gli utenti possono partecipare i flussi di lavoro contratto smart accedendo a Azure Blockchain Workbench per creare contratti. Ad esempio che l'utente desidera generare un nuovo trasferimento asset, come illustrato nella figura 11. Egli deve creare un nuovo contratto facendo clic su Crea nuovo contratto nell'angolo in alto a destra della vista e immettere i dettagli per il contratto (in questa vista varia in base il contratto intelligente) e inviare. La schermata viene generata automaticamente, in base ai metadati fornito come parte della definizione del contratto Smart.

Dettagli contratto immissione figura 11

Dopo aver creata un'istanza del contratto, un utente può scorrere verso il basso i dettagli per visualizzare le azioni disponibili, lo stato corrente del contratto.

Estensione Azure Blockchain Workbench

AT alla base di Azure Blockchain Workbench è Azure Service Bus, l'abilitazione di un modello estendibile e collegabile che consente più tecnologie ledger distribuita, le offerte di archiviazione e il database da utilizzare come parte della soluzione blockchain. Sono inoltre disponibili opportunità per integrare altri servizi con l'area di lavoro per estendere le funzionalità, ad esempio con le app di logica di Azure, API Web, gli hub di notifica e simili. Archiviazione Off catena dei dati consentirà archiviazione post-elaborazione analitica scenari e, con le opzioni, ad esempio con Power BI, Azure Machine Learning, HD Insight, Azure Data Lake e altri servizi in cui sono condiviso contratto dati.

Blockchain ha la possibilità di estendere la trasformazione digitale di là delle pareti dell'azienda e nei processi condivide con fornitori, clienti e partner. Come ho, in sostanza che un blockchain è una struttura di elaborazione e i dati che può essere utilizzata per creare un ledger transazione digitale che, anziché posizionando con un solo provider, verrà condivisi da una rete distribuita dei computer. Il risultato è un sistema più trasparente e verificabile che modifica il modo in cui che si pensa lo scambio di valore e gli asset, applicando i contratti e condivisione dei dati.

Microsoft si impegna a rendere blockchain all'azienda e attivare la modalità i vantaggi di Azure da tenere per sviluppatori e le organizzazioni che desiderano per creare applicazioni distribuite. L'obiettivo è aiutare le aziende a crescere in questa nuova era calcolo protetta, più parte fornendo piattaforme scalabile e servizi che qualsiasi azienda, da avvii ledger e rivenditori ai provider di integrità e banche globale, ovvero per migliorare business condivisa processi. Blockchain Workbench Azure fa parte di un ecosistema di servizi di Azure, insieme al calcolo riservata di Azure annunciati in anticipo e di Framework di Blockchain Consortium riservate, che consente di colmare il divario tra il world blockchain ed enterprise requisiti di governance, sicurezza e la scalabilità. Controllare questo spazio per lo sviluppo aggiuntivo in un prossimo futuro.


Stefano Tempesta è un direttore regionale Microsoft MVP, nonché responsabile del capitolo per CRMUG in Svizzera, più grande community di esperti / CRM Dynamics 365 nel mondo. Tempesta è un docente dei corsi sui Dynamics 365, blockchain e machine learning e regolare relatore internazionali conferenze IT, tra cui Microsoft Ignite e Tech Summit. Egli fondato spazio Blogchain (blogchain.space), un blog sulle tecnologie blockchain, scrive per MSDN Magazine e MS Dynamics World e pubblica esperimenti di machine learning in Azure AI Gallery ( elenco indirizzi globale lery.azure.ai).