Spiegazione della Blockchain: Cos’è la Blockchain e come funziona?

Questo tutorial completo sulla blockchain spiega cos’è la tecnologia blockchain, la sua storia, le versioni, i tipi, i blocchi di costruzione e come funziona una blockchain:

Blockchain è emersa come una tecnologia popolare tra le migliori organizzazioni. Ci sono grandi aspettative da questa tecnologia e i tassi di adozione sono in aumento e fino al 77% delle organizzazioni finanziarie potrebbe adottare la tecnologia nei propri processi e sistemi di produzione da quest’anno.

Tuttavia, la blockchain è poco conosciuta, il che è uno degli impedimenti alla sua adozione. Quasi l’80% delle persone in tutto il mondo non capisce cosa sia.

 

Questa è la prima serie di tutorial blockchain che copre tutti gli aspetti di questa tecnologia. Capiremo la blockchain e la sua storia, come funziona e le sue basi come i tipi di blockchain, i nodi della catena di blocchi e il registro distribuito. Vedremo anche come è costituito.

Questo tutorial sulla blockchain esaminerà anche brevemente come la blockchain protegge i dati e come ciò può aiutare le organizzazioni nelle loro varie operazioni.

Cosa imparerai:

  • Elenco dei tutorial sulla blockchain
  • Che cos’è la tecnologia Blockchain?
    • Aspetti chiave della blockchain
    • Storia della blockchain
    • Versioni blockchain
    • Tipi di catene a blocchi
  • Come funziona una catena di blocchi?
    • Nodi Blockchain
    • In che modo Blockchain protegge dati e informazioni?
    • Registro distribuito contro database normale
    • Elementi costitutivi della blockchain
      • Algoritmo di consenso Blockchain
      • Blockchain e hashing Creazione di blocchi
      • Come funziona l’hashing?
    • Come è integrato un blocco Blockchain?
      • Difficoltà di creare un blocco
  • Conclusione
    • Lettura consigliata

Elenco Dei Tutorial Sulla Blockchain

Tutorial n. 1:spiegazione della blockchain: cos’è la blockchain e come funziona? (Questo tutorial)
Tutorial n. 2: Applicazioni Blockchain: a cosa serve la blockchain?
Tutorial n. 3: che cos’è un portafoglio blockchain e come funziona?
Tutorial #4: Blockchain Explorer Tutorial – Che cos’è un Blockchain Explorer
Tutorial #5: Blockchain ETF Tutorial – Scopri tutto sugli ETF Blockchain
Tutorial #6: Perché la sicurezza Blockchain è fondamentale e come viene implementata?
Tutorial n. 7: Come diventare uno sviluppatore Blockchain
Tutorial n. 8: Certificazione Blockchain e corsi di formazione
Tutorial n. 9: Top 13 MIGLIOR software DNS Blockchain [ELENCO AGGIORNATO]


Che Cos’è La Tecnologia Blockchain?

Fare riferimento all’immagine seguente per comprendere le differenze tra reti decentralizzate, distribuite e centralizzate.

Reti distribuite, centralizzate e decentralizzate

Una blockchain è un software che consente a una rete di computer di connettersi direttamente tra loro senza intermediari. Stabilisce una rete di computer distribuita o decentralizzata attraverso la quale i valori possono essere inviati istantaneamente, scambiati istantaneamente o archiviati in modo sicuro ea un costo inferiore.

I dati vengono copiati su più nodi e ciascuno di questi nodi esegue la copia della blockchain. A causa di ciò, e del fatto che i dati sono archiviati immutabilmente in catene, la blockchain elimina le possibilità che i record digitali vadano persi. Riduce anche le possibilità che i documenti vengano manomessi e una situazione in cui diventino non disponibili nel caso in cui il nodo o il computer di un utente sia inaccessibile.

A parte la definizione di cui sopra, in termini semplici, il nome blockchain implica una catena di blocchi. I dati vengono archiviati in blocchi e quindi i blocchi vengono accumulati e protetti mentre le transazioni continuano a essere eseguite sulla rete. La catena di blocchi è collegata tra loro rendendo difficile perdersi la cronologia delle transazioni.

Inoltre, ogni blocco è contrassegnato da un timestamp con dettagli come l’ora, la data e l’importo delle transazioni pubbliche.

Aspetti chiave della blockchain

Blockchain risolve tre cose che Internet non può. Si prega di fare riferimento alla tabella seguente per comprendere gli aspetti chiave:

Aspetti chiave
Valore Blockchain crea valore sugli asset digitali e il cui valore è controllato solo dal proprietario senza intermediari. Il valore non può essere censurato dal governo
Fiducia Blockchain tiene traccia della proprietà, della spesa e dei registri in modo permanente e immutabile, in modo che siano disponibili pubblicamente e possano essere tutti tracciati.
Affidabilità Blockchain rimuove i singoli punti di errore: l’intermediario che potrebbe archiviare i dati in una posizione e controllare i dati e questi dati non sarebbero certamente disponibili se il punto centrale non è disponibile.

Storia della blockchain

La tecnologia Blockchain è stata introdotta nel 1991. È nata dalla necessità di un metodo che potesse contrassegnare i documenti digitali con data e ora per impedire che venissero manomessi o retrodatati. I ricercatori Stuart Haber  e  W. Scott Stornetta hanno descritto un sistema che utilizzava una catena di blocchi protetti dalla crittografia per archiviare documenti con timestamp.

Stuart Haber
 Stuart Harber
fonte immagine ]

Scort Stornetta
Scott Stornetta
fonte immagine ]

Successivamente è stato possibile incorporare molti documenti in un unico blocco e quindi collegare un blocco all’altro. Questo dopo che i Merkle Trees sono stati aggiunti al design nel 1992 per rendere più efficiente la tecnologia blockchain.

Un blocco può quindi memorizzare una serie di record di dati e quindi può essere collegato al successivo, con l’ultimo contenente una cronologia dell’intero blocco. Il brevetto per la tecnologia blockchain è scaduto nel 2004 con la tecnologia inutilizzata fino ad allora.

Una Reusable Proof of Work (RPoW) introdotta nel 2004 da Hal Finney, un attivista crittografico come prototipo per il denaro digitale, ha aperto la strada all’introduzione delle criptovalute. Il sistema potrebbe funzionare e ricevere un token in cambio del lavoro svolto.

Il token non fungibile utilizzato sulla rete era basato sulla prova di lavoro di Hashcash e non era scambiabile, ma poteva essere trasferito da persona a persona. In questo sistema, il token potrebbe essere archiviato su un server affidabile e gli utenti di tutto il mondo potrebbero verificarne la correttezza e l’integrità.

La teoria delle blockchain distribuite è stata poi introdotta da Satoshi Nakamoto nel 2008. Grazie alla sua innovazione, è diventato possibile aggiungere blocchi alla catena senza dover richiedere che fossero firmati da parti fidate o intermediari. Gli alberi modificati potrebbero ora contenere una cronologia sicura dei record di dati e ogni scambio potrebbe essere contrassegnato da un timestamp e verificato dai partecipanti a una rete peer to peer.

Così blockchain potrebbe sostenere cryptocurrencies e Satoshi Nakamoto ‘ s design è ora servito come il libro mastro pubblico per tutte le transazioni criptovaluta in blockchains. Sebbene Nakamoto abbia usato le parole blocco e catena separatamente nel suo articolo originale che descrive Bitcoin, le parole sono state infine rese popolari come una singola parola, Blockchain, entro il 2016.

Letture consigliate =>> App di scambio di criptovaluta sul mercato [Top Selective]

Versioni blockchain

a) Blockchain Versione 1.0: La prima implementazione della tecnologia di contabilità distribuita per creare denaro risolvendo enigmi informatici è stata introdotta da Hal Finney nell’anno 2005.

b) Blockchain 2.0: Smart Contract: si tratta di programmi per computer gratuiti esistenti in una blockchain. Vengono eseguiti automaticamente per verificare le condizioni di agevolazione, verifica o applicazione. Alla fine della giornata, la blockchain ha permesso di proteggere i programmi automatizzati rendendoli impossibili da manomettere.

Gli sviluppatori sono ora in grado di creare e distribuire le proprie applicazioni (dApp) sulla blockchain. Un buon esempio dell’applicazione di contratti intelligenti è sulla blockchain di Ethereum.

c) Blockchain 3.0: DApp: sono applicazioni decentralizzate basate su blockchain. Usano l’archiviazione e la comunicazione decentralizzate. Il codice frontend per una dApp è ospitato su storage decentralizzato mentre l’interfaccia utente è codificata in qualsiasi lingua che possa effettuare una chiamata al suo backend proprio come nel caso di un’app tradizionale.

Tipi di catene a blocchi

Blockchain pubblica vs privata

Public_vs_Private_Blockchain
fonte immagine ]

I tipi pubblici, privati ​​e ibridi sono comuni nelle applicazioni blockchain.

La blockchain pubblica non ha alcuna autorità centrale che controlli o diriga le sue operazioni. Tutti gli utenti partecipano alla governance. Quindi è resistente alla censura poiché chiunque può partecipare alla rete indipendentemente dalla posizione e dalla nazionalità. Quindi è difficile spegnerlo.

Le blockchain pubbliche hanno criptovalute per definire il valore che viene utilizzato per incentivare gli utenti come ricompensa per mantenere attiva la rete, per proteggere le sue operazioni e per approvare le transazioni su di essa. Le transazioni su una blockchain pubblica sono pubbliche e visibili a chiunque tramite gli esploratori. Gli esempi includono le blockchain di Bitcoin ed Ethereum.

Le reti blockchain private , note anche come reti autorizzate, sono invece gestite da organizzazioni private. L’organizzazione, un gruppo o un consorzio funge da mezzo di accentramento perché limita i partecipanti in base a determinati criteri e definisce chi si connette e opera sulla rete.

Le transazioni su queste reti sono pubbliche e sono più centralizzate perché i partecipanti richiedono di rispettare le regole delle entità che gestiscono le blockchain. Hanno la loro applicazione idea. Un esempio di ciò è quando un’azienda vuole collaborare con pochi altri per condividere dati sensibili che non possono essere rivelati attraverso una blockchain pubblica. Queste blockchain possono o meno avere una criptovaluta o un token come risorsa nativa.

Esempi di reti di catene di blocchi private sono le blockchain di consorzi come la blockchain IBM. In questo caso, un gruppo di entità private concorda su questioni di governance per vantaggi condivisi come la condivisione dei dati dei clienti. IBM Blockchain si basa sull’Hyperledger Fabric open source e IBM applica la blockchain per diversi motivi con diversi consorzi.

Altri esempi includono blockchain della catena di approvvigionamento in cui l’azienda consente a diversi partecipanti nel settore della logistica di condividere e proteggere i dati aziendali, migliorare l’efficienza e accelerare le transazioni transfrontaliere. Le aziende possono guardare gli esempi di reti blockchain autorizzate a cui desiderano unirsi per ottenere i vantaggi condivisi in queste reti.

Le banche centrali e i governi possono anche collaborare attraverso blockchain di consorzi per interessi condivisi per preoccupazione pubblica.

Alcuni blockchain privati ​​non memorizzeranno i dati relativi alla persona o all’azienda coinvolta nella transazione, ma altri lo faranno. Invece di utilizzare un vero nome, tuttavia, il nome viene memorizzato come una “firma digitale” o una sorta di nome utente. Un codice crittografico univoco, noto come “hash” è memorizzato nella blockchain che differenzia un blocco da un altro.

Una blockchain ibrida combina i vantaggi per la privacy ottenuti su una rete autorizzata con i vantaggi per la trasparenza ottenuti su una catena di blocchi pubblica. Con questo, le aziende possono rendere privati ​​alcuni dati garantendo al contempo la trasparenza avvalendosi pubblicamente di altri tipi di dati e informazioni.

Un esempio di rete blockchain ibrida è Dragonchain, che è un protocollo che consente ai suoi utenti di connettersi con altri utenti su altri protocolli blockchain. Le aziende possono utilizzare questo protocollo per collaborare con altri o servire gli utenti su più blockchain, private o pubbliche.

Come Funziona Una Catena Di Blocchi?

Un nodo viene utilizzato per accedere a una copia completa della blockchain. Chiunque voglia eseguire una blockchain può scaricarla e sincronizzarla con la rete. Tuttavia, è possibile effettuare transazioni su di esso senza averne una copia completa.

Un modo è utilizzare un’applicazione decentralizzata personalizzata. Questo è ciò che rende blockchain una piattaforma poiché utenti e aziende possono creare il proprio software ed estenderlo a loro piacimento dato che è open-source.

Gli individui e le aziende possono anche accedere e utilizzare la blockchain tramite plug-in o estensioni del browser, estensioni del portafoglio o tramite software di terze parti personalizzato come i portafogli autonomi. Le aziende possono anche collegarsi tramite integrazioni API.

Ad esempio, un’azienda può sviluppare la propria rete blockchain personalizzata  o un’applicazione decentralizzata per raggiungere determinati scopi come proteggere i dati aziendali, stabilire una criptovaluta o un token digitale; o forse per integrare i suoi pagamenti con i fornitori.

Un’azienda può anche ospitare i suoi interi processi di acquisto e vendita sulla blockchain, consentendo ai clienti di pagare con criptovalute anziché fiat. Tutto ciò di cui un’azienda ha bisogno sono gli strumenti adeguati per creare una blockchain o un’applicazione da zero. Altri scelgono di personalizzare le blockchain pubbliche open source esistenti come Bitcoin ed Ethereum in una blockchain personalizzata.

La maggior parte delle aziende sta creando app blockchain (chiamate dApp) che possono eseguire varie operazioni invece di creare blockchain da zero. Questo perché costruire da zero richiede tempo e risorse rispetto alla creazione di una dApp o alla personalizzazione di una blockchain esistente. Un’azienda deve anche assumere sviluppatori blockchain nel processo.

Vedremo le ragioni per costruire o adottare questa tecnologia più avanti in questo tutorial.

Nodi Blockchain

Metodi di comunicazione tra computer client-server e peer-to-peer:

reti di server peer-to-peer e client
fonte immagine ]

Idealmente, l’intenzione principale della blockchain è quella di stabilire una rete decentralizzata priva di intermediari nota anche come single point of failure perché una rete centralizzata fallirebbe se si verificasse un problema con l’archiviazione centrale o il proprietario.

Chiunque può quindi partecipare a questa rete decentralizzata o distribuita per archiviare e condividere dati o valore, effettuare transazioni e scambiare dati o valore, per contribuire con risorse per attività come il mining e per comunicare con i colleghi. Ci sono molte altre applicazioni disponibili che vedremo in questa serie.

Idealmente, la catena di blocchi consente la creazione di registri digitali distribuiti che possono essere archiviati in copie su più computer gestiti da utenti diversi. Tutti gli utenti condividono lo stesso registro in tempo reale. Approvano anche eventuali aggiornamenti e modifiche al libro mastro.

Una rete blockchain può coprire chilometri di distanza e connettere utenti in diversi paesi e continenti in tutto il mondo. Ad esempio , circa 10.000 nodi sono distribuiti in tutto il mondo e ognuno esegue una copia della blockchain di Bitcoin. Ciò non significa che Bitcoin abbia 10.000 utenti; Bitcoin ha milioni di utenti in tutto il mondo e alcuni si connettono anche con metodi come portafogli e altri software.

Distribuzione globale dei nodi Bitcoin su una mappa:

Distribuzione globale dei nodi Bitcoin su una mappa
fonte immagine ]

I nodi Blockchain agiscono per verificare ciascuna delle transazioni sulla catena rispetto a un insieme di dati per dimostrare che è legittimo secondo i requisiti di rete. Proprio come i tuoi dati verrebbero verificati in banca dal commercialista prima di consentirti di effettuare transazioni, allo stesso modo le transazioni su una blockchain devono essere verificate per la validità.

Ad esempio, i nodi che eseguono una copia della blockchain di rete confermeranno che il mittente ha una quantità di valore sufficiente per consentire il passaggio della transazione e aggiungerla a un blocco e quindi a una catena. Rifiuteranno anche la transazione se l’importo non è sufficiente o ci sono alcune frodi come il tentativo di doppia spesa.

Una volta dato il via libera, la transazione viene archiviata sul blocco insieme ad altre transazioni accettate. Il blocco viene successivamente aggiunto ai blocchi precedenti nella catena. Tutti i nodi si aggiorneranno quindi alla catena aggiornata e la eseguiranno.

Al blocco viene assegnato un codice hash prima di essere aggiunto alla catena. Il blocco diventa quindi pubblicamente disponibile per chiunque possa visualizzare la cronologia delle transazioni e altri dettagli pubblici come chi ha aggiunto il blocco e quando (altezza) è stato aggiunto alla catena.

I Blockchain Explorer possono essere utilizzati da chiunque per visualizzare tutte le transazioni e altri dettagli sulla blockchain. Tuttavia, i dettagli del mittente rimangono abbastanza privati, come il nome del mittente. Blockchain.com è un esempio di blockchain explorer che può essere utilizzato per visualizzare le transazioni in varie blockchain. Nota, queste transazioni sono inalterabili.

In che modo Blockchain protegge dati e informazioni?

Come Blockchain protegge dati e informazioni

Blockchain utilizza la crittografia , che utilizza algoritmi informatici di crittografia e decrittografia a chiave pubblica e privata per proteggere i dati degli utenti. La crittografia consente la trasmissione di dati grezzi sulla rete come Internet o su una rete blockchain o in modalità di salvataggio per essere convertiti in un formato illeggibile che non ha senso per i lettori di terze parti.

Ciò significa che è sicuro e privato effettuare transazioni e scambiare informazioni su una blockchain. Prima che un utente invii dati al secondo utente, il primo può utilizzare una chiave pubblica per crittografare i dati, quindi il secondo può utilizzare una chiave privata correlata ai dati durante la crittografia per decrittografare e leggere le informazioni. È il motivo per cui la blockchain è una delle tecnologie più sicure per proteggere i dati per le organizzazioni.

La sicurezza è una caratteristica molto importante. Ad esempio, poiché una blockchain consentirà di trasferire una risorsa digitale da un utente all’altro o di essere archiviata o utilizzata per acquistare un prodotto, questo valore non deve essere duplicabile, sottratto o contraffatto.

Registro distribuito contro database normale

Blockchain Banca dati
1 Blockchain è un registro distribuito ed è quello condiviso, replicato e sincronizzato da tutti i partecipanti a una rete. Supporta la comunicazione e le transazioni peer-to-peer tra gli utenti. Il database è un registro centrale che utilizza un’architettura di rete client-server. Viene impiegato un server centrale. Gli utenti comunicano ed effettuano transazioni attraverso il server e gli intermediari.
2 Nella blockchain, tutti gli utenti hanno uguale controllo della rete e dell’amministrazione attraverso il consenso. Richiedono chiavi e firme crittografiche per accedervi L’amministratore è l’unico responsabile e gestirà tutto compreso chi ha il diritto di leggere, scrivere, aggiornare o cancellare le operazioni
3 Poiché il registro è distribuito e i membri fungono da testimoni pubblici delle transazioni, sono difficili da falsificare e gli attacchi informatici sono più difficili di quanto non lo siano in un normale database.
Le transazioni sono contrassegnate da data e ora e protette da crittografia e sono impossibili da eliminare o da libri di cucina.
Per un attacco di successo, tutti i nodi richiedono di essere attaccati e compromessi.
È facile falsificare i dati quando l’attaccante ottiene l’accesso al singolo o ad alcuni server in cui i dati sono archiviati centralmente. I documenti sono facili da falsificare e possono cambiare proprietà
4 Ridondante, con un numero estremamente elevato di copie che richiedono uno spazio di archiviazione enorme per la rete. Il ridimensionamento inizia a diventare un problema. I database riducono la ridondanza dei dati poiché vengono conservati come singole o poche copie, consentono la condivisione dei dati tra utenti e parti selezionati e riducono i tempi di sviluppo e manutenzione a differenza di un’architettura distribuita in cui gli utenti dovranno approvare le modifiche.
5 Difficile da mantenere e sviluppare poiché tutti devono raggiungere un consenso sui cambiamenti Molto facile da mantenere e aggiornare perché sono necessarie poche o un’autorità centrale per approvare gli aggiornamenti.
6 Molto più democratico e partecipativo perché ogni utente deve partecipare alla costruzione del consenso Meno partecipativo e dittatoriale se c’è l’abuso di potere.

Elementi costitutivi della blockchain

Algoritmo di consenso Blockchain

Un algoritmo di consenso all’interno di una blockchain è l’insieme di regole della casa su come è governata la blockchain, come gli utenti formulano e concordano le regole e come avvengono le transazioni. La governance è un aspetto importante per una blockchain perché determina quanto sia decentralizzata o centralizzata la rete.

Ad esempio, gli algoritmi di consenso blockchain consentono a qualsiasi utente di proporre modifiche alla rete e a tutti gli altri di votare su queste proposte. Nelle versioni delegate, gli utenti selezionano i delegati che creano regole e governano la rete per conto di altri utenti.

algoritmo di consenso blockchain
fonte immagine ]

Alcune versioni consentono agli utenti di contribuire alla governance in base al numero di risorse (calcolo o quantità di criptovalute) che contribuiscono. In Bitcoin, ad esempio, i minatori votano le modifiche in base al numero di risorse del computer o alla potenza di calcolo che contribuiscono per supportare la rete e approvare le transazioni.

Nell’algoritmo Proof of Work, i minatori competono per creare un blocco e colui che crea un blocco con successo viene premiato con la criptovaluta dopo la creazione. I minatori votano per consentire o rifiutare le proposte di upgrade inoltrate da altri utenti.

Proof of Work (PoW): questo algoritmo si basa sull’idea di risolvere un complesso puzzle matematico per fornire un blocco di soluzione. Richiede molta potenza di calcolo e il minatore che risolve il puzzle estrae un blocco e viene ricompensato con Bitcoin.

Proof of Stake (PoS): questo algoritmo convalida un blocco, selezionando il creatore del blocco in base al numero di monete salvate sul portafoglio. Quindi vengono ricompensati per aver trovato il blocco. In altre parole, il codice informatico dell’algoritmo assegna la più alta probabilità di minare la maggior parte delle transazioni e quindi il blocco, alla persona con la più alta quantità di monete nel pool del validatore.

Nei successivi round di validazione, le possibilità per il validatore precedentemente selezionato continuano a ridursi finché anche altri validatori non avranno la possibilità di verificare un blocco.

In Delegated Proof-of-Stake (DPoS) , gli staker selezionano i delegati e affidano loro la convalida del blocco. Le parti interessate voteranno per selezionare i delegati.

Altri algoritmi includono Delegated Proof-of-Stake (DPoS), gli staker selezionano i delegati e affidano loro la convalida del blocco. Le parti interessate voteranno per selezionare i delegati; Bizantina Fault Tolerance (BFT) che seleziona validatori di blocchi in base alla loro reputazione sfruttando le loro identità reali.

I validatori affidabili sono pre-approvati e selezionati dai partecipanti per agire come moderatori. Altri sono la pratica tolleranza d’errore bizantina (pBFT); Accordo Bizantino Federato (FBA); e Tolleranza ai guasti bizantina delegata (dBFT).

Alcuni blockchain utilizzano algoritmi ibridi per sfruttare i vantaggi di più di un algoritmo.

L’immagine seguente spiega la differenza tra i due principali metodi di consenso: Proof of Work contro Proof of stake:
prova-di-lavoro-contro-prova-di-gioco
fonte immagine  ]

Blockchain e hashing Creazione di blocchi

Una volta che le transazioni vengono inviate alla rete, ciascuna deve essere completata entro un determinato periodo di tempo. Le transazioni inviate contemporaneamente vengono combinate in un blocco. L’hashing crittografico viene impiegato per trasformare le transazioni in un blocco sicuro, che viene poi connesso per formare una catena. In questo caso viene utilizzata una funzione hash o un algoritmo.

Una funzione hash trasforma una stringa di input di qualsiasi dimensione in un output di stringa a lunghezza fissa (chiamato hash) come 32 bit o 64 bit o 128 bit o 256 bit a seconda della funzione hash utilizzata.

L’hash è il sottoprodotto crittografico dell’algoritmo hash che è una funzione unidirezionale, il che significa che non può essere possibile invertire nuovamente l’output in input. L’algoritmo produce anche un output univoco. Queste proprietà sono molto essenziali, ad esempio nella criptovaluta Bitcoin, dove viene utilizzata nel suo meccanismo di consenso.

L’output funge da impronta digitale per una determinata quantità di dati. Le transazioni fungono da input dell’algoritmo hash nelle criptovalute. Questo algoritmo di hashing, sviluppato dalla National Security Agency (NSA) nel 2001, è utilizzato in Bitcoin e in molte altre criptovalute.

Come funziona l’hashing?

Iniziando con una stringa di qualsiasi lunghezza di input, si finisce con una stringa fissa che è una serie di numeri e lettere.

Come funziona l'hashing?

Ad esempio , supponiamo che tu installi un algoritmo di hashing nel tuo computer e digiti le parole “Questo è un ottimo tutorial” l’output è: 759831720aa978c890b11f62ae49d2417f600f26aaa51b3291a8d21a4216582a

Un piccolo cambiamento nell’input si tradurrà in un’enorme differenza nell’output e ogni output è unico per un dato input per evitare collisioni. L’output è sempre lo stesso per lo stesso input, il che garantisce la coerenza.

Ad esempio, cambiando le parole di input in ” questo è un ottimo tutorial” otteniamo l’output come 4bc35380792eb7884df411ade1fa5fc3e82ab2da76f76dc83e1baecf48d60018

Questo è un cambiamento enorme per un piccolo cambiamento da “T” a “t”.

A differenza della crittografia, le funzioni crittografiche sono irreversibili perché è impossibile iniziare con qualcosa come il valore Hash di output 4bc35380792eb7884df411ade1fa5fc3e82ab2da76f76dc83e1baecf48d60018 e terminare con l’input per “questo è un ottimo tutorial”.

Come è integrato un blocco Blockchain?

Qualsiasi nuovo blocco nella catena è formato dall’hashing delle transazioni inviate in rete dai partecipanti. Prendiamo ad esempio quando chiedono di inviare criptovalute o di salvare file. Il blocco dovrebbe avere un numero di blocco (il suo conteggio nella catena), un campo dati, un hash crittografico associato e un Nonce.

Il Nonce (Numero utilizzato una volta) viene utilizzato per generare un hash crittografico che soddisfa un determinato criterio per essere valido. Ad esempio, diciamo un requisito che affinché l’output dell’hash sia valido deve avere quattro zeri all’inizio (come nel caso di questo output: 00001acbm010gfh1010xxx). In caso contrario, non sarà valido. È reso valido utilizzando il nonce.

Un nonce è un numero casuale che deve essere modificato manualmente e molte volte tramite congetture in modo tale che quando viene inserito nell’algoritmo o nella funzione hash insieme al resto dei dati del blocco. Deve fornire un blocco valido che obbedisce alla regola o all’obiettivo, ad esempio iniziando con i quattro zeri.

Questo è in realtà ciò che fanno i minatori negli algoritmi Proof of Work, il software di mining continua a indovinare il numero che inizia con uno, in modo incrementale. Continua ad alimentare le supposizioni finché non produce un output hash che soddisfa il criterio o l’obiettivo specificato.

La durata della scadenza necessaria per fare un’ipotesi corretta per un particolare set di dati di blocco varia da blockchain a blockchain, con Bitcoin pari a 10, Ethereum 3 secondi, ecc. Il minatore che esegue le congetture corrette viene ricompensato con criptovaluta nel caso di Proof of Lavoro.

Una volta che il blocco viene estratto, viene aggiunto alla catena precedente, rendendolo immutabile o immutabile ma anche pubblicamente disponibile tramite gli esploratori blockchain.

Nelle criptovalute, il problema della doppia spesa viene risolto facendo in modo che la prima transazione da confermare venga aggiunta a un blocco mentre l’altra venga rifiutata. Se entrambe le transazioni vengono selezionate contemporaneamente da diversi minatori, la transazione che ottiene un numero massimo di conferme viene aggiunta alla catena mentre l’altra viene rifiutata.

In ogni blockchain come la catena Bitcoin, i blocchi vengono costruiti partendo da 1 e aumentando fino a n. Ciascun blocco contiene dati di intestazione, ovvero campo numero blocco ,  campo dati ,  campo nonce ,  campo valore hash e  campo precedente . Il campo precedente dettaglia il valore hash del blocco prima di esso. Ad esempio, il blocco di genesi numero uno in qualsiasi catena conterrà il valore hash di 0, ecc.

Un vantaggio della catena e che fa sì che i blocchi siano immutabili è che, se i dati su un blocco vengono alterati, verrà comunicato a chiunque sulla rete che c’è stato un cambiamento su quel numero di blocco x.

Inoltre, il nuovo set di dati in seguito all’alterazione avrà ora una nuova firma. Significa che questo nuovo blocco non sarà incatenato al resto della catena e spezzerà la catena in modo tale che tutti i blocchi successivi non si concateneranno alla catena originale. I minatori rifiuteranno il numero di blocco x come non valido e passeranno al record precedente della blockchain in cui tutti gli altri blocchi sono concatenati insieme.

Tuttavia, la modifica dei dati può avvenire tramite un aggiornamento del software e l’aggiornamento tramite un processo chiamato fork. I minatori hanno la possibilità di aggiornare alla nuova versione e procedere con la nuova catena o rimanere fedeli alla vecchia catena.

Difficoltà di creare un blocco

La difficoltà di trovare un blocco è codificata nella blockchain ma è anche collegata ai quattro zeri iniziali nell’output dell’hash. Ciò che la difficoltà significa qui è la difficoltà di trovare un output di hash che è più piccolo o più grande del target; dire almeno quattro zeri iniziali.

La complessità aumenta anche di volta in volta man mano che più persone si uniscono alla rete o meglio con un aumento del potere di hashing. Tuttavia, viene regolato periodicamente per garantire che il blocco venga estratto entro un tempo prestabilito.

Ad esempio, in Bitcoin, deve essere estratto entro 10 minuti. Se più persone si uniscono alla rete Bitcoin, aumenterà per garantire che il blocco non venga estratto più velocemente e se meno è sulla rete, la difficoltà diminuisce per garantire che il blocco sia più facile da trovare per evitare ritardi nell’elaborazione. La regolazione della difficoltà è automatica.

Idealmente, ciò che la difficoltà significa qui è il numero di scelte che un minatore ha per trovare un blocco. Meno sono, più è difficile trovare un blocco. Ad esempio , un numero target più basso significa meno scelte e questo significa che è ancora più difficile da trovare.

Conclusione

Blockchain introduce un registro distribuito che può essere condiviso tra dispositivi in ​​rete. Gli individui sulla rete possono condividere file e valori come le criptovalute in modo sicuro, su base peer-to-peer senza la necessità di intermediari. Ciò significa interruzioni ridotte e non c’è un singolo punto di errore, c’è un’elevata affidabilità nella rete. Grazie alla crittografia, tutte le risorse sono protette con un’elevata sicurezza.

Gli aspetti più importanti della blockchain sono la sua sicurezza, garantita dalla crittografia; scalabilità in cui la rete dovrebbe ospitare milioni di utenti senza compromettere la sicurezza e l’affidabilità; e decentralizzazione, il che significa che il controllo e la governance devono essere raggiunti da tutti gli individui della rete e non da pochi eletti.

Le regole con cui gli individui concordano sulle transazioni e la creazione della catena sono chiamate algoritmo o meccanismi di consenso. La base di questi meccanismi è la Prova di lavoro in cui gli individui concordano su cosa e quando le transazioni vengono eseguite o vengono elaborate, in base alla quantità di potenza di elaborazione del computer che contribuiscono. La tecnologia blockchain ha continuato a crescere.

I nuovi algoritmi di consenso sono più di 10 e continuano a essere innovati per garantire che le reti siano scalabili, più sicure e più decentralizzate.