Cosa sono l'hashing, le firme e le chiavi pubblico-private

Pubblicato: 2019-01-17

Una volta che sai cos'è la tecnologia blockchain, capisci che il meccanismo di sigillatura è la chiave per il corretto e accurato mantenimento di una blockchain. Ma come soddisfare questi severi requisiti?
Le condizioni imposte al meccanismo di sigillatura di una blockchain sono soddisfatte utilizzando una funzione hash .

Impara i corsi di sviluppo software online dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.

La definizione matematica di una funzione hash è una funzione che accetta un input numerico di lunghezza variabile e restituisce un numero di lunghezza fissa come output. Per lavorare con stringhe di caratteri, i codici ASCII possono essere utilizzati per convertire i caratteri in numeri interi e viceversa. L'output restituito dalla funzione hash è noto come valore hash . Le funzioni hash più popolari hanno una dimensione del valore hash fissa compresa tra 160 e 512 bit.
Tutte le blockchain impongono condizioni target sull'output della funzione hash quando un blocco è un input per essa. Per soddisfare queste condizioni target, un sigillo viene calcolato e concatenato al blocco che viene memorizzato. Questo sigillo crittografa il contenuto del blocco e ne preserva l'integrità. Questo perché qualsiasi modifica al blocco modificherebbe drasticamente il suo valore hash corrispondente e lo farebbe sfuggire alle condizioni di destinazione. Il sigillo calcolato è comunemente noto come nonce . Una condizione obiettivo comune che il nonce deve soddisfare è garantire che i caratteri 'n' iniziali dell'hash di output siano zero. Il valore di 'n' imposta il livello di difficoltà nella blockchain, che può essere regolato periodicamente secondo i requisiti della rete.
Applicazioni Blockchain nella Supply Chain

Ci sono tre proprietà importanti che le funzioni hash devono soddisfare per essere utilizzate efficacemente nella blockchain. Dato il valore hash emesso dalla funzione, deve essere computazionalmente difficile trovare qualsiasi input che, se sottoposto a hash, restituisca l'output specificato. Questo è noto come resistenza pre-immagine . In altre parole, la funzione hash dovrebbe essere computazionalmente costosa da invertire. Allo stesso modo, dato l'input della funzione, deve essere difficile calcolare qualsiasi altro input per la stessa funzione che restituisce lo stesso valore hash dell'input originale. Questo è noto come resistenza alla collisione . Tuttavia, dato qualsiasi input alla funzione hash, dovrebbe essere facile calcolare il valore corrispondente emesso dalla funzione hash. Questo per garantire una facile verifica dell'integrità dei contenuti della blockchain.
Le prime due proprietà fornite sopra sono critiche perché rallentano la velocità di calcolo del nonce, o proof of work. Ciò fa sì che la velocità con cui i blocchi vengono aggiunti alla catena sia limitata dalla velocità di calcolo del nonce e non dalla velocità con cui si verificano le transazioni. Questo è assolutamente cruciale perché impedisce agli individui disonesti nella rete di generare e aggiungere blocchi di false transazioni alla catena a una velocità maggiore rispetto alla rete stessa. Questo perché un singolo individuo non può competere con la potenza di calcolo di una grande rete, e quindi la catena di blocchi più lunga appartiene sempre alla maggioranza della rete stessa.
Questo ci permette di accettare in sicurezza la catena più lunga come la vera blockchain partendo dal presupposto che la maggioranza nella rete sia onesta. Le vulnerabilità di una blockchain nel caso di una maggioranza disonesta sono già state discusse in un precedente articolo.
Applicazioni della Blockchain nel settore sanitario

Esistono molte forme diverse di funzioni hash utilizzate nella crittografia. MD5 è la funzione hash più popolare della famiglia Message Digest, che comprende anche MD2, MD4 e MD6. La famiglia SHA, composta da SHA-0, SHA-1, SHA-2 e SHA-3, è un altro popolare insieme di algoritmi utilizzati per l' hashing . RIPEMD e Whirlpool sono altre funzioni hash comuni. Tutte queste funzioni implementano diverse tecniche per ottenere le proprietà di pre-immagine e di resistenza alle collisioni.
Il meccanismo di chiusura della blockchain garantisce che le transazioni non possano essere falsificate dopo che i blocchi sono stati aggiunti alla catena. Ma come viene impedito agli impostori nella rete di falsificare una transazione tra due membri della rete? In altre parole, come si può verificare l'identità dei membri coinvolti nella transazione in una rete anonima distribuita in tutto il mondo?
La verifica di qualsiasi transazione condotta in una rete blockchain richiede una firma digitale .
Ad ogni membro della rete blockchain viene assegnata una chiave pubblica e una chiave privata . La chiave pubblica di ogni membro è nota a tutti i membri della rete, ma la chiave privata rimane segreta ed è nota solo alla persona a cui è assegnata. Qualsiasi messaggio crittografato utilizzando la chiave privata di un nodo membro può essere decrittografato solo utilizzando la corrispondente chiave pubblica della coppia e viceversa. Ciò consente ai nodi di approvare le transazioni firmandole con la loro chiave privata. Questo ora può essere decrittografato solo dalla loro chiave pubblica corrispondente, verificandoli così come mittenti. Allo stesso modo, la transazione può essere crittografata anche dal destinatario per confermare il suo coinvolgimento nella transazione.
7 modi in cui Blockchain sta rivoluzionando l'industria automobilistica

Questo meccanismo consente ai nodi di autenticare le transazioni verificando le identità dei nodi coinvolti pur mantenendo il loro anonimato. La firma digitale e il concetto di chiavi pubbliche e private impedisce ad altri nodi di effettuare transazioni false per tuo conto anche in caso di attacco del 51% . Pertanto, è un modo elegante per garantire la sicurezza e l'anonimato dei singoli membri della rete.

Se sei interessato a creare applicazioni blockchain da zero, dai un'occhiata alla certificazione esecutiva di upGrad e IIIT-B in Blockchain di IIITB.

Cosa comporterà un registro a prova di manomissione?

L'importanza di un libro mastro trasparente ea prova di manomissione non può essere sopravvalutata. Di conseguenza, tutte le transazioni sarebbero completamente trasparenti e responsabili. Proteggerebbe anche dalla manomissione del libro mastro, garantendone l'accuratezza. Semplificherà inoltre per le aziende il monitoraggio delle reti di approvvigionamento e l'individuazione di attività fraudolente. Potrebbe anche essere utilizzato per tenere traccia delle registrazioni delle votazioni e di altre informazioni critiche. Consentirà alle aziende di tracciare e salvare le proprie informazioni digitalmente senza timore di essere hackerate.

Quali sono alcune potenziali applicazioni della blockchain nell'area della gestione della catena di approvvigionamento?

Blockchain ha una vasta gamma di possibili usi nella gestione della catena di approvvigionamento. Tracciare il flusso delle merci, ridurre al minimo il rischio di merci contraffatte, ridurre il rischio di frode alimentare e garantire la qualità delle merci sono alcune delle applicazioni più significative. Le aziende possono aumentare l'efficienza complessiva delle loro operazioni impiegando la tecnologia blockchain per semplificare le attività della catena di approvvigionamento. Inoltre, la blockchain può aiutare le aziende a identificare rapidamente e semplicemente la causa di eventuali problemi della catena di approvvigionamento.

Quali sono le implicazioni sulla sicurezza di un libro mastro distribuito?

Un libro mastro distribuito ha serie considerazioni sulla sicurezza. Un registro distribuito è un database distribuito su più computer o server. Un hacker dovrebbe entrare in molti sistemi per ottenere l'accesso ai dati, rendendo difficile per loro attaccare il sistema. Inoltre, un registro distribuito è trasparente e accessibile a chiunque abbia accesso alla rete. Di conseguenza, i criminali troveranno più difficile condurre frodi o nascondere le proprie attività. Le transazioni finanziarie saranno più facili da controllare e i criminali saranno più facili da rintracciare. Gli individui possono anche utilizzare un registro distribuito per costruire un'identità digitale che può essere utilizzata per convalidare la propria identità online. La linea di fondo è che renderà più sicura la maggior parte dei dati gestiti dalle aziende.