Bitcoin Forum
June 23, 2024, 09:37:46 PM *
News: Voting for pizza day contest
 
   Home   Help Search Login Register More  
Pages: « 1 [2] 3 4 »  All
  Print  
Author Topic: Scalabilità bitcoin e "troncatura della blockchain" domanda per esperti!  (Read 6718 times)
gbianchi
Legendary
*
Offline Offline

Activity: 3122
Merit: 2680



View Profile
January 17, 2016, 12:14:22 AM
Last edit: January 17, 2016, 12:31:01 AM by gbianchi
 #21

Definisci "peer".

La rete bitcoin è P2P. Se il tuo trade-off fra costo e necessità è giustificato, ci entri, altrimenti no.
Così a naso credo che la misura della soglia tecnica di ingresso alla rete resterà sempre e comunque più accessibile della soglia di ingresso ad altre reti di pagamento che soddisfino le stesse necessità.


a fare lo schizzinoso, bitcoin non rispetta piu' il criterio di definizione di peer to peer,
in quanto ci sono un sacco di nodi diversi come funzionalita' (i nodi full sono in proporzione 1/200 circa verso quelli non full, e vari altri tipi di nodi)
(peer to peer proprio per definizione e' invece nodo pari verso nodo pari)

ma da un punto di vista sostanziale mi interessa molto di piu' questa definizione:

"una rete p2p ha la caratteristica che piu' nodi si aggiungono e piu' diventa potente nel suo scopo"

questa definizione di peer2peer mi piacque moltissimo perche' spiegava bene la potenza tecnologica delle
reti di filesharing ad esempio, dove ogni nodo che si aggiunge rende piu' robusta e piu' "capace" di fare filesharing la rete,
quindi piu' potente. Quindi le reti di filesharing erano e sono un ottimo esempio di peer2peer riuscito.

BItcoin invece, strutturato come adesso, ha il difetto che ogni nodo che si aggiunge, aggiunge transazioni,
aggiunge quindi la necessita di broadcastarle (...perdonare il termine...) a piu' nodi (con un traffico di network che auqmenta in modo quasi quadratico),
aggiunge piu' criticita' nella gestione della blockchain, aggiunge piu' criticita' nella gestione dei limiti vari (dimesnione blocco, max tx per blocco... ecc.)

insomma bitcoin piu' cresce e piu' diventa fragile (ovviamente come e' strutturata adesso)

e la prova e' un esperimento immaginario:

se prendiamo una rete di filesharing peer2peer, e supponiamo che in una settimana il numero di utenti si moltiplichi per 10,
la rete diventa piu' potente, di un'ordine di grandezza piu' potente, avra' molti piu' files disponibili, sara' piu' veloce scaricarli,
tutto funzionera' molto meglio.

se prendiamo bitcoin e immaginiamo che in una settimana il numero di utenti si moltiplichi per 10,
il risultato praticamente certo e' il crollo totale.


ecco, questi sono in ultima anlisi i problemi tecnici da affrontare.

E come ho scritto da altre parti, sono assolutamente affrontabili, se se ne parla e si analizzano e si trovano
soluzioni tecniche per risolverli.

MA

c'e' la madre di tutti i problemi: molti attori nell'ecosistema bitcoin non ne vogliono sentir parlare, perche' temono che poi
si possa far perdere fiducia in BItcoin e quindi bitcoin possa perdere valore.

E' su tutto questo che vorrei invitare tutti a riflettere.







 

GUIDA PER NUOVI UTENTI https://bitcointalk.org/index.php?topic=1241459.0
DO NOT HOLD YOUR BTC ON THIRD PARTY EXCHANGES – BE YOUR OWN BANK https://bitcointalk.org/index.php?topic=945881.0
BITCOIN... WHAT IS IT ? https://bitcointalk.org/index.php?topic=2107660.0
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 17, 2016, 08:04:38 AM
Last edit: January 17, 2016, 10:21:03 AM by arulbero
 #22

a fare lo schizzinoso, bitcoin non rispetta piu' il criterio di definizione di peer to peer,
in quanto ci sono un sacco di nodi diversi come funzionalita' (i nodi full sono in proporzione 1/200 circa verso quelli non full, e vari altri tipi di nodi)
(peer to peer proprio per definizione e' invece nodo pari verso nodo pari)

ma da un punto di vista sostanziale mi interessa molto di piu' questa definizione:

"una rete p2p ha la caratteristica che piu' nodi si aggiungono e piu' diventa potente nel suo scopo"

questa definizione di peer2peer mi piacque moltissimo perche' spiegava bene la potenza tecnologica delle
reti di filesharing ad esempio, dove ogni nodo che si aggiunge rende piu' robusta e piu' "capace" di fare filesharing la rete,
quindi piu' potente. Quindi le reti di filesharing erano e sono un ottimo esempio di peer2peer riuscito.

BItcoin invece, strutturato come adesso, ha il difetto che ogni nodo che si aggiunge, aggiunge transazioni,
aggiunge quindi la necessita di broadcastarle (...perdonare il termine...) a piu' nodi (con un traffico di network che auqmenta in modo quasi quadratico),
aggiunge piu' criticita' nella gestione della blockchain, aggiunge piu' criticita' nella gestione dei limiti vari (dimesnione blocco, max tx per blocco... ecc.)

insomma bitcoin piu' cresce e piu' diventa fragile (ovviamente come e' strutturata adesso)

e la prova e' un esperimento immaginario:

se prendiamo una rete di filesharing peer2peer, e supponiamo che in una settimana il numero di utenti si moltiplichi per 10,
la rete diventa piu' potente, di un'ordine di grandezza piu' potente, avra' molti piu' files disponibili, sara' piu' veloce scaricarli,
tutto funzionera' molto meglio.

se prendiamo bitcoin e immaginiamo che in una settimana il numero di utenti si moltiplichi per 10,
il risultato praticamente certo è il crollo totale.

Sono d'accordo con quella definizione di rete p2p. Il problema è stabilire quale sia lo scopo per cui è nata una certa rete p2p.

Lo scopo delle reti di file sharing è quella di
1) aumentare il numero di file disponibili
2) velocizzare lo scambio di tali file (suddividendoli in pezzetti distribuiti tra i nodi della rete)
e quindi è normale, per come sia costruita, che all'aumentare dei nodi aumenti la velocità di scambio (i nodi semplicemente si suddividono il lavoro). È quello lo scopo del file sharing.

La rete Bitcoin non ha come scopo nè aumentare il numero di file nè aumentarne la velocità di scambio; funziona esattamente al contrario di una rete di file sharing, poichè il "file" condiviso (la block chain) è uno solo e esso viene assemblato controllandolo pezzo per pezzo e replicandolo in N copie per N nodi, quindi al contrario del file sharing, qui invece di dividere per N il lavoro si moltiplica per N.

La rete Bitcoin è stata pensata in questo modo poichè il suo scopo primario non è la velocità di scambio delle informazioni ma  è aumentare il grado di attendibilità di ogni singola affermazione che ogni nodo immette nel sistema in un certo momento (leggi transazione). E in effetti da questo punto di vista funziona: più nodi si aggiungono alla rete, maggiore è il lavoro globale che fa la rete per convalidare le transazioni, maggiore è il lavoro di falsificazione che dovrebbe fare un nodo truffaldino per ingannare il sistema, quindi maggiore diventa la fiducia nella validità delle transazioni e la credibilità quindi del sistema nel suo complesso.

Bitcoin è un sistema globale di certificazione, prima che di scambio.
È un sistema "condiviso" di certificazione, nel senso che la validità della certificazione aumenta all'aumentare del numero dei "certificatori"
È un sistema "p2p" nel senso che ognuno può fare il lavoro di "certificatore" (non serve essere iscritti a un albo notarile) ed è alla pari degli altri (la differenza tra i vari "peer" la può fare eventualmente solo la potenza computazionale messa in campo da ciascun nodo, che rende più o meno agevole lo smaltimento del carico lavorativo); più nodi si aggiungono alla rete più la rete diventa sicura, cioè aumenta il grado di attendibilità delle transazioni che gestisce (definizione di rete p2p rispettata)

In generale la velocità si realizza mediante la suddivisione del lavoro e quindi si basa in sostanza sulla fiducia negli altri (vedi file sharing), la sicurezza massima al contrario si realizza inducendo la maggior parte degli attori a ripetere lo stesso lavoro di controllo, e quindi si basa sulla non fiducia negli altri nodi.

Dal mio punto di vista quindi Bitcoin al momento realizza pienamente il suo scopo primario che è quello di massimizzare la validità notarile di ogni transazione.

Però ci sono molti altri problemi, non è che non li veda o che voglia sminuirli.

La questione fondamentale è riuscire a utilizzare questo contante elettronico, che ha dietro la migliore certificazione di validità realizzabile al mondo oggi (certificazione migliore perchè realizzabile potenzialmente in prima persona da tutti, migliore perchè effettuata da migliaia di nodi indipendenti, ma non migliore per velocità o costi) con la stessa immediatezza con cui utilizziamo la valuta fiat (immediatezza che deriva dal fatto che con la valuta fiat ci fidiamo di altri).

Come osservava giustamente gbianchi, nel sistema Bitcoin ogni nodo porta potenzialmente nuovo lavoro agli altri nodi (soprattutto se esso introduce nuove transazioni nel sistema, cioè se sottopone nuove affermazioni la cui validità va certificata e controllata da tutti gli altri). Quindi da una parte, se il numero di transazioni aumenterà, aumenterà il lavoro di certificazione, dall'altra il numero di certificatori tenderà a diminuire poichè all'aumentare del carico di lavoro sempre più certificatori non saranno in grado di gestire i costi di questo lavoro crescente.
Il mio dubbio più grande da sempre è legato proprio ai costi del sistema, che naturalmente mi sembrano destinati solo ad aumentare con il tempo. E non parlo solo dei semplici full node, la situazione con i miner potenzialmente sarà molto peggio con il diminuire delle ricompense dei blocchi.

Diciamo che Bitcoin sta rendendo evidente e direi quasi misurabile quanto costoso sia per una società il fatto di non fidarsi gli uni degli altri; magari si rivaluterà anche il lavoro di notai, banche e simili che da sempre nell'immaginario collettivo sono ritenuti svolgere funzioni "inutilmente" e quindi eccessivamente costose per la società.

Io considero quest'ultimo il problema più grande di tutti, un incredibile (a mio avviso) problema di non riconoscimento della realtà: così come si snobba il lavoro delle banche (inutilmente costose) si continua con il falso luogo comune che il lavoro di certificazione del sistema Bitcoin sia quasi gratis (non riconoscendo l'enorme lavoro di miner e full node e dando per scontato che le transazioni dovrebbero essere a 0 fee o quasi).
Quando si capirà il vero valore (e direi anche il senso) di ciò che stiamo costruendo, allora si potranno affrontare e risolvere gli altri problemi nella giusta prospettiva. Ma finchè si riterrà di aver trovato un sistema magico per spostare valore gratis da un punto all'altro del pianeta (mentre i cattivi che gestiscono la valuta fiat ci fanno pagare per questo tipo di servizio) non andremo lontano.
picchio
Legendary
*
Offline Offline

Activity: 2506
Merit: 1120



View Profile
January 17, 2016, 10:02:57 AM
 #23

...

Quando si capirà il valore di ciò che stiamo costruendo, allora si potranno affrontare e risolvere gli altri problemi nella giusta prospettiva. Ma finchè si riterrà di aver trovato un sistema magico per spostare valore gratis da un punto all'altro del pianeta (mentre i cattivi che gestiscono la valuta fiat ci fanno pagare per questo tipo di servizio) non andremo lontano.
Mi sono imbattuto in https://chrispacia.wordpress.com/2015/12/23/lightning-network-skepticism/ e non ho ancora capito bene cosa faccia esattamente ma potrebbe aiutare a risolvere qualcosa: la blockchain diventa "il notaio" e quindi posso anche permettermi di pagare una transazione una cifra elevata purche' poi sia in grado di spalmarla su più lavori ...

Anche le colored coin usano la chain ma anche altri protocolli p2p per diffondere le info.

Magari BTC puo' continuare su questa falsa riga e i servizi aggiuntivi verranno sfruttati meglio. I costi delle transazioni aumenteranno ma le stesse conterranno cifre elevate o informazioni che valgono tantissimo.

Waves mi piaceva ora non più.
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 17, 2016, 10:19:59 AM
 #24


Magari BTC puo' continuare su questa falsa riga e i servizi aggiuntivi verranno sfruttati meglio. I costi delle transazioni aumenteranno ma le stesse conterranno cifre elevate o informazioni che valgono tantissimo.


Se così fosse però risulterà allora chiaro che era irrealizzabile pensare che ogni minima transazione (esempio l'acquisto di un caffè) avesse lo stesso grado di attendibilità di un certificato di vendita di un immobile.

A dirlo così sembra ovvio, ma la maggior parte degli utilizzatori bitcoin pensa/spera ancora che fra x anni pagherà il caffè in bitcoin e che il piccolo negoziante controllerà l'attendibilità di quella transazione mediante un costosissimo full node risparmiando sulle "vessatorie" commissioni dei sistemi di pagamento attuali...

Non solo, per come funziona adesso il sistema bitcoin, una piccola transazione va solo ad aumentare il lavoro di controllo da fare anche sulle altre transazioni (se devo verificarte una grossa transazione e quest'ultima dovesse avere nella sua "storia" precedente proprio questa piccola transazione il lavoro aumenterà)

Mi sono imbattuto in https://chrispacia.wordpress.com/2015/12/23/lightning-network-skepticism/ e non ho ancora capito bene cosa faccia esattamente ma potrebbe aiutare a risolvere qualcosa: la blockchain diventa "il notaio" e quindi posso anche permettermi di pagare una transazione una cifra elevata purche' poi sia in grado di spalmarla su più lavori ...

Anche le colored coin usano la chain ma anche altri protocolli p2p per diffondere le info.
Grazie per il link, ne ho sentito parlare ma conosco pochissimo a riguardo.
gbianchi
Legendary
*
Offline Offline

Activity: 3122
Merit: 2680



View Profile
January 17, 2016, 10:36:55 AM
 #25


La rete Bitcoin non ha come scopo nè aumentare il numero di file nè aumentarne la velocità di scambio; funziona esattamente al contrario di una rete di file sharing, poichè il "file" condiviso (la block chain) è uno solo e esso viene assemblato controllandolo pezzo per pezzo e replicandolo in N copie per N nodi, quindi al contrario del file sharing, qui invece di dividere per N il lavoro si moltiplica per N.

....


Pero' non reisco a spiegarmi. Non voglio battaglie filosofiche sulle definizioni... alla fine non serve a un tubo.

Io chiedo solo di pensare se non sia possibile migliorare il funzionamento di bitcoin, rendendolo piu' aderente al modello p2p
poi se si scopre che come e' e' gia' il massimo, oppure non si puo' fare niente, vabbe'.

Provo a spiegarmi con una proposta:

di solito in informatica quando un problema diventa molto, troppo complesso, lo si divide in "strati specializzati"
dove ognuno fa un lavoro ben specifico.

(ISO OSI, il padre , o forse nonno dell'attuale funzionamento di internet, con i suoi famosi 7 livelli, e' forse uno dei migliori esempi)

Non si potrebbe ad esempio pensare di dividere il problema bitcoin in diversi layer, cosa che a tutti gli effetti sta piu' o meno avvenendo
in pratica con la specializzazione dei nodi, e trasformare ogni layer in una rete p2p specifica ?

ossia:

1) layer blockchain, che con una rete p2p gestisce una sorta di filesysytem p2p per condividere la blockchain in modo poco pesante per tutti.

2) layer certificatori, la rete p2p dei certificatori (quel che adesso sono i miner/pool)

3) layer transazioni (quello degli utenti comuni) dove una rete p2p di utenti immette le transazioni in una p2p specializzata a smaltire le transazioni...

e cosi' via, in modo da suddividere il tutto in sottosistemi piu' specializzati, ove ognuno si possa rendere davvero p2p (perche fa una
sola funzione e quindi la puo' suddividere in modo bilanciato tra i vari partecipanti a quel layer)

e' solo una proposta, ma e' il genere di idee che mi piacerebbe si discutesse....









GUIDA PER NUOVI UTENTI https://bitcointalk.org/index.php?topic=1241459.0
DO NOT HOLD YOUR BTC ON THIRD PARTY EXCHANGES – BE YOUR OWN BANK https://bitcointalk.org/index.php?topic=945881.0
BITCOIN... WHAT IS IT ? https://bitcointalk.org/index.php?topic=2107660.0
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 17, 2016, 11:09:51 AM
 #26

Provo a spiegarmi con una proposta:

di solito in informatica quando un problema diventa molto, troppo complesso, lo si divide in "strati specializzati"
dove ognuno fa un lavoro ben specifico.

(ISO OSI, il padre , o forse nonno dell'attuale funzionamento di internet, con i suoi famosi 7 livelli, e' forse uno dei migliori esempi)

Non si potrebbe ad esempio pensare di dividere il problema bitcoin in diversi layer, cosa che a tutti gli effetti sta piu' o meno avvenendo
in pratica con la specializzazione dei nodi, e trasformare ogni layer in una rete p2p specifica ?

ossia:

1) layer blockchain, che con una rete p2p gestisce una sorta di filesysytem p2p per condividere la blockchain in modo poco pesante per tutti.

2) layer certificatori, la rete p2p dei certificatori (quel che adesso sono i miner/pool)

3) layer transazioni (quello degli utenti comuni) dove una rete p2p di utenti immette le transazioni in una p2p specializzata a smaltire le transazioni...

e cosi' via, in modo da suddividere il tutto in sottosistemi piu' specializzati, ove ognuno si possa rendere davvero p2p (perche fa una
sola funzione e quindi la puo' suddividere in modo bilanciato tra i vari partecipanti a quel layer)

e' solo una proposta, ma e' il genere di idee che mi piacerebbe si discutesse....

Questa idea mi sembra davvero interessante!

Penso che siamo d'accordo che il sistema, così com'è, ad oggi è riuscito a realizzare abbastanza bene il compito del layer 2), poichè tutti ci fidiamo delle certificazioni che produce.

La tua proposta va nella direzione di trasformare un sistema di certificazione che svolge male però altri compiti (come quello di gestione delle transazioni del layer 3) in un sistema multi strato affinchè il sistema Bitcoin diventi quello che finora non è mai stato, e cioè un mezzo di pagamento veramente alternativo a quelli attuali.

Basta capirsi  Wink

Secondo te la LN di cui parlava picchio va nella giusta direzione o tu pensi sia necessario cambiare in modo più radicale il protocollo Bitcoin?
BitNow
Legendary
*
Offline Offline

Activity: 1260
Merit: 1003



View Profile WWW
January 17, 2016, 11:50:38 AM
Last edit: January 17, 2016, 06:28:51 PM by BitNow
 #27

Fin qui Wikipedia ha funzionato bene come identificatore di definizioni:
"Peer-to-peer (P2P) o rete paritaria o paritetica, in informatica, è un'espressione che indica un'architettura logica di rete informatica in cui i nodi non sono gerarchizzati unicamente sotto forma di client o server fissi (clienti e serventi), ma sotto forma di nodi equivalenti o paritari (in inglese peer) che possono cioè fungere sia da cliente che da servente verso gli altri nodi terminali (host) della rete. Essa dunque è un caso particolare dell'architettura logica di rete client-server."

La cosa bella di questa definizione è che non c'è la parola sistema in essa: i nodi della rete non devono appartenere tutti allo stesso sistema.

Per il sistema Monetario Mondiale la BCE è un nodo P2P del sistema bancario europeo (al pari delle altre banche centrali europee) così come la Fed è un nodo P2P del sistema bancario statunitense (al pari delle altre banche nazionali statunitensi).

Se ora uniamo il Sistema Monetario Mondiale ($, €, Y, etc...) al Sistema Monetario Mondiale delle Valute Virtuali (BTC, LTC, DOGE, etc...) otteniamo l'unione di 2 sistemi P2P (basta un'interfaccia per unirli).

Questo sistema lo chiameremo Sistema Monetario Mondiale
(FIAT e Virtuale): in cui la BCE è un nodo paritario al pari di AntPool (paritario in 2 sistemi diversi ma il sistema padre è il sistema monetario nel suo insieme).

Sounds good?!?

Quello che intendo è: focalizzatevi sull'Industria FinTech non su di una sua specifica implementazione (Bitcoin) che al momento non gode nemmeno di ottima salute.

Questo mio ultimo consiglio è supportato anche dalla comunità Bitcoin, infatti se aprite gli occhi vedrete che in giro non si parla più di Bitcoin (che è una valuta virtuale) ma di Blockchan che è la tecnologia alla base dell'Industria FinTech di cui stiamo parlando.

Questo un interessante articolo sull'argomento (che cos'è la Blockchain?): http://www.coindesk.com/danger-blockchain-monoculture/

Per quanto riguarda Bitcoin farà la fine che farà...


Cordiali saluti.


             ▐█████▄
            ▐█████████        ▄▄▄
            ▐████  ▐█████   ▀▀▀  █▌
            ▐███  ▐███████      ▐█▌
            ▐██▌   ▀█████▀     ▐█▀
       ▂▄▄▐██▌     ▀▀▀      ▐█▌
    ▐██████████████▄▄▄▄▄     ▄█▌
  ▐███       ▐███▀▀█████▄▄▄ ▐██
   ▐█▌        ▐███    ▀▀▀███████▄▄▄
    ▀▀▀        ▐███        ▐██▀█████▄▄
                ▐███      ▐██▌    ▀▀███▄▄
                 ▐███    ▐██▌  ▄▄▄▄▄  ███▄
         ▄████▄   ▐██▌  ▐███  ▐███████████
       ▐████████▌  ▐██▌▐██▌   ▐████████▀▀
        ▀██████▀    ▐████▀     ▀████▀
         ▐███▀     ▄█▐███
        ▐███▀   ▄████▌▀███
        ▐██████████▀    ▐█▌    █
         ▀████▀▀         ▐█▌  ██
                           ▀▀▀▀





























▶  TELEGRAM
▶  BITCOINTALK
picchio
Legendary
*
Offline Offline

Activity: 2506
Merit: 1120



View Profile
January 17, 2016, 06:33:41 PM
 #28

...

1) layer blockchain, che con una rete p2p gestisce una sorta di filesysytem p2p per condividere la blockchain in modo poco pesante per tutti.

2) layer certificatori, la rete p2p dei certificatori (quel che adesso sono i miner/pool)

3) layer transazioni (quello degli utenti comuni) dove una rete p2p di utenti immette le transazioni in una p2p specializzata a smaltire le transazioni...

e cosi' via, in modo da suddividere il tutto in sottosistemi piu' specializzati, ove ognuno si possa rendere davvero p2p (perche fa una
sola funzione e quindi la puo' suddividere in modo bilanciato tra i vari partecipanti a quel layer)

e' solo una proposta, ma e' il genere di idee che mi piacerebbe si discutesse....
A me pare sia gia' cosi'.
1) il client core scarica i blocchi da altri peer senza problema e forse esiste anche una versione della blockchain su torrent.
2) i miner possono essere anche "stupidi" nel senso che ricevono un pacchetto piccolo e calcolano l'sha e fanno solo quello
3) un qualunque client invia le transazioni che poi verranno forse assorbite dal sistema.

Quindi faccio fatica a capire cosa intendi ...
Mi è venuto in mente anche p2pool che ha presentato grosse novità qualche anno fa, ora ho perso di vista la cosa ma lui metteva una chain parallela al solo fine di dividere il premio del mining, magari si possono mettere anche delle transazioni ...

Waves mi piaceva ora non più.
BitNow
Legendary
*
Offline Offline

Activity: 1260
Merit: 1003



View Profile WWW
January 17, 2016, 06:40:04 PM
 #29


La rete Bitcoin non ha come scopo nè aumentare il numero di file nè aumentarne la velocità di scambio; funziona esattamente al contrario di una rete di file sharing, poichè il "file" condiviso (la block chain) è uno solo e esso viene assemblato controllandolo pezzo per pezzo e replicandolo in N copie per N nodi, quindi al contrario del file sharing, qui invece di dividere per N il lavoro si moltiplica per N.

....


Pero' non reisco a spiegarmi. Non voglio battaglie filosofiche sulle definizioni... alla fine non serve a un tubo.

Io chiedo solo di pensare se non sia possibile migliorare il funzionamento di bitcoin, rendendolo piu' aderente al modello p2p
poi se si scopre che come e' e' gia' il massimo, oppure non si puo' fare niente, vabbe'.

Provo a spiegarmi con una proposta:

di solito in informatica quando un problema diventa molto, troppo complesso, lo si divide in "strati specializzati"
dove ognuno fa un lavoro ben specifico.

(ISO OSI, il padre , o forse nonno dell'attuale funzionamento di internet, con i suoi famosi 7 livelli, e' forse uno dei migliori esempi)

Non si potrebbe ad esempio pensare di dividere il problema bitcoin in diversi layer, cosa che a tutti gli effetti sta piu' o meno avvenendo
in pratica con la specializzazione dei nodi, e trasformare ogni layer in una rete p2p specifica ?

ossia:

1) layer blockchain, che con una rete p2p gestisce una sorta di filesysytem p2p per condividere la blockchain in modo poco pesante per tutti.

2) layer certificatori, la rete p2p dei certificatori (quel che adesso sono i miner/pool)

3) layer transazioni (quello degli utenti comuni) dove una rete p2p di utenti immette le transazioni in una p2p specializzata a smaltire le transazioni...

e cosi' via, in modo da suddividere il tutto in sottosistemi piu' specializzati, ove ognuno si possa rendere davvero p2p (perche fa una
sola funzione e quindi la puo' suddividere in modo bilanciato tra i vari partecipanti a quel layer)

e' solo una proposta, ma e' il genere di idee che mi piacerebbe si discutesse....


Ethereum fa proprio questo: suddivide il cosa si trasporta (valore, materia, informazioni, altro...) dalla tecnologia di trasporto (Blockchain, altro...)

Sono 3 paper da leggere:
White Paper: https://github.com/ethereum/wiki/wiki/White-Paper
Design Rationale: https://github.com/ethereum/wiki/wiki/Design-Rationale
Yellow Paper: http://gavwood.com/Paper.pdf

Se hai/ha voglia di parlare di questi concetti cominci traducendo questi 3 paper in italiano è il modo migliore per parlare di questi argomenti.

"Chi ha voglia può approfondire."


Cordilai saluti.


             ▐█████▄
            ▐█████████        ▄▄▄
            ▐████  ▐█████   ▀▀▀  █▌
            ▐███  ▐███████      ▐█▌
            ▐██▌   ▀█████▀     ▐█▀
       ▂▄▄▐██▌     ▀▀▀      ▐█▌
    ▐██████████████▄▄▄▄▄     ▄█▌
  ▐███       ▐███▀▀█████▄▄▄ ▐██
   ▐█▌        ▐███    ▀▀▀███████▄▄▄
    ▀▀▀        ▐███        ▐██▀█████▄▄
                ▐███      ▐██▌    ▀▀███▄▄
                 ▐███    ▐██▌  ▄▄▄▄▄  ███▄
         ▄████▄   ▐██▌  ▐███  ▐███████████
       ▐████████▌  ▐██▌▐██▌   ▐████████▀▀
        ▀██████▀    ▐████▀     ▀████▀
         ▐███▀     ▄█▐███
        ▐███▀   ▄████▌▀███
        ▐██████████▀    ▐█▌    █
         ▀████▀▀         ▐█▌  ██
                           ▀▀▀▀





























▶  TELEGRAM
▶  BITCOINTALK
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 20, 2016, 08:35:15 AM
 #30

Mi è tornata in mente questa discussione
https://bitcointalk.org/index.php?topic=976028.msg10783703#msg10783703
con picchio su come modificare il mining per rendere il sistema più decentralizzato.

L'idea di base è quella di affiancare alla soglia A classica sotto la quale deve stare l'hash del blocco da minare un'altra soglia B legata ai singoli indirizzi.

Modificare un blocco in modo che il suo hash sia sotto una certa soglia A è il task attuale che favorisce solo la potenza computazionale dei miner più attrezzati e quindi favorisce decisamente l'accentramento.

Per bilanciare questa propensione all'accentramento è necessario aggiungere una misura legata ai singoli indirizzi che distribuisca la probabilità tra i nodi della rete, diminuendo il vantaggio competitivo dei miner più grossi senza per questo rendere facile per un singolo nodo minare più blocchi consecutivi (senza intaccare insomma la sicurezza del sistema, sicurezza che si basa sul fatto che il singolo nodo è sempre più debole del resto della rete e quindi non la può ingannare, se non per un lasso di tempo brevissimo).

Quindi aggiungerei una misura di questo tipo:

la differenza tra l'indirizzo (al quale andrebbe la ricompensa nel caso il blocco fosse minato) e l'indirizzo generato dalla chiave privata costituita dall'hash del blocco precedente deve essere sotto un'altra soglia B.

Riassumendo:

soglia finale = soglia A + soglia B

Ovviamente la formula va ulteriormente perfezionata, introducendo dei pesi opportuni

soglia finale = pesoA * sogliaA + pesoB * sogliaB

Alcune osservazioni:

- aumentando il pesoB, la probabilità che un singolo nodo anche poco dotato computazionalmente possa vincere nella gara per minare il blocco aumenta (potendosi permettere una sogliaA computazionale più alta e quindi più facile da raggiungere, a patto naturalmente di avere un buon indirizzo con cui competere, una buona carta insomma con cui giocarsi la mano)

- l'indirizzo da inserire nella coinbase deve avere un output non speso da almeno x blocchi  (in sostanza ricevere una transazione bitcoin vorrebbe dire ottenere un invito a partecipare al processo di mining, spendere quel UTXO significherebbe cedere quell'invito a qualcun altro); per ovviare al fatto che un grosso miner produca una infinità di indirizzi su cui distribuire i propri bitcoin solo per aumentare le sue chance di vittoria, si potrebbe tenere conto dei bitcoin-day relativi all'UTXO, cioè anche di quanti bitcoin sono posseduti da quell'indirizzo, non solo dall'età

- nel momento in cui parte la gara per minare un nuovo blocco, anche i miner più grossi saranno limitati dal fatto di avere o meno un indirizzo che garantisca un basso valore della sogliaB (indirizzo che non può essere individuato in anticipo); qualora non avesse un "buon" indirizzo di partenza, sarebbe poi difficile per lui vincere la gara chiedendo aiuto all'esterno (la potenza computazionale la puoi anche chiedere all'esterno come si fa con le pool, ma l'indirizzo su cui riversare la ricompensa intera del blocco no; sarebbe anche rischiosa la pratica di comprare un "buon" indirizzo all'esterno, sia per questioni di tempistica, sia perchè se compri un indirizzo non puoi mai avere la sicurezza che il venditore abbia distrutto la chiave privata relativa)
 
- per quanto riguarda il valore complessivo della soglia, il sistema continuerebbe ad aggiornare quel valore dinamico ogni tot blocchi come avviene adesso in modo da perseguire l'obiettivo del tempo medio di 10 minuti; sicuramente però diventerebbe più imprevedibile di oggi il tempo di conferma di 1 blocco (inoltre va studiato con attenzione come evitare la possibilità concreta che nessuno riesca a minare il blocco)

Da notare infine che mentre la soglia complessiva rimane un dato puramente tecnico (che si autoaggiusta per ottenere i 10 minuti di media), i pesi A e B sono invece un dato più "politico" (quanto peso dare alla proof of work rispetto alla proof of stake e viceversa)

Che ne pensate?
picchio
Legendary
*
Offline Offline

Activity: 2506
Merit: 1120



View Profile
January 20, 2016, 11:46:56 AM
 #31

Mi è tornata in mente questa discussione
https://bitcointalk.org/index.php?topic=976028.msg10783703#msg10783703
con picchio su come modificare il mining per rendere il sistema più decentralizzato.

L'idea di base è quella di affiancare alla soglia A classica sotto la quale deve stare l'hash del blocco da minare un'altra soglia B legata ai singoli indirizzi.

...
Da notare infine che mentre la soglia complessiva rimane un dato puramente tecnico (che si autoaggiusta per ottenere i 10 minuti di media), i pesi A e B sono invece un dato più "politico" (quanto peso dare alla proof of work rispetto alla proof of stake e viceversa)

Che ne pensate?
Da qualche parte ho letto che bitcoin ha la pow e se si cambia non si chiamano piu' bitcoin... ossia bitcoin2 o altro. Se non si riesce a modificare per accettare blocchi piu' grossi dubito si riesca a fare una modifica cosi' sostanziale. Inoltre chi comanda sono i miner e non hanno interesse a venire estromessi.
Nel bene e nel male mi sa che è una strada difficilmente percorribile a meno di un fork della chain.

Waves mi piaceva ora non più.
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 20, 2016, 02:14:35 PM
 #32

Da qualche parte ho letto che bitcoin ha la pow e se si cambia non si chiamano piu' bitcoin... ossia bitcoin2 o altro. Se non si riesce a modificare per accettare blocchi piu' grossi dubito si riesca a fare una modifica cosi' sostanziale.
...
Nel bene e nel male mi sa che è una strada difficilmente percorribile a meno di un fork della chain.

Sì, ovviamente si tratterebbe di un hard fork (retrocompatibile con il passato, basta porre pesoA = 1 e pesoB = 0 per i blocchi vecchi)


Inoltre chi comanda sono i miner e non hanno interesse a venire estromessi.
Pensavo che a comandare fossero i full node, non i miner. Sono loro alla fine che "animano" la rete, facendovi circolare le transazioni corrette e riconoscendo o meno la validità dei vari blocchi (e stabilendo qual è la blockchain corretta).

picchio
Legendary
*
Offline Offline

Activity: 2506
Merit: 1120



View Profile
January 20, 2016, 03:40:50 PM
 #33

...

Inoltre chi comanda sono i miner e non hanno interesse a venire estromessi.
Pensavo che a comandare fossero i full node, non i miner. Sono loro alla fine che "animano" la rete, facendovi circolare le transazioni corrette e riconoscendo o meno la validità dei vari blocchi (e stabilendo qual è la blockchain corretta).


Diciamo che sono le mining pool, non seguo l'andamento ma a pensarci mi pare strano che ci sia ancora qualche miner casalingo che fa un lavoro significativo. Mi immagino qualche "edificio" con svariati miner ...

Se vengono spenti ci lasciano a difficoltà abissali che per tornare a minare 10 minuti ci vorranno anni ... e poi saremmo a rischio di attacco double spending.
Consola il fatto che nessuno puo' impedire a qualcuno di iniziare a minare. ...
Un full node che osserva il traffico mi pare inutile ai fini della sicurezza ... servono se ci fai dei servizi sopra e hai bisogno di conoscere le transazioni.

Waves mi piaceva ora non più.
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 20, 2016, 09:16:00 PM
 #34

... mi pare strano che ci sia ancora qualche miner casalingo che fa un lavoro significativo.

Un full node che osserva il traffico mi pare inutile ai fini della sicurezza ... servono se ci fai dei servizi sopra e hai bisogno di conoscere le transazioni.

Non sono d'accordo. Sono i full node che filtrano le transazioni, le propagano fino ai miner e che in seguito controllano i blocchi e li propagano determinando quindi la blockchain. Chiaro che il lavoro dei miner è indispensabile, ma meno sono i full node, meno sicura è la rete.
Un sistema con 10 grossi miner e 5000 full node sarebbe sempre più sicuro di un sistema con 1000 miner e 20 full node.
picchio
Legendary
*
Offline Offline

Activity: 2506
Merit: 1120



View Profile
January 20, 2016, 10:45:49 PM
 #35

... mi pare strano che ci sia ancora qualche miner casalingo che fa un lavoro significativo.

Un full node che osserva il traffico mi pare inutile ai fini della sicurezza ... servono se ci fai dei servizi sopra e hai bisogno di conoscere le transazioni.

Non sono d'accordo. Sono i full node che filtrano le transazioni, le propagano fino ai miner e che in seguito controllano i blocchi e li propagano determinando quindi la blockchain. Chiaro che il lavoro dei miner è indispensabile, ma meno sono i full node, meno sicura è la rete.
Un sistema con 10 grossi miner e 5000 full node sarebbe sempre più sicuro di un sistema con 1000 miner e 20 full node.
Alla funzione di propagazione delle transazioni non avevo pensato ma non mi pare aumenti la sicurezza, piuttosto l'usabilità e le funzionalità migliorano ma la sicurezza dipende ancora solo dal miner (almeno per come lo interpreto, spero di ricredermi), in ogni caso con miner intendo un full node che plasma le transazioni non un miner "stupido" che fa solo sha. Quindi preferirei una rete con 1000 miner e 20 full node che 20 miner e basta ... 20 miner sarebbe tutto in mano a questi 20 figuri. Da paura!
Altro ruolo indispensabile dei full node e' sicuramente la diffusione dei blocchi p2p che è importante sia per chi entra o e' rimasto indietro che per chi deve dare dei servizi ma di nuovo non riesco a vedere l'aumento della sicurezza e la determinazione della storia ... come nella realtà la storia la fa chi vince gli altri son fork sterili.

Waves mi piaceva ora non più.
wariner
Legendary
*
Offline Offline

Activity: 1250
Merit: 1004


pool.sexy


View Profile
January 21, 2016, 10:28:20 AM
 #36

Lasciare invece così com'è e far decidere ai singoli se tenere un full node oppure utilizzare la funzione "pruned" (che già si può fare)?

Pool.sexy - Pool ETH-ETC-EXP-UBQ-ZEC-DBIX..and more low fee Discussion

my BTC: 1KiMpRAWscBvhRgLs8jDnqrZEKJzt3Ypfi
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 21, 2016, 09:41:05 PM
 #37

Lasciare invece così com'è e far decidere ai singoli se tenere un full node oppure utilizzare la funzione "pruned" (che già si può fare)?

Sicuramente meglio "pruned" che niente!

Alla funzione di propagazione delle transazioni non avevo pensato ma non mi pare aumenti la sicurezza, piuttosto l'usabilità e le funzionalità migliorano ma la sicurezza dipende ancora solo dal miner (almeno per come lo interpreto, spero di ricredermi), in ogni caso con miner intendo un full node che plasma le transazioni non un miner "stupido" che fa solo sha. Quindi preferirei una rete con 1000 miner e 20 full node che 20 miner e basta ... 20 miner sarebbe tutto in mano a questi 20 figuri. Da paura!
Altro ruolo indispensabile dei full node e' sicuramente la diffusione dei blocchi p2p che è importante sia per chi entra o e' rimasto indietro che per chi deve dare dei servizi ma di nuovo non riesco a vedere l'aumento della sicurezza e la determinazione della storia ... come nella realtà la storia la fa chi vince gli altri son fork sterili.

La sicurezza del sistema si basa sul fatto che le transazioni che arrivano ai miner e i blocchi successivamente formati a partire da essi e reimmessi nella rete siano controllati, verificati e accettati dal maggior numero di full node possibili.

Se ci fossero anche solo 20 miner (e ti dirò che se hai letto l'articolo di Mike Hearn probabilmente siamo già in una situazione del genere) ma oltre ad essi ci fossero diverse migliaia di full node, nessun miner potrebbe imbrogliare, poichè la stragrande maggioranza della rete, avendo tutta la blockchain a disposizione, bloccherebbe sul nascere qualsiasi tentativo di double spending o qualunque altra violazione del protocollo bitcoin.

In una rete a forte prevalenza di full node il "potere" è concentrato nei nodi a scapito dei minatori, a riguardo ecco un articolo di HostFat  http://www.rischiocalcolato.it/2015/07/bitcoin-oirgini-crisi-transazioni.html :

Quote
Le regole del network sono imposte dai nodi, che hanno costi inferiori a quelli dei minatori. Il costo di installazione e gestione dei nodi è proporzionale all’uso che ha il mercato, se il mercato è piccolo, il costo di gestione di questi singoli nodi sarà ancora più basso, viceversa se il mercato si amplia indefinitivamente, può andare ad alzarsi.

Il minatore, che deve sottostare alle regole dei nodi, è un “umile” (ormai si fa per dire) servitore, che rispetta queste regole e in base ad esse emette il blocco, puntando sul fatto che tale venga accettato dalla totalità del network, o comunque da quella maggioranza del network che “da valore ai bitcoin che è andato a creare”.

E’ l’ultima ruota del carro, il suo potere decisionale è molto limitato, ed è del tutto focalizzato nel accontentare il volere del mercato, del cliente … visto che tale è ciò che va a dare valore al premio che riceve.
absolute beginner
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
January 26, 2016, 08:56:59 PM
 #38

Buonasera a tutti,

scusate se mi intrometto in questa discussione molto tecnica e assai interessante.
Sono nuovo del forum...non credo che a nessuno interessi il mio nome proprio, quindi mi presento con il mio nick: Absolute Beginner. Dal nick avete già capito che sono ignorante come una bestia, quindi vi chiedo di perdonare eventuali strafalcioni.

Ho riflettuto molto sulla natura della blockchain e vorrei chiedere a voi esperti, tornando all'argomento principale del thread: è possibile cancellare dalla blockchain le informazioni ormai obsolete?

La blockchain serve a tenere traccia delle transazioni, giusto? Ma a cosa serve sapere che un determinato bitcoin è appartenuto al signor Mario Rossi se nel frattempo sono passati anni, il bitcoin in questione ha cambiato decine di proprietari e Mario Rossi possiede un saldo pari a zero su quello specifico indirizzo?

La mia logica mi spinge a credere che basterebbe un programmino, distribuito a tutti i nodi, che con una precisa cadenza (ad esempio annuale), analizzi tutti i blocchi più vecchi di una certa data eliminando tutti i "rami secchi", transazioni antiche che hanno lasciato indirizzi con saldo pari a zero, magari seppellite da decine di transazioni successive. Automaticamente tutte le blockchain del mondo verrebbero alleggerite restando comunque tutte perfettamente uguali, conservando solo le informazioni attualmente utili.

Dove sbaglio?

A.B.

PS: Lo so che Bitcoin ha ben altri problemi che le dimensioni della blockchain, ma anche una blockchain che "ingrassa" all'infinito non credo sia totalmente irrilevante.
BitNow
Legendary
*
Offline Offline

Activity: 1260
Merit: 1003



View Profile WWW
January 26, 2016, 09:22:31 PM
 #39

Buonasera a tutti,

scusate se mi intrometto in questa discussione molto tecnica e assai interessante.
Sono nuovo del forum...non credo che a nessuno interessi il mio nome proprio, quindi mi presento con il mio nick: Absolute Beginner. Dal nick avete già capito che sono ignorante come una bestia, quindi vi chiedo di perdonare eventuali strafalcioni.

Ho riflettuto molto sulla natura della blockchain e vorrei chiedere a voi esperti, tornando all'argomento principale del thread: è possibile cancellare dalla blockchain le informazioni ormai obsolete?

La blockchain serve a tenere traccia delle transazioni, giusto? Ma a cosa serve sapere che un determinato bitcoin è appartenuto al signor Mario Rossi se nel frattempo sono passati anni, il bitcoin in questione ha cambiato decine di proprietari e Mario Rossi possiede un saldo pari a zero su quello specifico indirizzo?

La mia logica mi spinge a credere che basterebbe un programmino, distribuito a tutti i nodi, che con una precisa cadenza (ad esempio annuale), analizzi tutti i blocchi più vecchi di una certa data eliminando tutti i "rami secchi", transazioni antiche che hanno lasciato indirizzi con saldo pari a zero, magari seppellite da decine di transazioni successive. Automaticamente tutte le blockchain del mondo verrebbero alleggerite restando comunque tutte perfettamente uguali, conservando solo le informazioni attualmente utili.

Dove sbaglio?

A.B.

PS: Lo so che Bitcoin ha ben altri problemi che le dimensioni della blockchain, ma anche una blockchain che "ingrassa" all'infinito non credo sia totalmente irrilevante.

Quotando me stesso:

Se tronco la Blockchain di Bitcoin posso spendere i bitcoin che non sono più visibili.

Questa operazione si chiama "double-spend".
https://bitcoin.org/en/glossary/double-spend

...omissis...

Per essere una moneta bitcoin ha bisogno di non essere passibile di double spend.


Un bitcoin è una chiave privata che identifica una transazione: se non ho memoria che quella transazione sia mai avvenuta posso ricreare quella transazione, perchè nessun nodo si ricorda della sua esistenza, di fatto spendendo gli stessi bitcoin 2 volte (da qui la definizione di "double-spend").

Per questo motivo non è possibile troncare la Blockchain.

Per qualsiasi dubbio o informazione non si faccia problemi a chiedere.


Cordiali saluti.


             ▐█████▄
            ▐█████████        ▄▄▄
            ▐████  ▐█████   ▀▀▀  █▌
            ▐███  ▐███████      ▐█▌
            ▐██▌   ▀█████▀     ▐█▀
       ▂▄▄▐██▌     ▀▀▀      ▐█▌
    ▐██████████████▄▄▄▄▄     ▄█▌
  ▐███       ▐███▀▀█████▄▄▄ ▐██
   ▐█▌        ▐███    ▀▀▀███████▄▄▄
    ▀▀▀        ▐███        ▐██▀█████▄▄
                ▐███      ▐██▌    ▀▀███▄▄
                 ▐███    ▐██▌  ▄▄▄▄▄  ███▄
         ▄████▄   ▐██▌  ▐███  ▐███████████
       ▐████████▌  ▐██▌▐██▌   ▐████████▀▀
        ▀██████▀    ▐████▀     ▀████▀
         ▐███▀     ▄█▐███
        ▐███▀   ▄████▌▀███
        ▐██████████▀    ▐█▌    █
         ▀████▀▀         ▐█▌  ██
                           ▀▀▀▀





























▶  TELEGRAM
▶  BITCOINTALK
arulbero
Legendary
*
Offline Offline

Activity: 1915
Merit: 2074


View Profile
January 26, 2016, 10:30:54 PM
Last edit: January 26, 2016, 10:44:57 PM by arulbero
 #40

Buonasera a tutti,

scusate se mi intrometto in questa discussione molto tecnica e assai interessante.
Sono nuovo del forum...non credo che a nessuno interessi il mio nome proprio, quindi mi presento con il mio nick: Absolute Beginner. Dal nick avete già capito che sono ignorante come una bestia, quindi vi chiedo di perdonare eventuali strafalcioni.

Ho riflettuto molto sulla natura della blockchain e vorrei chiedere a voi esperti, tornando all'argomento principale del thread: è possibile cancellare dalla blockchain le informazioni ormai obsolete?

La blockchain serve a tenere traccia delle transazioni, giusto? Ma a cosa serve sapere che un determinato bitcoin è appartenuto al signor Mario Rossi se nel frattempo sono passati anni, il bitcoin in questione ha cambiato decine di proprietari e Mario Rossi possiede un saldo pari a zero su quello specifico indirizzo?

La mia logica mi spinge a credere che basterebbe un programmino, distribuito a tutti i nodi, che con una precisa cadenza (ad esempio annuale), analizzi tutti i blocchi più vecchi di una certa data eliminando tutti i "rami secchi", transazioni antiche che hanno lasciato indirizzi con saldo pari a zero, magari seppellite da decine di transazioni successive. Automaticamente tutte le blockchain del mondo verrebbero alleggerite restando comunque tutte perfettamente uguali, conservando solo le informazioni attualmente utili.

Dove sbaglio?

La possibilità di tagliare i blocchi molto vecchi della blockchain c'è già dalla versione 0.11.0 di Bitcoin Core (opzione pruning).

Il problema di base però è:  quando un nuovo peer si collega alla rete, come fa a conoscere la distribuzione attuale dei bitcoin? (ovvero: quali sono gli indirizzi a saldo diverso da zero? dove sono allocati i bitcoin prodotti finora? esplicitamente questo non c'è scritto da nessuna parte!)

Il concetto che sta alla base di questo sistema è che ciascuno deve essere messo nella condizione di poter verificare di persona la validità dei pagamenti che riceve, e se io voglio verificare la validità di un pagamento che ricevo adesso devo sapere se l'indirizzo che mi ha inviato i btc possedeva effettivamente quei btc al momento dell'invio.  

Per fare questa verifica in modo sicuro ho un solo modo: almeno una volta nella vita devo scaricare tutta la blockchain, ricostruendo sin dal primo blocco la storia dei passaggi di proprietà di tutti i btc. In tal modo potrò ricostruire la distribuzione attuale dei saldi degli indirizzi (ho un po' semplificato); se invece non faccio la ricostruzione personalmente dovrò fidarmi della ricostruzione fatta da qualcun altro (e questo è un male, soprattutto se lo fanno tantissime persone).

Con l'opzione pruning, man mano che arrivano nuovi blocchi posso eliminare dal mio hard disk i blocchi più vecchi per risparmiare spazio; questo è possibile dal momento che mi tengo (oltre ai blocchi delle transazioni) sempre un database, che mi sono costruito e aggiorno dinamicamente, in cui registro la distribuzione dei saldi diversi da 0 degli indirizzi (tecnicamente si chiama UTXO, insieme degli output non spesi delle transazioni).

Quindi per rispondere alla tua domanda, è possibile eliminare i blocchi molto vecchi ma:

1) solo dopo aver almeno una volta scaricato tutti i blocchi, a partire dal numero 1, in modo da poter conoscere con sicurezza dove stanno tutti i saldi diversi da 0

2) se tutti attivassero l'opzione pruning, quando un nuovo nodo entra nella rete (oppure a un vecchio nodo si rompe l'hard disk) come fa questo a controllare tutta la blockchain? Da chi scarica i blocchi più vecchi se tutti li hanno eliminati dal loro pc? Ricorda che tutti devono essere messi nella condizione di poter verificare in maniera autonoma la validità dei pagamenti ricostruendo la distribuzione dei saldi (per conoscere la quale bisogna studiare tutta la storia passata delle transazioni).

Il sistema Bitcoin è un sistema "trustless", ovvero non c'è bisogno di fiducia (è affidabile proprio perchè ciascuno può non fidarsi degli altri e fare da sè il lavoro di controllo e verifica delle transazioni e dei blocchi). Quindi non è possibile tagliare i blocchi più vecchi in modo definitivo, sarebbe come dire che tutti quelli che non hanno avuto l'opportunità di controllare la blockchain in passato non ce l'avranno mai più e dovranno fidarsi almeno un po' di chi invece ha potuto effettuare questo controllo in prima persona.
Pages: « 1 [2] 3 4 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!