Bitcoin Forum
May 26, 2024, 08:32:53 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 [80] 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 »
1581  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: January 01, 2016, 02:55:46 PM
Avrei una domanda relativa alla manutenzione di un full node:
per evitare che un problema nel database dei blocchi costringa a riscaricare e ricontrollare tutta la blockchain, voi fate un backup di tutta la cartella dei blocchi (che contiene a sua volta la cartella degli indici) + la cartella chain state?

--> .bitcoin/blocks
--> .bitcoin/chainstate

È sufficiente un backup di queste due cartelle o bisogna salvarsi qualcos'altro?

Per la cronaca il mio pc dopo 5 giorni sta ancora reindicizzando i blocchi (ne mancano 15000) ...
1582  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 31, 2015, 05:56:44 PM

In sostanza quindi il lavoro del nostro full node è il prezzo che decidiamo di pagare per la mancanza di fiducia che abbiamo negli altri; si badi bene che questa mancanza di fiducia non ha un connotato negativo, anzi, è l'elemento base su cui si innesca l'effetto positivo di credibilità del sistema intero: più utenti decidono di pagare questo prezzo, più sicura diventa la rete (poichè cresce il controllo complessivo degli uni sugli altri).



Giustissimo, infatti cosi' deve funzionare una rete p2p, e cosi' penso fosse nell'idea del progetto.
Peccato che le cose sono andate diversamente, ormai pochissimi possono permettersi di fare un full node.

Come stiamo discutendo tenere su un full ha dei costi, diciamo che per ora siano X euro/anno.
Supponi che tu movimenti in bitcoin X/2 euro anno, ovviamente sarebbe assurdo tenere su un full node.


Inoltre c'e' la complicazione tecnica, ossia potresti non essere in grado di avere le competeze
che ormai servono per tenerlo su (manutenzione del sw, manutenzione della blockchain, manutenzione di un HW adeguato...)

Per fare un paragone con le "vecchie" banche, attualmente io ho un conto corrente presso una banca online, e a parte i 34 euro di bollo non ho altre spese (bonifici gratuiti, pagamento con bancomat gratuiti).
Ovviamente la differenza sostanziale con il sistema Bitcoin è che i soldi non sono direttamente in mio possesso ma parcheggiati e affidati alle cure di qualcun altro di cui ho deciso di fidarmi.

D'altra parte sarebbe possibile oggi mantenere un full node con 34 euro l'anno?

Forse per il momento si riesce a farlo solo come sto facendo io, che ogni 2 giorni avvio per qualche ora il programma, aspetto che si sincronizzi, controllo il bilancio del wallet e poi spengo tutto. In questo modo limito il più possibile l'uso della banda e della corrente (ma basta poi un qualsiasi intoppo e rischio di impiegare 72 ore-macchina per ripristinare il tutto!). In sostanza controllo solo i blocchi ma non le transazioni della mempool. In effetti non è proprio un full node, quanto un node part time con una ricaduta positiva sulla rete molto limitata.

Il dubbio che ho da un po' di tempo a questa parte è sull'efficienza effettiva del sistema della blockchain (discorso che viene ben prima di quello dell'implementazione del protocollo in Bitcoin Core o di quello della dimensione dei blocchi). Questo sistema della blockchain viene lodato da più parti per l'innovazione che ha portato. Io riconosco l'innovazione e anche il grado di sicurezza con il quale grazie a esso oggi si può affermare che una certa transazione sia avvenuta in un certo momento.

Quello che mi suona strano è che un sistema che richieda che tutti gli N nodi della rete replichino N volte lo stesso lavoro di validazione della chain e delle transazioni della mempool possa essere un sistema davvero efficiente.
Se il bitcoin si diffondesse come i dollari (non succederà mai) e io avessi ancora un full node, sarebbe come se tutte le transazioni mondiali passassero attraverso il mio pc che dovrebbe convalidarle una a una!
Mi pare evidente che così com'è il sistema non può funzionare, ossia non è scalabile, e soprattutto è costosissimo (come hai notato tu per muovere x magari devo spendere 2x per controllare tutte le altre transazioni che non mi riguardano, e che saranno sempre molte di più in rapporto al numero di transazioni che mi coinvolgono direttamente). Il sistema ha funzionato bene finora perchè la comunità Bitcoin era piccola (controllare tutte le transazioni di un villaggio è poco costoso), ma adesso sta diventando veramente difficile, e a meno di svolte tecniche importanti che io mi auguro, il futuro è di pochi full node specializzati.

EDIT: coloro i quali dichiarano che le transazioni bitcoin sono quasi gratuite, di fatto o non tengono conto dei costi di mantenimento del full node oppure semplicemente usano wallet SPV e quindi si fidano di altri***, se tutti facessero così il bitcoin perderebbe di valore perchè sarebbe facilissimo rubare in un ambiente in cui tutti si fidano di tutti

***EDIT2: in sostanza i wallet SPV fanno affidamento sul fatto che gli altri nodi a cui si rivolgono non si fidino a loro volta di altri nodi ma svolgano al contrario in prima persona il lavoro di controllo (di fatto i full node lavorano gratis anche per i SPV).
È un po' la differenza che intercorre tra un "sentito dire" e una "conoscenza verificata di prima persona". Se la maggior parte dei nodi parlassero solo per sentito dire, non si sarebbe mai sicuri della verità di nessuna affermazione che gira per la rete.

1583  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 31, 2015, 03:13:45 PM
...
Inoltre ritengo una carenza forse ancora peggiore anche la scarsissima discussione sul futuro dei full node,
che ritengo una problema di magnitudo maggiore a quello della dimensione del blocco.

Ma mentre la dimensione del blocco e' diventata una discussione "di moda" e gonfiato piu' di quello che e' in realta',
la carenza progettuale della ricompensa ai full node alla lunga sara' veramente deleteria per la rete,
che pratica aprira' la strada a fare di bitcoin uan rete  p2p solo in teoria (anzi a dirla tutta in realta' e' gia' cosi')

Sul discorso di ricompensa per i full node, io la vedo così:

l'unico vero lavoro dimostrabile è quello dei miner, che per questo vengono ricompensati (il loro è un lavoro competitivo e sempre più difficile, dove per forza di cosa solo i migliori e i più capaci sopravvivono riuscendo a spartirsi le ricompense e le fee);
il lavoro dei full node invece non è dimostrabile, anzi è falsificabile molto facilmente; inoltre il lavoro dei full node più che un servizio per gli altri è in primo luogo un servizio per se stessi. La validazione delle transazioni e dei blocchi è infatti un lavoro che in primis si fa per se stessi, per essere in grado di riconoscere la validità dei pagamenti ricevuti. Il lavoro di trasmissione di transazioni (altrui) e di blocchi agli altri nodi viene invece ricompensato con la ricezione di altre transazioni e blocchi da altri nodi (che contribuiscono così in maniera determinante a rendere affidabile il giudizio del nostro full node).

Tu sostieni che la mancanza di ricompensa sia una carenza progettuale, dal mio punto di vista invece in una rete veramente P2P se tutti facciamo lo stesso lavoro, chi dovrebbe pagare chi? Perchè?

Il concetto che sta alla base del Bitcoin è che si tratta di un mezzo di pagamento senza bisogno di fiducia, ovvero un sistema nel quale ogni utente deve essere nella condizione di poter controllare da solo la validità di una qualsiasi transazione che riceve (validità che dipende sostanzialmente dalla validità di tutte le altre transazioni che si sono succedute dall'inizio della storia del bitcoin, e questo è il punto che regge tutto ma anche il problema). La condizione di assenza di bisogno di fiducia si traduce nel full node; chiunque abbia un wallet e gestisca transazioni di una certa importanza dovrebbe avere un full node e non affidarsi ai full node di altri utenti.
In sostanza quindi il lavoro del nostro full node è il prezzo che decidiamo di pagare per la mancanza di fiducia che abbiamo negli altri; si badi bene che questa mancanza di fiducia non ha un connotato negativo, anzi, è l'elemento base su cui si innesca l'effetto positivo di credibilità del sistema intero: più utenti decidono di pagare questo prezzo, più sicura diventa la rete (poichè cresce il controllo complessivo degli uni sugli altri).


mi fa piacere che stai "toccando con mano" la pensatezza della cosa, magari mi dai una mano a
sensibilizzare la gente su questo tema Smiley
Questa pesantezza è dovuta all'aumento delle transazioni e quindi dell'utilizzo del sistema Bitcoin; semplicemente il lavoro di controllo da fare (il prezzo da pagare per la mancanza di fiducia) sta aumentando oltre le possibilità economiche (e di tempo) dell'utente medio. Non sono in grado di capire se a livello tecnico il problema sia risolvibile o meno.
Dal mio punto di vista la "mancanza di fiducia" sta diventando un lusso che pochi possono permettersi man mano che il sistema diventa più complesso; e non mi riferisco solo alle questioni puramente economiche: quante persone pensi siano in grado semplicemente di capire a livello tecnico il bitcoin per non parlare delle implicazioni più generali sottese a ogni scelta tecnica? Non è forse un enorme paradosso dichiarare di aver costruito un sistema che permette a tutti di potersi non fidare e controllare direttamente tutto, quando nella realtà la stragrande maggioranza delle persone è costretta a fidarsi invece di quello che le si dice?

L'esperimento bitcoin rischia di produrre dei risultati inattesi anche per i suoi creatori, e cioè potremmo avere in un futuro prossimo dei full nodi specializzati e forse a pagamento (vi ricordano qualcosa le banche?) senza i quali non potremo processare i nostri pagamenti. A questi full node concederemo la nostra fiducia, poichè fare altrimenti risulterebbe troppo costoso.
1584  Local / Italiano (Italian) / Re: Non firmate digitalmente cose ignote. on: December 31, 2015, 01:37:32 PM
tecnicamente, betcoin.tm dice che la firma serve per verificarti, infatti se perde la password, te la manda solo se gli firmi un'altra cosa solo con l'indirizzo con il quale ti sei iscritto.

Il che andrebbe benissimo se ti facessero firmare un messaggio intellegibile del tipo "I'm the owner of the address 1xxx"; perchè mai devono proporti invece una stringa alfanumerica indecifrabile?
1585  Local / Italiano (Italian) / Re: Non firmate digitalmente cose ignote. on: December 31, 2015, 11:23:36 AM
Restando in tema ho notato che betcoin per il prelievo vuole che verifichi il wallet firmando una stringa alfanumerica, secondo voi è affidabile oppure c'è da preoccuparsi?

anche io vorrei sapere se c'è qualche rischio... Per la richiesta di prelievo su betcoin.tm ho firmato una stringa alfanumerica...
ovviamente non avevo letto questo post Huh

Come ti ha detto anche gbianchi firmare qualcosa che non si capisce non ha senso (va proprio contro il principio della firma, che significa "io sottoscrivo - quindi comprendo e sono d"accordo/autorizzo - ciò che c'è scritto nel messaggio").

Ultimamente ho notato che, anche qui nel forum, la firma dei messaggi viene utilizzata soprattutto per verificare in modo indiretto un'identità (se sono in grado di firmare un qualsiasi messaggio allora io sono il proprietario di questo indirizzo), e spesso passa in secondo piano il messaggio vero e proprio, che deve essere sempre chiaro, anche se spesso inutile nel contenuto, a chi firma.

Come strumento minimo (ma non credo sufficiente) di salvaguardia, bisognerebbe almeno provare a incollare la stringa alfanumerica proposta qui-> https://blockchain.info/it/decode-tx o qui -> https://coinb.in/#verify per verificare che non si tratti di una transazione, ma comunque ripeto come principio generale proprio non capisco per quale motivo uno dovrebbe essere indotto a firmare qualcosa che non è in grado di capire.
1586  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 30, 2015, 07:18:14 PM
Sto ancora cercando di capire di quante risorse necessita veramente Bitcoin Core. Io ho installato la versione 0.11.2, che lancio ogni tanto solo perchè si sincronizzi (lo uso perchè il mio wallet di default è Armory, che come sapete ha bisogno del Core per funzionare).

L'altro giorno mi si è bloccato Core, e ho dovuto reindicizzare i blocchi. Ebbene, sono 2 giorni interi che sta reindicizzando e avanza lentissimo (per la cronaca il programma gira su Ubuntu 14.10, che gira su una virtual machine creata con vmplayer sul mio vecchio portatile di 6 anni). La cpu della virtual machine è sempre quasi al 100%!

Se penso che qui sul forum c'è chi asserisce di aver scaricato tutta la blockchain in soli 12 minuti  Tongue -->
https://bitcointalk.org/index.php?topic=1302157.msg13390925#msg13390925
mi viene male; ma oltre a scaricare la chain bisogna anche validarla, come è possibile metterci così poco?

Per fortuna che la 0.12 promette molto meglio da questo punto di vista https://bitcointalk.org/index.php?topic=1300389.msg13329111#msg13329111
Quote
Very soon libsecp256k1 will be used for verification, which speeds up initial sync time by 400%-700% and reduces CPU load for all full nodes.
A segregated witness softfork will be done ASAP (within 3-6 months, probably). This will at least double the effective transaction capacity (ie. it is equal to or better than BIP 102), and at the same time it will provide features important for safely scaling even more in the future.
There will not be any hardfork for at least the next ~year.
To pave the way for scalable hardfork max block size increases (which will eventually be necessary), and because it is already dearly needed, improved block/tx broadcasting technology such as weak blocks and IBLT will be implemented, hopefully soon after SegWit.
The BIPs necessary for efficient deployment of Lightning are already in the pipeline and should be rolled out in 2016. Lightning will allow for almost all of the security, features, and decentralization of Bitcoin transactions while drastically reducing the number of on-blockchain transactions that each individual will need to perform. This is expected to be the real eventual solution to scaling.
1587  Local / Servizi / Re: [BITY] BTC<->EUR con bonifico SEPA on: December 29, 2015, 03:50:18 PM
La commissione di poco più dell'uno per cento non è altissima, il vantaggio rimane quello di evitare di spedire i documenti (anche se pagando con bonifico non è che si sia proprio anonimi).
1588  Local / Servizi / Re: [BITY] BTC<->EUR con bonifico SEPA on: December 29, 2015, 03:30:43 PM
...
I contro è che è più caro di The rock e di bitcoin.de di circa 5 euro in questo momento.
Acquisti di BTC:
396.38 BITY
390-391 su bitcoin.de il prezzo minimo (cui aggiungere un fee di 0.5%)
...
EDIT: Io ho pagato i btc 393 mentre bitcoin.de me li avrebbe venduti a 388, quindi la differenza è di 5 euro cui sottrarre il fee del 0.5% di bitcoin.de che sono circa 2 euro, quindi ho pagato 3 euro in più per bitcoin.

The rock trading me li avrebbe venduti per 387 cui aggiungere il fee dello 0.20% cui aggiungere 0.001 btc per il ritiro dei soldi digitali. Un po' più di un euro di spese ogni bitcoin cambiato.

EDIT2: Senza mandare la jpeg della propria carta di identità si possono comprare circa 10 bitcoin all'anno al prezzo attuale (4000 euro).

Il prezzo viene fissato al momento dell'acquisto o quando ricevono l'accredito del bonifico sul conto?
1589  Local / Italiano (Italian) / Re: Attenzione! Nelle ultime ore minati un numero di blocchi particolarmente alto on: December 28, 2015, 11:38:49 AM
Il hash rate è salito parecchio in linea con la tendenza attuale. Tra un paio di giorni ci sarà un'altro incremento record della difficoltà.

https://blockchain.info/charts/hash-rate


E il tempo medio di conferma di una transazione è abbondantemente sotto i 10 minuti (che dovrebbe essere la velocità di crociera a cui tendere):

https://blockchain.info/it/charts/avg-confirmation-time
1590  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 27, 2015, 09:24:16 PM
Grazie per la prova, in effetti anche in rete si trovano diverse critiche sulla lentezza del raspberry e poi i conti non tornavano; non so proprio come facciano a vendere soluzioni dedicate basate proprio sul raspberry.

Inutile girarci intorno, per Bitcoin Core serve un pc. Mi rimane solo da capire se un NUC con 8/16 GB di RAM  e con Intel Core i3 sia sufficiente a darmi dei margini per essere utilizzato in maniera soddisfacente per almeno un paio di anni.
Dopodichè lo riciclerò come pc da regalare a qualche mio parente dalla basse pretese tecnologiche  Grin
1591  Local / Italiano (Italian) / Re: Attenzione! Nelle ultime ore minati un numero di blocchi particolarmente alto on: December 27, 2015, 06:32:32 PM
Che salga l'hash rate è positivo, certo di solito non avviene così rapidamente ma non ci vedo nulla di negativo.

Non dico che sia negativo, ma 13 blocchi negli ultimi 30 minuti! È perlomeno strano...
1592  Bitcoin / Bitcoin Discussion / Re: WARNING: abnormally high number of blocks generated on: December 27, 2015, 06:20:59 PM
31 blocks were found within the last 3 hours (instead of 18)

EDIT: 13 blocks in 30 min!
1593  Local / Italiano (Italian) / Re: Attenzione! Nelle ultime ore minati un numero di blocchi particolarmente alto on: December 27, 2015, 05:38:36 PM
E se si trattasse di test di nuovi miner?

Potrebbe anche essere...

Guardate intanto la mempool che al momento è quasi vuota: https://tradeblock.com/bitcoin/

EDIT: comunque nelle ultime 3 ore 36 blocchi minati contro i 18 di media, si viaggia forte...
1594  Local / Italiano (Italian) / Nelle ultime ore minati un numero di blocchi particolarmente alto on: December 27, 2015, 04:12:57 PM
Stamattina in 4 ore il numero dei blocchi minati è stato almeno il doppio di quanto avrebbe dovuto essere (48 invece che 24).
Se si fosse trattato di una fluttuazione statistica questa dovrebbe presentarsi in media 1 volta ogni 50 anni; oppure è aumentata improvvisamente la capacità computazionale della rete?

https://www.reddit.com/r/Bitcoin/comments/3ydwg2/warning_abnormally_high_number_of_blocks/?

https://bitcointalk.org/index.php?topic=1305575.0

EDIT: il problema si è presentato stamattina, nelle ultime ore il comportamento anomalo sembra essere cessato
1595  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 27, 2015, 02:51:51 PM

Qualcun altro che abbia un full node e voglia darmi un parere sul mio hardware?


questi sostengono che con un rapsberry si puo' fare.

http://raspnode.com/faq.html#rpipowerful

come ho scritto, io non ci credo, se non altro perche' i rasp2 ha solo 1 GB di ram,
ma visto che costa veramente poco, e tu hai intenzione di fare un nodo ridotto, forse una prova
potresti pure farla....


Anche a me così a occhio i conti non tornano:

Memory - Bitcoin core generally uses between 50% and 70% of RAM, which leaves more than enough for the streamlined Raspbian OS. When initially downloading the blockchain the raspnode will hit some swap but not much and it isn't needed for normal operation.

Compute power - Bitcoin core generally uses around 10% of one core (out of four) and occasionally jumps to around 30% for a few seconds when verifying a block.

Solo 500/700 MB di RAM utilizzata mi sembra un quantitativo veramente risicato e solo il 10% di un core della sua cpu anche peggio (sul mio portatile, dove ogni tanto faccio girare Core per sincronizzare la blockchain, i valori sono ben più alti). Eppure vendono delle soluzioni dedicate a questo scopo proprio basate sul raspberry 2 https://bitcoinmini.com, chissà con che parametri girerà il Core...

Grazie per la segnalazione!
1596  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 27, 2015, 02:24:00 PM
come ti ho detto nell'altro thread, il mio richiede un memory pool importante,  una notevole percenutale di processore e banda in quantita'.
inoltre l'uso di risorse e' salito molto negli ultimi mesi, in concomitanza dell'apprezzamento del BTC.

Quindi, secondo me devi scortadrti i 2/3 anni... io prevedo che se le cose vanno avanti come adesso,
io non reggo un anno con le mie risorse.

Ma sono anche io curioso di sentire le opinioni degli altri Smiley

Ovviamente imposterei un nodo limitando le dimensioni della memory pool (pensavo di agire soprattutto sui parametri minrelaytxfee e limitfreerelay); la mia idea è che se non posso mantenere proprio un "full" node, almeno vorrei poter contribuire a validare e a propagare un sottoinsieme delle transazioni che passano per il mio.

Ho solo il dubbio se questo modo di procedere sia veramente d'aiuto alla rete o magari al contrario possa in alcuni casi causare dei contrattempi (ad esempio potrebbe succedere che il mio nodo favorisca inconsapevolmente una double spending, dal momento che non può avere un quadro completo di tutte le transazioni che girano per la rete).

Diciamo che in qualche modo un modello sostenibile potrebbe essere quello di rinunciare a un vaglio completo di tutte le transazioni da parte di tutti i nodi (o almeno da parte di quelli poco prestazionali come quello che ho in mente di mettere in piedi io) per passare a un controllo "a campione" e quindi più "approssimativo" ma più capillare (ripeto anche se così facendo il giudizio di validazione risulta meno autorevole).

Al limite estremo sarebbe possibile avere dei nodi che controllino solo che i blocchi della blockchain siano validi e che contengano transazioni valide? Dei nodi cioè che si limitino a validare il lavoro già effettuato dai miner e trasmettano il risultato di questa validazione al resto della rete? E che quindi non abbiano di fatto una propria mempool? Una sorta di validazione solo a posteriori e non a priori delle transazioni (se ho detto qualche stupidaggine ditemelo pure).

Penso in conclusione che sia meglio una rete con 100 mila nodi con capacità di validazione diversa rispetto a una rete costituita solo da poche centinaia di full nodi, tutti "peer" sì, ma anche super prestazionali e costosissimi (questo è il futuro prossimo che di fatto paventi tu, se non si fa nulla per cambiare).


Qualcun altro che abbia un full node e voglia darmi un parere sul mio hardware?
1597  Local / Discussioni avanzate e sviluppo / Re: Tuning full node on: December 27, 2015, 12:00:11 PM
Secondo voi avrebbe senso acquistare un NUC tipo questo

http://www.ebay.it/itm/GIGABYTE-NUC-BRIX-S-CELERON-3205-NO-RAM-HDD-S-O-BLACK-/252187171577?hash=item3ab786daf9:g:D4IAAOSwt6ZWV1wI

per farci girare un full node?

Al di là del costo (magari se ne trovano di usati, ma d'altra parte bisogna aggiungere anche RAM e hard disk), e settando in maniera opportuna i parametri di Bitcoin Core, le caratteristiche tecniche (tipo velocità del processore) sarebbero sufficienti per sostenere le crescenti richieste computazionali della rete bitcoin? Sufficienti diciamo per almeno i prossimi 2/3 anni??
1598  Local / Italiano (Italian) / Re: Non firmate digitalmente cose ignote. on: December 27, 2015, 08:55:17 AM
Non ho capito, firmare un file non significa criptare un hash del file con la propria chiave privata in modo che chi controlla possa risalire all'hash e quindi capire che sono stato io a firmare?
Se mi danno l'hash da firmare io dovrei fare l'hash dell'hash e crittare quello che non dovrebbe equivalere alla firma del file.
Se invece implementa https://it.wikipedia.org/wiki/Blind_signature allora è diverso ma mi perdo ...

Hai ragione tu, mi sono confuso con la blind signature, firmare un file vuol dire ricevere il file "in chiaro", fare l'hash del file (1 sola volta) e quindi criptare l'hash con la propria chiave privata (anche perchè se fosse altrimenti non si sarebbe mai in grado di sapere che cosa si sta effettivamente firmando).

Il problema è che se ti inviano una stringa alfanumerica "in chiaro" non è immediato comunque riconoscere a occhio se si tratta di una transazione o no.

EDIT: nel caso particolare della firma di una transazione però, si firma in realtà l'hash di un hash (vedi i punti 13,14 e 15 della risposta articolata in 19 punti che si trova qui http://bitcoin.stackexchange.com/questions/3374/how-to-redeem-a-basic-tx).
Adesso mi è venuto il dubbio di come funzioni esattamente la firma  Huh


EDIT2: allora, in generale l'algoritmo ECDSA prevede che la firma consista nel criptare l'hash di un messaggio, nel caso particolare però della firma di una transazione bitcoin si è deciso di fare 2 volte l'hash della transazione e poi criptare il risultato ottenuto (per una questione di sicurezza, in questo caso non c'entra nulla la blind signature) ->

Using one round of SHA-256 is subject to a length extension attack, which explains why double-hashing is used.

Fonte: http://www.righto.com/2014/02/bitcoins-hard-way-using-raw-bitcoin.html
1599  Local / Italiano (Italian) / Re: Non firmate digitalmente cose ignote. on: December 26, 2015, 11:59:49 PM
Spero di spiegarmi ...
Da quello che ho capito puoi firmare solo una transazione in ingresso e dirottarla su altro address. Se io svuoto le transazioni in ingresso non possono in alcun modo firmare transazioni che ancora non sono avvenute o sbaglio qualcosa?
Ossia: se ho BTC su un address rischio solo se non sposto le transizioni in ricezione. Se lo svuoto e lo riempio non dovrebbe esserci modo per prendere i BTC.

Il rischio è il seguente:

- tu vuoi prelevare dei btc da A e metterli su un tuo indirizzo x
- A prepara una transazione da A e x, la firma ma non la trasmette
- A prepara una seconda transazione, dal tuo indirizzo x (ovvero dall'output della transazione del punto precedente, di cui adesso ha già pronto il txid) di nuovo ad A, fa l'hash di questa seconda transazione e ti invia questa transazione incompleta stringa di 64 caratteri
- tu firmi la stringa (in questo modo A completa l'"assemblaggio" della seconda transazione)
- A trasmette la prima transazione, tu ricevi i btc e quindi A può dire di averti pagato
- un'ora dopo A trasmette anche la seconda transazione e si riprende i btc che ti aveva inviato (a meno che tu non li abbia spostati subito; faccio notare per inciso che in realtà c'è un caso ancora peggiore, A potrebbe trasmettere alla rete le due transazioni contemporaneamente e queste potrebbero essere convalidate nello stesso blocco! -> http://bitcoin.stackexchange.com/questions/1726/can-multiple-transactions-transferring-the-same-bitcoin-be-done-in-one-block)

Ovviamente qualora nell'indirizzo su cui vuoi essere pagato ci fossero già altri output non spesi di altre transazioni, A sarebbe in grado con questo stratagemma non solo di riprendersi i propri btc ma anche di svuotare completamente il contenuto del tuo indirizzo (preparando una transazione ad hoc).

Tutti i dati necessari per fare una transazione (txid di transazioni che hanno portato i btc nel nostro indirizzo, l'indirizzo stesso) sono pubblici; ciò che distingue il legittimo proprietario di un indirizzo da tutti gli altri è solo la possibilità di firmare la transazione (operazione che tra l'altro comporta la comunicazione della chiave pubblica, altrimenti non avrebbe senso chiedere a qualcuno di firmare qualcosa se poi non si è in grado di verificare la firma).

Da notare infine che in tutto questo A non verrebbe nemmeno a conoscenza della chiave privata di x, ma visto che la funzione della chiave privata è solo quella di firmare (e di produrre la relativa chiave pubblica per la verifica) non cambierebbe nulla (se non che l'indirizzo x rimarrebbe sicuro dopo il furto, bella consolazione Grin)

1600  Local / Beni / Re: [VENDO] Dvd Miyazaki - Disney on: December 26, 2015, 09:39:35 PM
Up! Su che è un ottimo regalo natalizio!  Wink
Pages: « 1 ... 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 [80] 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!