Bitcoin Forum
April 24, 2024, 08:59:37 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2] 3 4 5 6 »  All
  Print  
Author Topic: [LIBRO COMPLETO GRATUITO] Bitcoin per tutti  (Read 19034 times)
gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 06:13:58 PM
Last edit: April 01, 2018, 07:18:44 PM by gallisiardi
 #21

Qualche piccolo refuso:

Pag. 22  "Testiamo la prof of work" --> "Testiamo la proof of work"

Pag. 74 "Aspetti legale e fiscali" --> "Aspetti legali e fiscali"

Pag. 93 "Money management e gestuione del rischio" --> "Money management e gestione del rischio"

Ottimo grazie!

Appena finito di correggere su Github. Quando arriva qualche altra segnalazione, faccio una nuova edizione anche per il sito.

1713992377
Hero Member
*
Offline Offline

Posts: 1713992377

View Profile Personal Message (Offline)

Ignore
1713992377
Reply with quote  #2

1713992377
Report to moderator
1713992377
Hero Member
*
Offline Offline

Posts: 1713992377

View Profile Personal Message (Offline)

Ignore
1713992377
Reply with quote  #2

1713992377
Report to moderator
1713992377
Hero Member
*
Offline Offline

Posts: 1713992377

View Profile Personal Message (Offline)

Ignore
1713992377
Reply with quote  #2

1713992377
Report to moderator
The forum was founded in 2009 by Satoshi and Sirius. It replaced a SourceForge forum.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713992377
Hero Member
*
Offline Offline

Posts: 1713992377

View Profile Personal Message (Offline)

Ignore
1713992377
Reply with quote  #2

1713992377
Report to moderator
1713992377
Hero Member
*
Offline Offline

Posts: 1713992377

View Profile Personal Message (Offline)

Ignore
1713992377
Reply with quote  #2

1713992377
Report to moderator
gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 06:16:28 PM
Last edit: April 01, 2018, 07:17:04 PM by gallisiardi
 #22

iniziativa stupenda, complimenti
La butto lì...provare a diffonderlo in mezzo ai giovani...magari tramite qualche scuola

Bell idea. Personalmente ora sono molto impegnato su altri progetti. Per la scuola oltretutto non saprei dove iniziare. Inoltre sono argomenti un po' tabù per le scuole, intendo gli aspetti finanziari soprattutto quelli legati ad investimenti ad alto rischio.
Poi manca qualche figura illuminata che decida di abbracciare questo tipo di iniziative.

gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 06:18:36 PM
 #23

Complimenti ottima iniziativa davvero. Immagino quanto tempo ci hai dedicato  Smiley

Diciamo che ho ottimizzando sfruttando la funzione dettato.

Inoltre avevo già 100 slide, preparate per una serie di incontri, qui di la traccia per scriverlo l avevo già preparata nei mesi precedenti. Il libro è stata la naturale evoluzione delle slide.

Comunque è stato un lavoraccio.  Smiley

gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 06:25:09 PM
Last edit: April 01, 2018, 07:26:05 PM by gallisiardi
 #24

Ottimo lavoro, complimenti.
Cmq, mentre apprezzo l'iniziativa di offrircelo "aggratis", mi sembra che varrebbe la pena di commercializzarlo almeno su Amazon
E non tanto per qui quattro spiccioli che tireresti su, ma perché ho scoperto sulla mia pelle che tutto ciò che non viene pagato viene automaticamente disprezzato, mentre mi sembra che tu abbia fatto un lavoro che meriti un'adeguata valorizzazione.

Hai ragione. Diciamo che io sono uno sviluppatore, e non uno scrittore, non l' ho scritto per venderlo. Oltretutto è un settore molto di nicchia, quindi risulta difficile dire se c'è un pubblico interessato al di là di chi già segue le crittovalute.

È un discorso complesso. Non escluderei di stamparlo, e distribuirlo anche in cartaceo. Poi io credo che la conoscenza di base vada diffusa gratuitamente. Credo che questa tecnologia soprattutto in questa fase vada spiegata. Molta gente ha forti dubbi sui bitcoin, quindi ci va qualcuno che gli spieghi per filo e per segno come funzionano, in modo da togliere qualsiasi dubbio.  Va fatta un'operazione trasparenza e chiarezza.

gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 06:29:11 PM
Last edit: April 01, 2018, 08:00:46 PM by gallisiardi
 #25

complimenti per il capitolo sull'informatica di base necessaria alla comprensione del bitcoin (molto bene la parte sulle funzioni di hash). Da parte mia finora piuttosto un'osservazione: invece di aprire un conto preferirei aprire un portafoglio  Wink

Il libro è nato dopo una serie di serata con amici e conoscenti. L esempio del conto, ho visto che è quello che funzionava meglio.  L Explorer come un estratto conto, ecc.

Poi c'è sempre il discorso portachiavi o portafoglio, secondo me è importante evitare questo equivoco, cioè che la gente pensi che i bitcoin siano dentro l'app. Mi sono reso conto che la gente fa questo tipo di associazione, che è proprio sbagliata sotto più punti di vista.

 




gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 01, 2018, 07:58:39 PM
 #26

Riguardo al valore del libro, potremo parlare anche di centinaia di euro, se contiamo quanto tempo serve, ad oggi, per documentarsi su tutto.

Pero' un libro del genere normalmente puo' costare sui 10 €. Non di più a mio avviso.

Quando devo studiare un nuovo linguaggio di programmazione, o approfondire certi temi, mi compro sempre un bel manuale, sono sempre i 25€ meglio spesi. Se passassi 4/5 ore a leggere i soliti articoli online, fatti per raccogliere pubblicità, difficilmente riuscirei a formarmi, e spenderei certamente di più.

Si tratta di dare un valore al proprio tempo e ragionare di conseguenza.

Per documentarmi sul bitcoin, ho trovato la versione semi tradotta di Mastering Bitcoin. E' stata utilissima, ed ho deciso di dedicare del tempo per tradurla, non tanto per me, quanto per gli altri. Come l'autore ha diffuso questo libro, nel mio piccolo ho contribuito a diffondere la versione italiana.

Mastering Bitcoin è e resterà la bibbia, il testo di riferimento in materia.

Terminato il lavoro di traduzione, però, mi sono reso conto che il risultato era modesto, un po' perchè tradotto da più persone con stili differenti, un po' perchè la traduzione letterale non garantiva una lettura scorrevole.

Inoltre è un libro tecnico, con dei capitoli che mettono in soggezione l'utente base, come quello sulla curva ellittica. Credo che "Bitcoin per tutti" sia veramente per tutti, chiunque con un po di calma e buona volontà può capire con un buon livello di approfondimento il funzionamento della blockchain.

Per concludere il pippozzo, ho deciso di accettare delle donazioni volontarie. Qualcosa è già arrivato, aldilà delle cifre in se, mi ha fatto veramente molto piacere il gesto. Si tratta di un apprezzamento per il lavoro svolto, che vale, per me, veramente molto.

Preferirei ricevere 100 donazioni da 1€ che 150€ in un unica donazione, tanto per capirci.

Inoltre c'è la possibilità di iscriversi a coinbase tramite il mio referal, che da sia a me che al lettore 10$ di bonus,in caso di acquisto da parte del lettore di almeno 100€ in crittovalute.

Quindi il sistema per remunerarmi c'è, soprattutto quello del referal, non costa nulla al lettore, la donazione invece puo' essere anche intesa come uno strumento per provare a fare un pagamento, magari il primo pagamento.

Se riuscissimo a diffondere la cultura con nuovi modelli di business come quello scelto da me, avremo una cultura gratuita, disponibile a chiunque, ovunque e con una giusta remunerazione, è la filosofia open source.

La mia è stata una scommessa, che probabilmente sarà economicamente fallimentare per il sottoscritto,  l'ho messo in conto prima di iniziare a scrivere, e poi sono partito.  Grin

 





arulbero
Legendary
*
Offline Offline

Activity: 1914
Merit: 2071


View Profile
April 01, 2018, 09:06:00 PM
Last edit: April 02, 2018, 07:52:50 AM by arulbero
 #27

Pag. 3  "In alcuni casi, sempre chiaramente evidenziati, sono presenti link con relativo referal" --> "referral"
Pag. 32     "nel caso volgliate ripristinare il vostro wallet" --> "nel caso vogliate ripristinare il vostro wallet"
 
Devo dire che sei riuscito a semplificare l'esposizione dei concetti senza per questo venir meno a una certa rigorosità.

Mi sono piaciuti in particolare l'idea del portachiavi invece del portafogli, l'immagine del treno di vagoni per la catena di blocchi, l'uso dei dadi per descrivere la difficoltà della proof of work.

Ho notato che hai volutamente evitato formule e approfondimenti troppo tecnici. Ti faccio un paio di appunti.

Posso capire che la curva ellittica secp256k1 fosse un po' troppo complessa da spiegare (anche se chiavi private e chiavi pubbliche sono di fatto proprio elementi di quella curva). Hai scritto che ci sono 2^256 chiavi private (in realtà 2^257 contando compresse e non compresse) ma dal punto di vista della sicurezza del sistema è come se ce ne fossero "solo" 2^160 (ci sono 2^97 chiavi diverse ma tutte valide per ciascun address). Non è proprio la stessa cosa.
 
Forse avrei scritto qualcosina in più sul meccanismo del resto, al quale mi pare hai solo accennato, visto che la sua non conoscenza soprattutto con l'uso dei paper wallet (di cui parli) può portare alla perdita dei bitcoin. Inoltre capendo quel meccanismo si capisce meglio come difendere (almeno un po') il proprio anonimato. Forse non ne hai parlato perchè su questo punto il paragone conto corrente/address non funziona più tanto bene. In quel caso bisogna ragionare in termini di utxo che sono più simili concettualmente a delle banconote fisiche  piuttosto che a dei numeri su un conto corrente.

Non mi pare poi che tu abbia accennato alla questione sicurezza (non dei bitcoin ma personale), questione sollevata in un thread su questo forum (questione che è connaturata con il nuovo paradigma di proprietà del denaro che si realizza mediante la proprietà di chiavi invece che mediante delle relazioni attraverso terzi.)

Infine una domanda, quando scrivi

"I wallet hardware sono dei dispositivi fisici simili a delle chiavette USB su cui vengono memorizzate le chiavi private. Questi permettono la gestione di un numero limitato di monete"

cosa intendi per "numero limitato di monete"?
kokorellos
Newbie
*
Offline Offline

Activity: 35
Merit: 0


View Profile
April 01, 2018, 10:09:50 PM
 #28

Fantastico! Grazie!
arulbero
Legendary
*
Offline Offline

Activity: 1914
Merit: 2071


View Profile
April 02, 2018, 07:49:28 AM
 #29

iniziativa stupenda, complimenti
La butto lì...provare a diffonderlo in mezzo ai giovani...magari tramite qualche scuola

Bell idea. Personalmente ora sono molto impegnato su altri progetti. Per la scuola oltretutto non saprei dove iniziare. Inoltre sono argomenti un po' tabù per le scuole, intendo gli aspetti finanziari soprattutto quelli legati ad investimenti ad alto rischio.
Poi manca qualche figura illuminata che decida di abbracciare questo tipo di iniziative.


Il problema è proprio l'aspetto finanziario/speculativo. Bitcoin dal punto di vista dell'apprendimento sarebbe un'ottima occasione per incentivare lo studio della programmazione e delle reti, per approfondire temi legati alla probabilità e all'algebra, per interrogarsi anche sul significato filosofico del concetto di denaro, per studiare un po' di economia.

Però data la fama di gioco d'azzardo che Bitcoin ha, risulterebbe come se si insegnasse a scuola il poker con la scusa di migliorare la memoria a breve termine.
Gli studenti delle superiori sono in gran parte minorenni, e sarebbe molto rischioso (causa possibili ricorsi da parte dei genitori) proporre loro temi diciamo così sensibili. Bitcoin si basa sul concetto di responsabilità piena da parte del singolo individuo che gestisce in completa autonomia il proprio denaro, con tutto quello che ciò comporta (esposizione personale in termini di sicurezza, possibilità di perdere i propri soldi per errori accidentali, ecc.). In pratica Bitcoin è per adulti (almeno nel senso legale del termine, ovvero di persone in grado di rispondere in prima persona di quello che fanno), mentre allo stato attuale di quello che fanno ogni giorno gli studenti molto spesso devono rispondere altri (genitori e/o insegnanti).
MarioV
Hero Member
*****
Offline Offline

Activity: 2254
Merit: 709


View Profile
April 02, 2018, 09:12:36 AM
 #30

Ottimo lavoro, complimenti.
Cmq, mentre apprezzo l'iniziativa di offrircelo "aggratis", mi sembra che varrebbe la pena di commercializzarlo almeno su Amazon
E non tanto per qui quattro spiccioli che tireresti su, ma perché ho scoperto sulla mia pelle che tutto ciò che non viene pagato viene automaticamente disprezzato, mentre mi sembra che tu abbia fatto un lavoro che meriti un'adeguata valorizzazione.

Secondo me potrebbe avere più remunerazione in questo modo, da parte di donazioni soprattutto dei veterani, piuttosto che mettersi in concorrenza nel mercato della vendita dato che dovrebbe versare anche agli "intermediari" Grin
Ma più di tutto condivido le motivazioni di base già spiegate qui sopra dall'autore!
rrupoli
Jr. Member
*
Offline Offline

Activity: 31
Merit: 20


View Profile
April 02, 2018, 09:39:09 AM
Merited by arulbero (2)
 #31

cut

Forse avrei scritto qualcosina in più sul meccanismo del resto, al quale mi pare hai solo accennato, visto che la sua non conoscenza soprattutto con l'uso dei paper wallet (di cui parli) può portare alla perdita dei bitcoin. Inoltre capendo quel meccanismo si capisce meglio come difendere (almeno un po') il proprio anonimato. Forse non ne hai parlato perchè su questo punto il paragone conto corrente/address non funziona più tanto bene. In quel caso bisogna ragionare in termini di utxo che sono più simili concettualmente a delle banconote fisiche  piuttosto che a dei numeri su un conto corrente.

cosa intendi per "numero limitato di monete"?

Mi aggancio alle tue osservazioni per suggerire a gallisiardi un modello metaforico che a mio avviso si adatta piuttosto bene a spiegare al neofita l'uso pratico del Bitcoin wallet e dei bitcoin in esso contenuti.

In breve:
Il Bitcoin address è assimilabile ad un portafoglio fisico
L' UTXO è assimilabile ad una banconota cartacea

In quest'accezione, il Software wallet diventa un contenitore di diversi portafogli (Bitcoin addresses), ognuno dei quali contiene diverse banconote (UTXO).

Qui sotto spiegato in modo più completo:

---------------------------------------
Nel mondo reale in tasca si tiene un portafoglio dentro il quale sono conservate diverse banconote cartacee.

Nel mondo virtuale il tuo portafoglio è rappresentato da un bitcoin address (indirizzo).
Le banconote dentro il portafoglio sono rappresentate dai cosiddetti UTXO (Unspent Transaction Output).

Esattamente come una banconota cartacea, gli UTXO non sono frazionabili ma vanno sempre spesi interamente.
Gli UTXO sono quindi le banconote del sistema Bitcoin, ma a differenza delle banconote cartacee essi possono contenere qualunque valore in bitcoin.

Cioè mentre nel mondo reale vi sono tagli fissi per le banconote (5, 10, 20, 50 Euro, etc), nel mondo del Bitcoin gli UTXO possono contenere qualunque valore (0.5, 0.03, 3.12, 0.00000234 bitcoins, etc)

Non solo, nel mondo del Bitcoin tu puoi avere decine di address, dunque decine di portafogli, ognuno dei quali può contenere decine di UTXO.

Quando tu fai un pagamento in bitcoin, il tuo software wallet sceglierà uno degli indirizzi (portafogli) che gestisce e userà per il pagamento uno o più UTXO (banconote) associati a quell'indirizzo.
Esattamente come al mercato tu scegli le banconote la cui somma porta alla cifra finale, il tuo software wallet sceglie gli UTXO da usare per il pagamento.

Se ti spetta un resto esso ti verrà restituito (sotto forma di UTXO) in uno degli address controllati dal software wallet.
Volendo puoi indicare al software wallet di versare il resto nello stesso address da cui hai speso i bitcoin (ma di default il resto come già detto viene versato in un indirizzo diverso).

In breve, da un punto di vista tecnico tu potresti possedere un unico address con il quale ricevi bitcoins (sottoforma di UTXO associati a quell'indirizzo) e dal quale disponi pagamenti (usando uno o più UTXO associati a quell'indirizzo) attendendoti che ti venga versato il resto nello stesso indirizzo.
----------------------------------------------


P.S: per numero limitato di monete immagino si riferisca al numero di altcoin che un hardware wallet supporta, di solito solo le principali.
arulbero
Legendary
*
Offline Offline

Activity: 1914
Merit: 2071


View Profile
April 02, 2018, 12:22:28 PM
 #32

Mi aggancio alle tue osservazioni per suggerire a gallisiardi un modello metaforico che a mio avviso si adatta piuttosto bene a spiegare al neofita l'uso pratico del Bitcoin wallet e dei bitcoin in esso contenuti.

In breve:
Il Bitcoin address è assimilabile ad un portafoglio fisico
L' UTXO è assimilabile ad una banconota cartacea

In quest'accezione, il Software wallet diventa un contenitore di diversi portafogli (Bitcoin addresses), ognuno dei quali contiene diverse banconote (UTXO).

Qui sotto spiegato in modo più completo:

---------------------------------------
Nel mondo reale in tasca si tiene un portafoglio dentro il quale sono conservate diverse banconote cartacee.

Nel mondo virtuale il tuo portafoglio è rappresentato da un bitcoin address (indirizzo).
Le banconote dentro il portafoglio sono rappresentate dai cosiddetti UTXO (Unspent Transaction Output).

Esattamente come una banconota cartacea, gli UTXO non sono frazionabili ma vanno sempre spesi interamente.
Gli UTXO sono quindi le banconote del sistema Bitcoin, ma a differenza delle banconote cartacee essi possono contenere qualunque valore in bitcoin.

Cioè mentre nel mondo reale vi sono tagli fissi per le banconote (5, 10, 20, 50 Euro, etc), nel mondo del Bitcoin gli UTXO possono contenere qualunque valore (0.5, 0.03, 3.12, 0.00000234 bitcoins, etc)

Non solo, nel mondo del Bitcoin tu puoi avere decine di address, dunque decine di portafogli, ognuno dei quali può contenere decine di UTXO.

Quando tu fai un pagamento in bitcoin, il tuo software wallet sceglierà uno degli indirizzi (portafogli) che gestisce e userà per il pagamento uno o più UTXO (banconote) associati a quell'indirizzo.
Esattamente come al mercato tu scegli le banconote la cui somma porta alla cifra finale, il tuo software wallet sceglie gli UTXO da usare per il pagamento.

Se ti spetta un resto esso ti verrà restituito (sotto forma di UTXO) in uno degli address controllati dal software wallet.
Volendo puoi indicare al software wallet di versare il resto nello stesso address da cui hai speso i bitcoin (ma di default il resto come già detto viene versato in un indirizzo diverso).

In breve, da un punto di vista tecnico tu potresti possedere un unico address con il quale ricevi bitcoins (sottoforma di UTXO associati a quell'indirizzo) e dal quale disponi pagamenti (usando uno o più UTXO associati a quell'indirizzo) attendendoti che ti venga versato il resto nello stesso indirizzo.

La tua spiegazione è ottima, però nel libro si usa di proposito la metafora wallet-portachiavi piuttosto che quella address-portafoglio per evitare di pensare che i bitcoin si trovino "dentro" il wallet (come succede invece per le banconote fisiche). Nel tuo caso invece il wallet è un contenitore di portafogli (address) che a loro volta sono contenitori di bitcoin, quindi alla fine uno deduce che il wallet contenga dei bitcoin.

Concettualmente trovo molto valida la scelta di descrivere un address come un conto corrente piuttosto che come un contenitore di bitcoin, altrimenti si incorrerebbe nell'errore di pensare che clonare un wallet equivalga a clonare i bitcoin in esso contenuto. Le chiavi (e gli address) si possono clonare come le credenziali di accesso a un conto, i soldi no. E' solo all'"interno" della blockchain poi che esistono i bitcoin, e il loro passaggio di proprietà all'interno della chain avviene esattamente nel modo che hai descritto tu, in modo simile cioè al trasferimento di banconote fisiche.

Non è banale rendere tutti questi concetti in modo semplice e accurato nello stesso tempo, io manterrei la distinzione "fisica" tra wallet e address:

wallet: portachiavi
address: conto corrente/salvadanaio online
utxo: bitcoin/banconote

in questo modo si rimarca il fatto che quel wallet che ho fisicamente sul pc o sul cellulare contiene solo le credenziali di accesso al salvadanaio che si trova online e solo per mezzo di questo salvadanaio avvengono poi realmente gli scambi (con tutta la questione dei resti per come l'hai descritta tu). L'immagine del salvadanaio riesce a rendere conto, a differenza di quella del conto corrente, del fatto che non posso spendere in generale una qualsiasi cifra minore dell'importo che ho nel salvadanaio (ma devo appunto tenere conto che l'importo totale associato all'address è composto da utxo indivisibili)
 
rrupoli
Jr. Member
*
Offline Offline

Activity: 31
Merit: 20


View Profile
April 02, 2018, 03:52:46 PM
 #33

La tua spiegazione è ottima, però nel libro si usa di proposito la metafora wallet-portachiavi piuttosto che quella address-portafoglio per evitare di pensare che i bitcoin si trovino "dentro" il wallet (come succede invece per le banconote fisiche). Nel tuo caso invece il wallet è un contenitore di portafogli (address) che a loro volta sono contenitori di bitcoin, quindi alla fine uno deduce che il wallet contenga dei bitcoin.

Per non far cadere nell'equivoco che giustamente indichi, il wallet lo si può descrivere come una rappresentazione di ciò che è contenuto nella blockchain.

Cioè, quando apro il wallet Electrum sul mio laptop per vedere quante banconote (UTXO) contengono ognuno dei miei portafogli (address), Electrum attinge queste informazioni dalla blockchain (dove risiedono davvero i miei bitcoin) e me le rappresenta sul PC in un formato comprensibile.

Nel mondo reale, quando accedo al mio conto corrente da un laptop o uno smartphone per controllare il saldo, sono consapevole che gli Euro non sono contenuti sul laptop o sullo smartphone ma che sono registrati sul server della banca.
Allo stesso modo posso immaginare che ogni wallet non sia altro che l'equivalente di un Homebanking che mi mostra il contenuto dei miei portafogli virtuali.

In quest'ottica la metafora rivisitata ed ampliata diviene:

Blockchain = Istituto bancario
Wallet (software/hardware/web wallet) =  HomeBanking
Seed del wallet = Login per accedere all'Homebanking
Private key = Password dispositiva di ogni portafoglio virtuale visualizzato dall'Homebanking
Bitcoin address = portafoglio virtuale contenente banconote virtuali
UTXO = banconota virtuale (espressa in bitcoin o sue frazioni)

Mi rendo conto che questo modello è alternativo a quello proposto nel libro: se il wallet viene rappresentato come portachiavi si intuisce immediatamente che si hanno in mano delle password che permettono di accedere ai bitcoin contenuti nella blockchain.
Però poi si fa fatica ad espandere il modello per far capire metaforicamente cosa rappresentano gli address, gli UTXO e dove va a finire il resto di ogni transazione.
 
Immagino che gallisiardi abbia volutamente preferito usare un modello semplice per dare una prima infarinatura al neofita, consapevole dei limiti del modello stesso.
gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 03, 2018, 11:29:27 AM
 #34


Pag. 3  "In alcuni casi, sempre chiaramente evidenziati, sono presenti link con relativo referal" --> "referral"

Pag. 32     "nel caso volgliate ripristinare il vostro wallet" --> "nel caso vogliate ripristinare il vostro wallet"

 

Devo dire che sei riuscito a semplificare l'esposizione dei concetti senza per questo venir meno a una certa rigorosità.



Mi sono piaciuti in particolare l'idea del portachiavi invece del portafogli, l'immagine del treno di vagoni per la catena di blocchi, l'uso dei dadi per descrivere la difficoltà della proof of work.



Ho notato che hai volutamente evitato formule e approfondimenti troppo tecnici. Ti faccio un paio di appunti.



Posso capire che la curva ellittica secp256k1 fosse un po' troppo complessa da spiegare (anche se chiavi private e chiavi pubbliche sono di fatto proprio elementi di quella curva). Hai scritto che ci sono 2^256 chiavi private (in realtà 2^257 contando compresse e non compresse) ma dal punto di vista della sicurezza del sistema è come se ce ne fossero "solo" 2^160 (ci sono 2^97 chiavi diverse ma tutte valide per ciascun address). Non è proprio la stessa cosa.

 

Forse avrei scritto qualcosina in più sul meccanismo del resto, al quale mi pare hai solo accennato, visto che la sua non conoscenza soprattutto con l'uso dei paper wallet (di cui parli) può portare alla perdita dei bitcoin. Inoltre capendo quel meccanismo si capisce meglio come difendere (almeno un po') il proprio anonimato. Forse non ne hai parlato perchè su questo punto il paragone conto corrente/address non funziona più tanto bene. In quel caso bisogna ragionare in termini di utxo che sono più simili concettualmente a delle banconote fisiche  piuttosto che a dei numeri su un conto corrente.



Non mi pare poi che tu abbia accennato alla questione sicurezza (non dei bitcoin ma personale), questione sollevata in un thread su questo forum (questione che è connaturata con il nuovo paradigma di proprietà del denaro che si realizza mediante la proprietà di chiavi invece che mediante delle relazioni attraverso terzi.)



Infine una domanda, quando scrivi



"I wallet hardware sono dei dispositivi fisici simili a delle chiavette USB su cui vengono memorizzate le chiavi private. Questi permettono la gestione di un numero limitato di monete"



cosa intendi per "numero limitato di monete"?




Ti ringrazio per le segnalazioni, ho corretto gli errori di battitura su github.

Le idee e gli esempi, sono spesso recuperati da altre fonti, purtroppo non ricordo dove le avevo viste, lette o sentite, sono comunque esempi nei quali mi sono imbattuto nel corso della mia formazione, che ho prontamente riciclato nel libro, quindi il merito va ai rispettivi autori. Ho usato quelli che in base alla mia piccola esperienza, si sono rivelati più semplici da capire ed ho visto che hanno fatto più presa sul pubblico.

Per quanto riguarda il numero delle chiavi, devo andare ad approfondire. Hai sicuramente ragione tu, sinceramente avevo quel concetto in testa e l'ho scritto senza andare a verificare dettagliatamente la cosa.

Vado a rileggermi mastering bitcoin, dove questo è spiegato molto bene.

Sul meccanismo del resto e degli utxo, hai ragione, andrebbe scritto qualcosa in più, perchè poi sono proprio i mattoni su cui si basa il sistema, oltretutto è importante comprendere il concetto, per capire come vengono calcolate le fee, legate appunto alle dimensioni il Byte della transazione e non ad un costo in base all'importo. Un paio di volte mi sono avventurato nella spiegazione, a voce, di questi concetti, ed ho visto occhi sgranati dall'altra parte. E' questa la ragione per cui l'ho solo accennato. Devo provare a scrivere un paragrafo di spiegazione, magari coadiuvato da qualche immagine.

Riguardo alla questione sicurezza, non capisco bene a cosa ti riferisci. Se mi link il thread, vado a leggermelo.

Quando parlo di un numero limitato di monete, volevo dire che non ci posso salvare tutte le 1500 criptovalute presenti su coinmarket. Devo specificarlo meglio.




gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 03, 2018, 11:30:59 AM
 #35



Mi aggancio alle tue osservazioni per suggerire a gallisiardi un modello metaforico che a mio avviso si adatta piuttosto bene a spiegare al neofita l'uso pratico del Bitcoin wallet e dei bitcoin in esso contenuti.



In breve:

Il Bitcoin address è assimilabile ad un portafoglio fisico

L' UTXO è assimilabile ad una banconota cartacea



In quest'accezione, il Software wallet diventa un contenitore di diversi portafogli (Bitcoin addresses), ognuno dei quali contiene diverse banconote (UTXO).



Qui sotto spiegato in modo più completo:



---------------------------------------

Nel mondo reale in tasca si tiene un portafoglio dentro il quale sono conservate diverse banconote cartacee.



Nel mondo virtuale il tuo portafoglio è rappresentato da un bitcoin address (indirizzo).

Le banconote dentro il portafoglio sono rappresentate dai cosiddetti UTXO (Unspent Transaction Output).



Esattamente come una banconota cartacea, gli UTXO non sono frazionabili ma vanno sempre spesi interamente.

Gli UTXO sono quindi le banconote del sistema Bitcoin, ma a differenza delle banconote cartacee essi possono contenere qualunque valore in bitcoin.



Cioè mentre nel mondo reale vi sono tagli fissi per le banconote (5, 10, 20, 50 Euro, etc), nel mondo del Bitcoin gli UTXO possono contenere qualunque valore (0.5, 0.03, 3.12, 0.00000234 bitcoins, etc)



Non solo, nel mondo del Bitcoin tu puoi avere decine di address, dunque decine di portafogli, ognuno dei quali può contenere decine di UTXO.



Quando tu fai un pagamento in bitcoin, il tuo software wallet sceglierà uno degli indirizzi (portafogli) che gestisce e userà per il pagamento uno o più UTXO (banconote) associati a quell'indirizzo.

Esattamente come al mercato tu scegli le banconote la cui somma porta alla cifra finale, il tuo software wallet sceglie gli UTXO da usare per il pagamento.



Se ti spetta un resto esso ti verrà restituito (sotto forma di UTXO) in uno degli address controllati dal software wallet.

Volendo puoi indicare al software wallet di versare il resto nello stesso address da cui hai speso i bitcoin (ma di default il resto come già detto viene versato in un indirizzo diverso).



In breve, da un punto di vista tecnico tu potresti possedere un unico address con il quale ricevi bitcoins (sottoforma di UTXO associati a quell'indirizzo) e dal quale disponi pagamenti (usando uno o più UTXO associati a quell'indirizzo) attendendoti che ti venga versato il resto nello stesso indirizzo.

----------------------------------------------





P.S: per numero limitato di monete immagino si riferisca al numero di altcoin che un hardware wallet supporta, di solito solo le principali.




Grazie, lo  terrò in considerazione.




gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 03, 2018, 11:34:08 AM
 #36

La vostra discussione mi ha stimolato, e penso che la scelta migliore, anche per rimanere coerente con quello già scritto nel resto del libro, sia di spiegare le cose a livello di transazioni. Prendetela come una bozza della bozza, devo mettermi li con calma e rileggere i paragrafi da integrare. Gli esempi potrebbero essere qualcosa del genere.

Esempio semplice
Bob ha acquistato su un exchange  0,8 btc, il suo wallet gli mostrerà quindi una transazione in ingresso di 0,8 btc.
Se Bob deve inviare ad Alice 0,2 btc, il wallet prende la transazione in ingresso di 0,8 BTC, la divide in due transazioni, una da 0,2 che verrà inviata ad Alice e una di 0,6 btc  di resto che dovrà reinviare a se stesso. La transazione generata dal wallet di Bob conterrà quindi 1 Input e 2 output.

IMMAGINE CHE ILLUSTRA IL TUTTO

Esempio più complesso
Bob ha scritto un libro su Bitcoin, ha inserito al suo interno un Qr Code. Cinque lettori gli hanno donato 0,002 btc per uno, per un totale di 0,01 btc. Bob deve pagare 0,005 btc per l'acquisto di uno spazio web. Il suo wallet, userà quindi 3 input da 0,002, per un totale di 0,006 e genererà 2 output, uno da 0,005 verso il fornitore del servizio web, ed uno da 0,001 di resto verso se stesso.
Ora Bob avrà un saldo di 0,005, composto dai due input che non sono stati intaccati dall'ultima transazione, e dal resto di 0,001 btc.

IMMAGINE CHE ILLUSTRA IL TUTTO


arulbero
Legendary
*
Offline Offline

Activity: 1914
Merit: 2071


View Profile
April 03, 2018, 12:27:39 PM
 #37

Riguardo alla questione sicurezza, non capisco bene a cosa ti riferisci. Se mi link il thread, vado a leggermelo.

Mi riferisco a questo thread https://bitcointalk.org/index.php?topic=2107660.0
In sostanza possedere bitcoin (e farlo sapere in giro) è molto più pericoloso che possedere euro su un conto corrente, poichè dal punto di vista pratico i bitcoin sono come contante, e nessuno andrebbe in giro con migliaia di euro in tasca (ma di fatto molti lo fanno con i bitcoin ignorando l'enorme pericolo a livello di sicurezza personale, come testimoniano purtroppo gli ultimi fatti di cronaca di cui si parla alla fine del thread).

La vostra discussione mi ha stimolato, e penso che la scelta migliore, anche per rimanere coerente con quello già scritto nel resto del libro, sia di spiegare le cose a livello di transazioni. Prendetela come una bozza della bozza, devo mettermi li con calma e rileggere i paragrafi da integrare. Gli esempi potrebbero essere qualcosa del genere.

Esempio semplice
Bob ha acquistato su un exchange  0,8 btc, il suo wallet gli mostrerà quindi una transazione in ingresso di 0,8 btc.
Se Bob deve inviare ad Alice 0,2 btc, il wallet prende la transazione in ingresso di 0,8 BTC, la divide in due transazioni, una da 0,2 che verrà inviata ad Alice e una di 0,6 btc  di resto che dovrà reinviare a se stesso. La transazione generata dal wallet di Bob conterrà quindi 1 Input e 2 output.

IMMAGINE CHE ILLUSTRA IL TUTTO

Esempio più complesso
Bob ha scritto un libro su Bitcoin, ha inserito al suo interno un Qr Code. Cinque lettori gli hanno donato 0,002 btc per uno, per un totale di 0,01 btc. Bob deve pagare 0,005 btc per l'acquisto di uno spazio web. Il suo wallet, userà quindi 3 input da 0,002, per un totale di 0,006 e genererà 2 output, uno da 0,005 verso il fornitore del servizio web, ed uno da 0,001 di resto verso se stesso.
Ora Bob avrà un saldo di 0,005, composto dai due input che non sono stati intaccati dall'ultima transazione, e dal resto di 0,001 btc.

IMMAGINE CHE ILLUSTRA IL TUTTO


Tempo fa avevo tradotto un articolo sulla questione del resto:
http://bitcoinedintorni.blogspot.it/2015/04/cinque-modi-di-perdere-bitcoin-con-gli.html
magari ti può servire come spunto.

Ricordo che le prime volte volte che pensavo al resto mi dava fastidio l'idea che ogni utxo dovesse essere speso tutto in una volta, poichè avevo proprio l'idea di bitcoin come numeri su un conto corrente.
L'analogia con le banconote fisiche funziona abbastanza bene, con una precisazione però: ogni volta che si spende un utxo, il suo importo può essere anche frazionato in più parti, un po' come se ci fossero più resti:
ad esempio posso spendere un utxo suddividendolo in 3 output: per pagare con una parte l'address A, con il resto del pagamento all'address A pagare l'address B, e versare quindi il resto finale di nuovo nel mio address di partenza.
Quindi non è corretto dire che un utxo non è frazionabile, è vero che non si può spenderne solo una parte in una transazione, ma all'interno di una singola transazione si può frazionare l'intero utxo in molte parti.

Infine per quanto riguarda il numero di chiavi private, poichè un address è lo ripemd160(sha256(una chiave pubblica)), esso è lungo 160 bit. Quindi è ovvio che ci sono moltissime chiavi private (in media 2^256/2^160) che possono controllare lo stesso address (come le password nei siti, se un sito memorizza come dovrebbe essere solo il digest di una password, è chiaro che ci saranno molte altre password (diverse da quella originale) che mi permetteranno di accedere indifferentemente al mio account.)
arulbero
Legendary
*
Offline Offline

Activity: 1914
Merit: 2071


View Profile
April 03, 2018, 12:42:00 PM
 #38

Esempio semplice
Bob ha acquistato su un exchange  0,8 btc, il suo wallet gli mostrerà quindi una transazione in ingresso di 0,8 btc.
Se Bob deve inviare ad Alice 0,2 btc, il wallet prende la transazione in ingresso di 0,8 BTC, la divide in due transazioni, una da 0,2 che verrà inviata ad Alice e una di 0,6 btc  di resto che dovrà reinviare a se stesso. La transazione generata dal wallet di Bob conterrà quindi 1 Input e 2 output.

Rileggendo questa parte, utilizzeresti il concetto di transazione in modo un po' improprio, in quanto sembra che nel tuo esempio ci siano 3 transazioni. Non è del tutto corretto dire che il wallet prende la transazione in ingresso e la divide in due transazioni in uscita, poichè il wallet prende in realtà l'output non speso di una transazione come input di una nuova transazione e lo suddivide in due output. 1 utxo in input, 2 utxo in output, ma il tutto avviene all'interno di una singola transazione. La transazione deve essere unica proprio perchè l'utxo di partenza non è spendibile in 2 transazioni separate. La transazione trasforma utxo in utxo, e nel fare questo l'input perde la sua proprietà di "unspent". Quindi eviterei di utilizzare il termine "transazione" al posto di "utxo".
stefy77
Full Member
***
Offline Offline

Activity: 658
Merit: 105


View Profile
April 03, 2018, 09:07:45 PM
 #39

Lo sto leggendo un poco alla volta. Lo trovo fatto benissimo per le persone che si avvicinano per la prima volta.
gallisiardi (OP)
Member
**
Offline Offline

Activity: 80
Merit: 205


View Profile WWW
April 04, 2018, 04:51:45 AM
 #40

Esempio semplice
Bob ha acquistato su un exchange  0,8 btc, il suo wallet gli mostrerà quindi una transazione in ingresso di 0,8 btc.
Se Bob deve inviare ad Alice 0,2 btc, il wallet prende la transazione in ingresso di 0,8 BTC, la divide in due transazioni, una da 0,2 che verrà inviata ad Alice e una di 0,6 btc  di resto che dovrà reinviare a se stesso. La transazione generata dal wallet di Bob conterrà quindi 1 Input e 2 output.

Rileggendo questa parte, utilizzeresti il concetto di transazione in modo un po' improprio, in quanto sembra che nel tuo esempio ci siano 3 transazioni. Non è del tutto corretto dire che il wallet prende la transazione in ingresso e la divide in due transazioni in uscita, poichè il wallet prende in realtà l'output non speso di una transazione come input di una nuova transazione e lo suddivide in due output. 1 utxo in input, 2 utxo in output, ma il tutto avviene all'interno di una singola transazione. La transazione deve essere unica proprio perchè l'utxo di partenza non è spendibile in 2 transazioni separate. La transazione trasforma utxo in utxo, e nel fare questo l'input perde la sua proprietà di "unspent". Quindi eviterei di utilizzare il termine "transazione" al posto di "utxo".

Certo era solo per dare un idea dell' approccio.

Pages: « 1 [2] 3 4 5 6 »  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!