Cos'è la tecnologia Blockchain? Come funziona Blockchain



Questo blog Blockchain ti aiuterà a capire come funziona la blockchain. La tecnologia Blockchain è un database distribuito decentralizzato di record immutabili in cui le transazioni sono protette da algoritmi crittografici e lo stato della rete è mantenuto dall'algoritmo di consenso.

Blockchain è il nuovo Internet? Beh, certamente lo è !!

La tecnologia Blockchain è Internet 3.0 o Internet of Protocols. Quella che è iniziata come un'evoluzione sta gradualmente diventando una rivoluzione. Ha il potenziale per trasformare il business come lo conosciamo attualmente, ma capire come non è così facile. Così Ecco un volantino per farti percepire come funziona Blockchain.

  1. Cos'è la tecnologia Blockchain?
  2. Come funziona Blockchain?
    2.1 Verifica indipendente delle transazioni
    2.2 Aggregazione di transazioni verificate
    2.3 Estrazione di un blocco
  3. E se qualcuno cerca di hackerare il sistema?





Cos'è la tecnologia Blockchain?

Blockchain è un database distribuito decentralizzato di record immutabili, dove le transazioni sono protette da strong algoritmi crittografici e lo stato della rete è mantenuto da Algoritmo di consenso .

timestamp digitale-come funziona la blockchain-edureka

Timestamp digitali



In parole semplici, Blockchain è una catena di blocchi che contengono informazioni.

La tecnologia è stata originariamente descritta nel 1991 ed era destinata a documenti digitali timestamp per evitare retrodatazioni o tempra dei record.

Per quanto grande fosse la tecnologia, il suo vero potenziale non è stato realizzato fino a quando Satoshi Nakamoto non l'ha usato per creare una criptovaluta digitale ' i Bitcoin '.



Tecnologia Blockchain | Tutorial Blockchain per principianti | Edureka

Ora vediamo come funziona Blockchain.

Come funziona Blockchain?

Proviamo a capire come funziona la blockchain con una semplice transazione su una rete Blockchain.

Supponiamo che James voglia inviare 5 BTC al suo amico Kevin. Ora, questa transazione viene trasmessa sotto forma di un file digitale Messaggio.

Il messaggio digitale ha una firma unica. Proprio come la tua firma fornisce la prova della proprietà del documento, allo stesso modo, firma digitale fornisce la prova che il la transazione è autentica.

Ora questa transazione generata viene trasmessa alla rete dove si propaga peer to peer.

La transazione propaga il peer to peer nella rete

Supponiamo che la transazione di cui sopra sia stata ricevuta per prima da nodo A nella rete.

che cosa sono i dati nella scienza

Verifica indipendente delle transazioni

Prima di inviare transazioni ai suoi vicini, ogni nodo bitcoin che riceve la transazione verificherà inizialmente la transazione.Ciò garantisce che solo le transazioni valide vengano propagate attraverso il sistema mentre le transazioni non valide vengono eliminate nel primo nodo che le riceve. Ogni nodo conferma ogni transazione in base a una lunga agenda di criteri.

Aggregazione di transazioni verificate

Aggregazione indipendente di tali transazioni in nuovi blocchi da nodi di mining combinata con il calcolo mostrato attraverso un algoritmo di prova del lavoro.

  • Confermando autonomamente ogni transazione man mano che viene ricevuta e prima di propagarla, ogni nodo fabbrica un pool di transazioni valide (per quanto non confermate) note come pool di transazioni, pool di memoria o mempool
  • La transazione raggiunge M ining nodi raccoglie, convalida e inoltra nuove transazioni proprio come gli altri nodi
  • A differenza di altri nodi, il nodo miner aggregherà quindi queste transazioni in un file blocco candidato

Comprendiamolo meglio con un esempio.

Supponiamo che Andy sia un minatore. (Un nodo minerario mantiene una copia locale della blockchain, l'elenco di tutti i blocchi creati dall'inizio del sistema bitcoin nel 2009)

Ora, dopo aver raccolto tutte le transazioni in un blocco, Andy deve costruire l'intestazione del blocco. Ora questo passaggio è importante per capire come funziona la blockchain

Costruire un'intestazione di blocco

Per costruire l'intestazione del blocco, il nodo di mining deve compilare sei campi, come elencato nella tabella:

Taglia Campo Descrizione
4 byteVersionePer costruire l'intestazione del blocco, il nodo di mining deve riempire sei campi, come elencato
32 bytePrecedente Block HashUn riferimento all'hash del blocco precedente (genitore) nella catena
32 byteMerkle RootUn hash della radice dell'albero Merkle delle transazioni di questo blocco
4 byteTimestampIl tempo di creazione approssimativo di questo blocco (secondi da Unix Epoch)
4 byteObiettivo di difficoltàL'obiettivo di difficoltà dell'algoritmo di prova del lavoro per questo blocco
4 byteNunzioUn contatore utilizzato per l'algoritmo di prova del lavoro

Una volta che il nodo di Andy ha riempito tutti i campi nell'intestazione del blocco, Andy ha iniziato Estrazione il blocco.

Estrazione di un blocco

  • Con tutti gli altri campi riempiti, l'intestazione del blocco è ora completa e il processo di mining può iniziare
  • L'obiettivo è ora trovare un valore per il file nunzio ciò si traduce in un hash di intestazione del blocco inferiore al target di difficoltà
  • Il nodo di mining dovrà testare miliardi o trilioni di valori nonce prima che venga trovato un nonce che soddisfi il requisito

Ora che un blocco candidato è stato costruito dal nodo di Andy, è tempo che il mining rig hardware di Andy 'minerà' il blocco, per trovare una soluzione all'algoritmo di prova del lavoro che rende valido il blocco.

Prova di lavoro è un dato difficile (costoso, dispendioso in termini di tempo) da produrre ma facile da verificare per altri e che soddisfa determinati requisiti.

Trovare il puzzle: perché è difficile?

  • SHA-256 è una funzione unidirezionale quindi, forza bruta è l'unico modo per ottenere un particolare valore di output
  • In media, sono necessarie molte ipotesi casuali per trovare una soluzione e quindi la sfida è difficile
  • In media, qualcuno impiega circa 10 minuti per trovare la chiave speciale per la soluzione

Per mantenere prevedibile la distribuzione delle monete, i puzzle diventano sempre più difficili da risolvere quando più persone ci lavorano.

Ora, per convalidare il blocco in base a prova di lavoro algoritmo, il nodo minerario di Andy deve raggiungere l'obiettivo di difficoltà.

Vediamo come viene rappresentata la difficoltà.

Rappresentazione della difficoltà

  • Il blocco contiene l'obiettivo di difficoltà, in una notazione chiamata 'bit di difficoltà' o semplicemente 'bit'
  • Supponiamo che un blocco abbia 0x1903a30c come bit di difficoltà. Questa notazione esprime l'obiettivo di difficoltà come un formato coefficiente / esponente, con le prime due cifre esadecimali per l'esponente e le successive sei cifre esadecimali come coefficiente

La formula per calcolare l'obiettivo di difficoltà da questa rappresentazione è:

Quindi, tale è il coefficiente di difficoltà che il nodo minerario di Andy ha lavorato davvero duramente per raggiungere l'obiettivo di difficoltà. Vediamo cosa succede dopo.

Estrazione con successo del blocco

  • Andy ha diversi impianti di mining hardware, ognuno con l'estensione SHA256 algoritmo in parallelo a velocità incredibili
  • Il nodo di mining in esecuzione sul desktop di Andy trasmette l'intestazione del blocco al suo hardware di mining, che inizia a testare trilioni di nonce al secondo
  • Quasi 11 minuti dopo aver iniziato a estrarre il blocco, una delle macchine di mining hardware trova una soluzione e la invia di nuovo al nodo di mining
  • Immediatamente, il nodo minerario di Andy trasmette il blocco a tutti i suoi pari
  • Ricevono, convalidano e quindi propagano il nuovo blocco. Mentre il blocco si diffonde attraverso la rete

NPoiché quel blocco viene propagato nella rete, ogni full nodes verifica indipendentemente il blocco

Conferma indipendente di ogni blocco

  • Nel meccanismo di consenso di bitcoin, ogni nuovo blocco viene convalidato indipendentemente da ogni nodo sulla rete
  • Ciò garantisce che solo i blocchi validi vengano propagati sulla rete
  • I nodi convalidano il blocco confrontandolo con un lungo elenco di criteri che devono essere tutti soddisfatti

Assemblaggio e selezione di catene di blocchi

Una volta che un nodo ha convalidato un nuovo blocco, tenterà di assemblare una catena collegando il blocco alla blockchain esistente

esempio di argomenti della riga di comando java

Nella rete mostrata sopra, una volta che il nodo (in arancione) convalida il blocco, assembla la catena collegando il blocco alla blockchain esistente

Una volta che il blocco viene verificato dalla rete, diventa la parte della blockchain e per aver risolto con successo il puzzle a blocchi il minatore viene premiato.

Ricompensa minatori

  • Poiché i minatori usano le loro preziose risorse per convalidare il blocco, vengono dati un premio in denaro
  • In caso di Bitcoin, ricevono alcuni Bitcoin di nuova creazione come ricompensa

Ora, sorge la domanda, cosa succede nel caso in cui più di un blocco viene risolto contemporaneamente?

Sì, questo è davvero possibile! In tal caso, esistono diversi rami.

Diversi rami

  • Sebbene il problema sia difficile, tuttavia, è possibile che più di un blocco venga risolto contemporaneamente
  • Diversi rami nella blockchain sono possibili in questi casi
  • Tutti dovrebbero semplicemente costruire i blocchi sopra il primo blocco che ricevono
  • Altri nodi potrebbero aver ricevuto i blocchi in un ordine diverso
  • Costruiranno sul blocco che ricevono per primo

  • Il pareggio si interrompe quando qualcuno risolve il blocco successivo perché è molto raro che questa situazione si verifichi più volte di seguito

  • Blockchain si stabilizza rapidamente in questa situazione
  • La regola generale è passare alla catena più lunga disponibile

La Blockchain si stabilizza rapidamente. Ogni nodo è in accordo con lo stato attuale del libro mastro.

Va bene, quindi le regole di consenso salvano la rete blockchain da tale ambiguità.

Ora, qui sorge un'altra domanda, cosa succede se qualcuno cerca di alterare qualsiasi transazione o record nel sistema?

E se qualcuno tenta di hackerare il sistema?

Una volta risolto un blocco, l'output dell'hash crittografico diventa l'identificatore di quel blocco.

Poiché Blockchain è un database di record distribuito collegato a ritroso. Quando viene formato un blocco, l'output dell'hash crittografico diventa l'identificatore di quel blocco, che si lega al blocco successivo, creando una catena di blocchi.

Quindi, la blockchain è protetta da un potente algoritmo crittografico e non c'è modo di alterare alcun record.

allocazione dinamica della memoria in c ++

Se qualcuno cerca di alterare qualsiasi transazione in uno qualsiasi dei blocchi, l'hash del blocco cambia e di conseguenza l'hash di tutti i blocchi precedenti cambierà. I nodi non arriveranno a il consenso e quindi la frode possono essere facilmente rilevati

Quindi, è questo. Sii orgoglioso, per ora ti distingui dalla massa dopo aver conosciuto questa bella tecnologia.

lo spero Come funziona Blockchain il blog è stato informativo per te.

Hai domande per noi? Si prega di menzionarlo nella sezione commenti e ti risponderemo al più presto.

Se desideri conoscere la tecnologia Blockchain e padroneggiare i concetti di crittografia, reti blockchain, contratti intelligenti, Ethereum e Hyperledger, dai un'occhiata al nostro interattivo, live-online qui, viene fornito con supporto 24 * 7 per guidarti durante il tuo periodo di apprendimento.