Crea subito una soluzione Blockchain

Quando la tecnologia Blockchain fu annunciata attraverso l’articolo intitolato Bitcoin: A Peer-to-Peer Electronic Cash System di Satoshi Nakamoto nel 2008, si trattava di un innovativo mix di crittografia a chiave pubblica (inventato negli anni ’70), funzioni hash crittografiche (nate negli anni ’70 ) e prove di lavoro (inventato negli anni ’90).

Negli ultimi anni sono stati creati molti progetti derivati ​​e ispirati alla blockchain. La maggior parte di questi non sono tecnicamente blockchain, ma piuttosto sistemi di contabilità distribuita.

Cerchiamo di codificare come costruire una blockchain in soli otto passaggi. Per semplicità, ho usato i termini blockchain e sistema di contabilità distribuita in modo intercambiabile in questo articolo.

Passo 1: identificare un caso d’uso adatto

C’è un sacco di clamore intorno alla blockchain. Ho letto che le blockchain possono cancellare la fame globale, rendere il mondo libero dalla corruzione, porre fine alla povertà e fare molto di più senza sudare. Sfortunatamente, non è vero. Quindi, il passaggio 1 è identificare un caso d’uso che abbia senso per il business.

Ci sono 3 cose che le blockchain possono fare molto bene:

Autenticazione e verifica dei dati: include archiviazione immutabile, firme digitali e crittografia. I dati in quasi tutti i formati possono essere archiviati nella blockchain. Le blockchain possono creare coppie di chiavi pubblico-private e possono anche essere utilizzate per generare e verificare firme digitali.
Gestione patrimoniale intelligente: include l’emissione, il pagamento, lo scambio, l’impegno e la pensione. Un asset smart / crypto è la versione tokenizzata di un asset del mondo reale, ad es. oro, argento, petrolio, terra.
Contratti intelligenti: questo è un termine il più delle volte compreso male, ma è qualcosa per un altro giorno.

Passo 2: identificare il meccanismo di consenso più adatto

La blockchain originale, che alimenta la criptovaluta bitcoin, ha utilizzato la prova del lavoro come meccanismo di consenso. Ma oggi ci sono più sistemi di contabilità distribuita che offrono una serie di meccanismi di consenso come prova di puntata, tolleranza ai guasti bizantina, consenso basato sui depositi, accordo bizantino federato, prova del tempo trascorso, PBFT derivato, tolleranza ai guasti bizantina ridondante, tolleranza ai guasti bizantina semplificata , Consenso federato, Round Robin e Delegated Proof of Stake.

A seconda del caso d’uso, è necessario scegliere il meccanismo di consenso più sensato.

Passo 3: identificare la piattaforma più adatta

Esistono molte piattaforme blockchain oggi e la maggior parte sono gratuite e open source. A seconda del meccanismo di consenso scelto nel passaggio 2, è necessario selezionare la piattaforma blockchain più adatta.

Alcune delle piattaforme più popolari, in ordine alfabetico sono:

  1. BigChainDB
  2. Nucleo a catena
  3. Corda
  4. Crediti
  5. Blockchain della Domus Tower
  6. Piattaforma Blockchain di Elements
  7. Eris: db
  8. Ethereum
  9. HydraChain
  10. Tessuto Hyperledger
  11. Hyperledger Iroha
  12. Hyperledger Sawtooth Lake
  13. più giri
  14. Openchain
  15. Quorum
  16. Stellare
  17. Assemblea di Symbiont

Passo 4: progettazione dei nodi

Le soluzioni blockchain possono essere autorizzate (ad esempio un registro fondiario gestito dal governo) o senza autorizzazioni (ad esempio Bitcoin, dove chiunque può diventare un minatore). Le soluzioni blockchain possono essere private (ad esempio un sistema di gestione dei contratti implementato in un’azienda farmaceutica), pubbliche (ad esempio una criptovaluta supportata da attività) o ibride (ad esempio un gruppo di banche che gestiscono una piattaforma KYC condivisa).

Un altro fattore da considerare in questa fase è se i nodi verranno eseguiti sul cloud, on-premise o entrambi. Poi arrivano problemi di configurazione hardware come processori, memoria e dimensioni del disco. Devi anche decidere i sistemi operativi di base (di solito Ubuntu, CentOS, Debian, Fedora, Red Hat o Windows).

Passo 5: Progetta l’istanza Blockchain

La maggior parte delle piattaforme blockchain richiede un’attenta configurazione pianificata per i seguenti elementi:

  1. Permessi
  2. Emissione di attività
  3. Ristampa delle attività
  4. Scambi atomici
  5. Gestione delle chiavi
  6. Firme multiple
  7. parametri
  8. Attività native
  9. Formati dell’indirizzo
  10. Formati chiave
  11. Firma blocchi
  12. Stretta di mano

Alcuni parametri possono essere modificati in fase di esecuzione ma altri no, quindi questo è un passaggio molto cruciale.

Passo 6: creazione delle API

Alcune piattaforme blockchain sono dotate di API predefinite, mentre altre no. Le principali categorie di API di cui hai bisogno sono per:

Generazione di coppie di chiavi e indirizzi
Esecuzione di funzioni correlate al controllo
Autenticazione dei dati tramite firme e hash digitali
Strage e recupero dei dati
Gestione del ciclo di vita degli asset intelligenti: emissione, pagamento, permuta, escrw e pensionamento
Contratti intelligenti

Passo 7: progettare l’interfaccia di amministrazione e utente

A questo punto dovrai scegliere il front-end e i linguaggi di programmazione (ad es. HTML5, CSS, PHP, C #, Java, Javascript, Python, Ruby, Golang, Solidity, Angular JS Nodejs). Dovresti anche scegliere database esterni (ad esempio MySQL, MongoDB) e server (inclusi server Web, server FTP, server di posta).

Passo 8: aggiunta di Future Tech

Puoi migliorare notevolmente la potenza della tua soluzione Blockchain integrando Intelligenza artificiale, biometria, robot, cloud, servizi cognitivi, contenitori, analisi dei dati, Internet of Things e Machine Learning.

Azione non consentita!