impara

October 30, 2016, 08:16:05 PM  #10 Quote from: gbianchi on October 30, 2016, 08:04:58 PMTutto cio rientra nella normale varianza statistica Teoria della probabilità o comunque nozioni base del corso di statistica Re: È Partito il soft fork per laumento del block size October 30, 2016, 09:27:21 PM  #11 premetto che quando usate certi paroloni non capisco una randa (quindi ho capito il 10% del thread) ma mik chiedo, perchè fare i blocchi solo da 2 mb? Che senso ha fare un fork e raddoppiare solo ? tempo xx mesi e ci troviamo di nuovo con i blocchi saturi Re: È Partito il soft fork per laumento del block size October 30, 2016, 09:32:21 PM  #12 Quote from: bittaitaliana on October 30, 2016, 09:27:21 PMpremetto che quando usate certi paroloni non capisco una randa (quindi ho capito il 10% del thread) ma mik chiedo, perchè fare i blocchi solo da 2 mb? Che senso ha fare un fork e raddoppiare solo ? tempo xx mesi e ci troviamo di nuovo con i blocchi saturicazzo bitta ne parliamo tutti da mesi e mesi comunque con questo soft fork non modificano davvero la dimensione del blocco,ma ci mettono meno roba dentro, in modo che in un blocco da 1 mega (quindi resta uguale) diventa equivalente a un blocco di circa 1.6 mega di adesso(circa!!!)Per fare questo non serve un hard fork. Re: È Partito il soft fork per laumento del block size October 30, 2016, 09:33:02 PM  #13 io ho messo il mio full node in 0.13.1non servira a un cazzo, ma chissa. Re: È Partito il soft fork per laumento del block size October 30, 2016, 09:45:39 PM  #14 Quote from: gbianchi on October 30, 2016, 09:32:21 PMQuote from: bittaitaliana on October 30, 2016, 09:27:21 PMpremetto che quando usate certi paroloni non capisco una randa (quindi ho capito il 10% del thread) ma mik chiedo, perchè fare i blocchi solo da 2 mb? Che senso ha fare un fork e raddoppiare solo ? tempo xx mesi e ci troviamo di nuovo con i blocchi saturicazzo bitta ne parliamo tutti da mesi e mesi comunque con questo soft fork non modificano davvero la dimensione del blocco,ma ci mettono meno roba dentro, in modo che in un blocco da 1 mega (quindi resta uguale) diventa equivalente a un blocco di circa 1.6 mega di adesso(circa!!!)Per fare questo non serve un hard fork.si, ma quando parlate voi, a me serve un traduttore, ogni 5 parole devo andare a vedere su google il significato  non ti incazzare, ma spiegami anche sta cosa, quindi si continua ad utilizzare un solo bitcoin ? Nel senso, io avevo capito che con un hard fork ci sarebbero state due chanin diverse, quindi il btc rimaneva una cosa, il nuovo con blocchi più grandi altra cosa, con altro nome (come nel caso di ETH e ETC), con il soft fork cosa cambia? Re: È Partito il soft fork per laumento del block size October 30, 2016, 10:01:54 PM  #15 Quote from: bittaitaliana on October 30, 2016, 09:45:39 PMsi, ma quando parlate voi, a me serve un traduttore, ogni 5 parole devo andare a vedere su google il significato  non ti incazzare, ma spiegami anche sta cosa, quindi si continua ad utilizzare un solo bitcoin ? Nel senso, io avevo capito che con un hard fork ci sarebbero state due chanin diverse, quindi il btc rimaneva una cosa, il nuovo con blocchi più grandi altra cosa, con altro nome (come nel caso di ETH e ETC), con il soft fork cosa cambia?Bianchi è più bravo di me e ti spiegherà meglio. Intanto quel che ho capito io è che nel soft fork non si dividono le blockchain in due (quindi niente ETH e ETC), si aspetta che il 95% dei minatori siano daccordo e poi si fa lo switch.Poi con i blocchi che possono essere dal 60% al 100% più grandi significa che non ci sarà più da aspettare perché la nostra transazione abbia una conferma e questo per diverso tempo a venire.E poi?Poi ci sono molte idee che sono state discusse a Milano nella conferenza sui bitcoin che si possono realizzare quando questo softfork sarà attivo. Lidea è quella di una seconda rete sopra questa attuale dei bitcoin che porterebbe a risolvere (così ho letto ma sono completamente alloscuro) il problema del block size. Si parla di una blockchain parallela dove scaricare i Megabyte che non ci stanno in quella attuale o di altri metodi per ridurre il peso della blockchain. Insomma pare che non sarà un problema. Le idee che hanno sono tante e pare che possano coesistere ed esserci vari (?) secondi layer (ma ho ben capito?). Re: È Partito il soft fork per laumento del block size October 31, 2016, 12:48:06 AM  #16 a questo link potrete monitorare il numero di blocchi emessi con il supporto al segwit per ora è al 13.30% Re: È Partito il soft fork per laumento del block size October 31, 2016, 07:18:18 AMLast edit: November 11, 2016, 06:19:11 PM by arulbero  #17 Quote from: bittaitaliana on October 30, 2016, 09:45:39 PMsi, ma quando parlate voi, a me serve un traduttore, ogni 5 parole devo andare a vedere su google il significato  non ti incazzare, ma spiegami anche sta cosa, quindi si continua ad utilizzare un solo bitcoin ? Nel senso, io avevo capito che con un hard fork ci sarebbero state due chanin diverse, quindi il btc rimaneva una cosa, il nuovo con blocchi più grandi altra cosa, con altro nome (come nel caso di ETH e ETC), con il soft fork cosa cambia?Provo un po a semplificare riassumendo quello che ho capito io.Premessa:  fork significa innanzitutto "divisione a causa del cambio di una regola nel protocollo bitcoin ", la questione è capire di che tipo di divisione si trattaLa differenza tra hard fork e soft fork si può sintetizzare nella seguente espressione:QuoteSoft forks make previously valid (or non standard) things invalid, hard forks make previously invalid things valid.I soft fork rendono non valide situazioni valide (o non standard) in precedenza, gli hard fork rendono valide cose che prima non erano valide.Esempio: soft fork:se diminuissimo la dimensione dei blocchi a mezzo mega, questo sarebbe un soft fork, in quanto non sarebbe più possibile minare un blocco da 1 mega come si faceva in precedenza;  in questo caso si passerebbe da una regola più permissiva (blocchi fino a 1 mega) a una meno permissiva (blocchi fino a 12 mega) --> si rendono non valide situazioni che prima erano consentite (ad esempio la generazione di un blocco da 750 kb)NB: si parla di soft fork poichè la divisione si crea soltanto a livello software, divisione tra chi ha software aggiornato e chi invece mantiene il software pre-fork (ma non avviene alcuna divisione della blockchain)                                       soft fork : vecchi client - nuovi clientchi mantiene un client vecchio (pre-soft fork, tipo Core 0.12.0 invece di Core 0.13.1 ad esempio) non si accorge nemmeno del cambio di regole; infatti se il vecchio client supporta e riconosce blocchi fino a 1 mega mentre i miner minano blocchi solo fino a 12 mega, questi nuovi blocchi (nuovi nel senso minati con le nuove regole) sono perfettamente validi anche agli occhi dei nuovi client, poichè se accetti un blocco fino a 1 mega a maggior ragione consideri valido un blocco da 200kb; se con il vecchio client provi a minare dei nuovi blocchi, quando ti capita di minare un blocco minore di 12 mega questo verrà accettato dal resto della rete, quando mini un blocco da 750 kb inspiegabilmente la rete lo rifiuterà chi ha un client aggiornato semplicemente evita di minare un blocco maggiore di 12 mega, e considera non valido un blocco da 750kb se gli arriva poichè conosce esplicitamente la nuova regola (ovviamente continua a considerare sempre validi tutti i blocchi pre-fork, le regole non si cambiano a posteriori).                                                                                    hard fork:  la blockchain si divide in 2 rami diversi  se aumentassimo invece la dimensione dei blocchi a due mega, questo sarebbe un hard fork, in quanto avremmo una situazione fino ad ora non valida (blocchi fino a due mega) che dora in poi diventa consentita. Qual è il problema dellhard fork? A differenza del soft fork, dove uno può decidere di mantenere il vecchio client senza apprezzabili controindicazioni, con un hard fork non è più possibile mantenere il vecchio client senza conseguenze, poichè questo ha delle regole di funzionamento più restrittive rispetto alle nuove; dopo il primo blocco minato maggiore di 1 mega, si creerebbe una suddivisione della blockchain (hard fork), in quanto i nuovi client e i vecchi client lavorerebbero con regole incompatibili. Di fatto si creano due rami, due set di regole diverse cioè due monete diverse da una.  Lidea di base del soft fork invece è quella di nascondere le modifiche ai vecchi client, in modo che questi vecchi programmi siano in grado di leggere ancora i nuovi dati (blocchi) senza neanche accorgersi delle modifiche; Azzardo un paragone informatico:BitCoin Core   --  Wordblocchi        --  documentise si immagina Bitcoin Core come fosse Word, un hard fork consiste nel creare una nuova versione del programma che realizza documenti in un formato illeggibile dalla versione precedente (di fatto si hanno due tipi di documenti, ad  esempio .doc e .docx <---hard fork); un soft fork invece consiste nel creare una nuova versione del programma che realizza documenti leggibili anche dalla versione precedente (quindi stesso formato) ma con qualche caratteristicatag in più che può essere sfruttata a dovere solo dal nuovo software ma non pregiudica lutilizzo da parte di quello vecchio. In questo caso non ci sono due formati di documenti (no hard fork), ma semplicemente due versioni di programma che creano e leggono lo stesso formato di documento (soft fork).                                     il soft fork di Segregated Witness (segwit) Cosa succederà (se succederà) con il soft fork di segwit? I blocchi saranno sempre di 1 mega (solo per le vecchie versioni di Core per retrocompatibilità) ma si usa un "trucco" per inserire delle transazioni apparentemente "alleggerite" (con una parte di byte - la firma "witness" - "segregata" che viene allocata "altrove", cioè in un nuovo campo separato della transazione). Si tratta di un trucco poichè i vecchi client non capiranno esattamente che cè solo una parte della transazione e non tutta (loro non scaricano quel campo nuovo, il nuovo "tag" delle transazioni witness) e soprattutto poichè la reale dimensione dei blocchi aumenterà per i nuovi client, anche se essa verrà calcolata in un nuovo modo; questo fatto ha contribuito a suscitare molte polemiche, si tratta infatti di un soft fork che si propone di realizzare qualcosa che dovrebbe poter essere fatto in teoria solo con un hard fork, e cioè rendere valide situazioni - come i blocchi più grandi - in precedenza non permesse. Si riesce a fare ciò poichè una parte delle transazioni - le firme segregate - non viene considerata più come il resto delle transazioni, e il loro peso in byte viene scontato del 100% per i vecchi client, che neanche le scaricano, e del 75% per i nuovi client, per i quali alla fine il conto virtuale rimane di 1 mega a blocco, ma si tratta appunto solo di un calcolo virtuale.  Più tecnicamente il nuovo tipo di transazioni appariranno, almeno ai vecchi nodi, transazioni del tipo "ANYONE CAN SPEND"; infatti i vecchi nodi non riusciranno più a interpretare i nuovi comandi che vincolano i bitcoin nel campo scriptPubKeys e di conseguenza questi btc appariranno a loro non vincolati a nessun indirizzo; questo fatto si rende necessario poichè questi vecchi nodi dovranno accettare e considerare valide anche le nuove transazioni (presenti nei blocchi futuri della blockchain) che poi spenderanno questi bitcoin, e poichè essi non saranno più in grado di vedere le firme segregate in un altro campo, lunico modo affinchè possano considerare regolare (anche se non standard) una transazione che spenda questi bitcoin consiste nel non considerarli vincolati affatto (cioè nel considerarli già svincolati in partenza quindi):Quotefrom the perspective of Bitcoin nodes that dont use Segregated Witness (lets call them “old nodes”), some newly created outputs might soon use a strange type of scriptPubKeys. Strange, because these scriptPubKeys can hardly be considered a lock at all. Commonly referred to as an “Anyone can spend,” these scriptPubKeys basically proclaim they dont require a signature. Additionally, they will include some meaningless text(questa è la "nuova" feature incomprensibile ai vecchi nodi).Old nodes will consider these transactions crazy. They will think that anyone can create a new scriptSig, unlocking these outputs, meaning theyre highly insecure. But at the same time, old nodes wont mind either. After all, its not their bitcoin thats being messed around with, and other people are free to do with their bitcoin as they please. The meaningless text will be considered weird, but fine too. So theyll confirm the transactions as valid.both old nodes and new nodes will consider transactions containing signatures in the Segregated Witness valid. Old nodes validate them because from their perspective these transactions dont require a signature at all (and they dont see one), and new nodes validate them because the required signature is in the Segregated Witness.However, Segregated Witness-enabled nodes (lets call them “new nodes”) will notice something else. They will see the otherwise meaningless text in the scriptPubKey, but not consider it meaningless at all. Instead, new nodes will recognize this piece of text as another – very special – type of output.Much like typical outputs, this new type of output will require one or several signatures to unlock the bitcoin. But unlike typical outputs, this new type of output will not require the signature to be included in the scriptSig of a subsequent transaction. Instead, it will require the signature to be included in a completely new part of the transaction: the Segregated Witness.This Segregated Witness is basically an “add-on” that carries signatures and some additional data. Importantly, Segregated Witnesses are completely ignored by old nodes, but recognized by new nodes.Per essere pignoli cosa succederà a chi non aggiornerà il suo walletclient? Quando questi dovesse ricevere una transazione  del nuovo tipo (diciamo "alleggerita") il suo vecchio client la etichetterà come non standard (le transazioni possono essere valide, non valide, non standard; non standard significa: non capisco bene cosa sia anche se non viola nessuna regola da me conosciuta). Poichè le transazioni non standard non possono essere create nè inoltrate, di fatto il suo client non la accetterà quando la vedrà per la prima volta nello stato di transazione non confermata, mentre quando la rivedrà allinterno di un blocco minato le accetterà (così funzionano le transazioni non standard, non si facilita il loro uso ma neanche si rifiutano in toto).Quindi chi non aggiorna non vedrà subito (dal suo client) la transazione non confermata ma dovrà aspettare che questa abbia almento una conferma (sia inclusa in un blocco) per vederla apparire nel suo programma.fonti: s:bitcoincore.orgen20160126segwit-benefitss:bitcoinmagazine.comarticlessegregated-witness-officially-introduced-with-release-of-bitcoin-core-1477611260QuoteThere are more than two possible states, invalid or valid. Transactions can also be non-standard meaning nodes will not create, relay, or mine them. But if they happen to (somehow) show up in a block, theyll accept them.  In effect, a non-standard transaction is one doing something that a node knows it doesnt fully understand, but still doesnt break the rules... so it wont facilitate it but it also wont reject it.The community developed softforks in modern times take the form of only making things invalid which were already non-standard. So no transactions by users who do not upgrade will be made invalid.EDIT: se vi serve solo sapere come comportarvi in questo soft fork e comequando aggiornare (sia che siate un miner, un full node, o un semplice utente) queste sono le istruzioni: Re: È Partito il soft fork per laumento del block size October 31, 2016, 06:24:56 PM  #18 Arulbero non ho capito se hai scritto tu quel msg oppure se lo hai tradotto dal sito indicato sotto , ma comunque sia ti ringrazio se lo hai trdotto, ma se lo hai scritto tu dovresti metterti a scrivere libri sul bitcoin per principianti, perchè finalmente ho capito tutto Re: È Partito il soft fork per laumento del block size October 31, 2016, 09:10:00 PM  #19 Dove vengono memorizzate le informazioni che non compaiono in blockchain legate al segwit? Re: È Partito il soft fork per laumento del block size November 01, 2016, 06:20:36 AMLast edit: November 01, 2016, 05:50:20 PM by arulbero  #20 Quote from: bittaitaliana on October 31, 2016, 06:24:56 PMArulbero non ho capito se hai scritto tu quel msg oppure se lo hai tradotto dal sito indicato sotto , ma comunque sia ti ringrazio se lo hai trdotto, ma se lo hai scritto tu dovresti metterti a scrivere libri sul bitcoin per principianti, perchè finalmente ho capito tutto  Ho preso alcune cose dai link indicati e poi ho rielaborato, se hai capito lo scopo è stato raggiunto. Daltronde per deformazione professionale tendo a rielaborare i concetti, semplificarli e spiegarli a qualcuno per capire meglio anchio (così fanno di solito quelli che fanno il mio mestiere )Quote from: picchio on October 31, 2016, 09:10:00 PMDove vengono memorizzate le informazioni che non compaiono in blockchain legate al segwit?Bisogna scendere proprio nei dettagli dellimplementazione del BIP 141142 e nel come è fatta una transazione.Ogni transazione contiene due componenti principali. La prima sblocca i bitcoin che erano vincolati in transazioni precedenti (UTXO : Unspent Transaction Output), e per fare questo si usano dei dati detti "input".  Gli input includono uno o più script, cioè delle istruzioni su come sbloccare gli UTXO, questi script si chiamano "scriptSig".Laltra parte della transazione consiste in uno o più nuovi "lucchetti" detti output, i quali ribloccano la stessa quantità (o meno) di bitcoin; gli output includono script detti "scriptPubKeys".Le istruzioni per sbloccare i bitcoin lavorano su una firma e sulla chiave pubblica relativi allindirizzo mittente,le istruzioni sul blocco dei bitcoin (i lucchetti) vincolano i bitcoin allindirizzo del destinatario. In questo modo i bitcoin effettivamente si muovono dagli input agli output allinterno di una singola transazione (vengono svincolati e rivincolati allo stesso tempo), e così "passano" istantaneamente da una transazione allaltra (e da un address allaltro, cioè da un vincolo a un altro). Che differenza cè tra una transazione normale e una transazione segwit?In sostanza si operano  due cambiamenti nella transazione. 1) la firma (con la chiave pubblica del mittente) viene spostata dal campo "scriptSig" a un nuovo campo "witness" (che è sempre un campo della transazione!); questo vuol dire "segregated witness", firma separata (segregata in un campo della transazione che non verrà incluso nellhash della transazione, cioè non impatterà sulla txid) 2) il testo del campo "scriptPubKey" viene modificato in modo che abbia due significati diversi per un vecchio nodo e per un nuovo nodo (ecco il soft fork!); NB: in quel campo rimane sempre la condizione che blocca i bitcoin (i bitcoin vengono bloccati con lindirizzo del ricevente, ovvero i fondi vengono vincolati alla chiave pubblica che genera lindirizzo del ricevente); in questo caso la condizione di blocco diventa per il vecchio nodo un "non vincolo", cioè un generico "ANYONE CAN SPEND" (un output solo apparentemente non vincolato a nessun indirizzo e quindi spendibile da chiunque) poichè il vecchio nodo non legge i nuovi indirizziscript "pay-to-witness-public-key-hash" P2WPKH (per ulteriori dettagli vedi in fondo al post ), mentre per i nuovi nodi che conoscono i nuovi indirizzi e il nuovo modo di interpretare quei dati si tratta sempre di una transazione che manda dei bitcoin a un indirizzo precisoQuoteStandard Transaction to Bitcoin address (pay-to-pubkey-hash) P2PKHscriptSig: scriptPubKey: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIGQuoteWitness Transaction (pay-to-witness-public-key-hash) P2WPKHThe following example is a version 0 pay-to-witness-public-key-hash (P2WPKH):    witness:         <-- in questo campo vengono trasferiti la firma e la chiave pubblica  del mittente     scriptSig:    (empty)                           <-- questo campo viene svuotato della firma e della chiave pubblica del mittente    scriptPubKey: 0 <20-byte-key-hash>          <-- il significato di questo campo viene spiegato in fondo al post                  (0x0014{20-byte-key-hash})The 0 in scriptPubKey indicates the following push is a version 0 witness program. The length of the witness program indicates that it is a P2WPKH type. The witness must consist of exactly 2 items. The HASH160 of the pubkey in witness must match the witness program.The signature is verified as     CHECKSIGComparing with a traditional P2PKH output, the P2WPKH equivalent occupies 3 less bytes in the scriptPubKey, and moves the signature and public key from scriptSig to witness. I vecchi client non vedono proprio il nuovo campo "witness" (essi scaricano i blocchi depurati dal campo "witness"), i nuovi sì. Quando si fa lhash della transazione però per creare il suo ID (txid), il campo "witness" non viene incluso (questo fatto sistema la questione della malleabilità). Quindi nella blockchain quel campo (la firma) in realtà cè (anche se un nodo a cui non interessa fare una validazione completa può fare il pruning di quel campo), sicuramente non cè però (non viene considerata) nellhash della transazione (txid). Questultimo fatto di per sè renderebbe la parte "witness" lunica parte della blockchain potenzialmente modificabile, in quanto svincolata dalla txid e di conseguenza dallhash del blocco che a sua volta dipende dallhash delle transazioni che contiene; per ovviare a questo fatto viene costruito un altro Merkle Tree e di conseguenza ricavato un Merkle Root relativo solo ai campi "witness" di tutte le transazioni del blocco, e questultimo dato viene infine inserito nel campo di input della coinbase del blocco (in questo modo cambia lID solo di quella transazione ma questo è sufficiente per modificare lhash del blocco,  di conseguenza la presenza di ogni campo witness del blocco viene fissata per sempre anche nellhash del blocco stesso, ma ripeto non nellhash della transazione.) In sostanza le firme vengono collegate (dal punto di vista della verifica della consistenza della blockchain) per sempre al blocco tramite il suo hash, mentre rimangono scollegate dalla txid della transazione a cui appartengono, e questo porta diversi vantaggi dal punto di vista tecnico (ad esempio finora per ricostruire il database degli UTXO bisogna identificare gli input delle transazioni facendo riferimento a una txid che dipende a sua volta dalla firma, ma la firma dovrebbe servire solo ad autorizzare una transazione, non a identificarla!  Con le transazioni witness la firma manterrà solo la sua funzione specifica e non creerà ulteriore lavoro inutile per identificare gli input).QuoteSignatures for historical transactions may be less interesting than signatures for future transactions – for example, Bitcoin Core does not check signatures for transactions prior to the most recent checkpoint by default, and some SPV clients simply don’t check signatures themselves at all, trusting that has already been done by miners or other nodes. At present, however, signature data is an integral part of the transaction and must be present in order to calculate the transaction hash.Segregating the signature data allows nodes that aren’t interested in signature data to prune it from the disk, or to avoid downloading it in the first place, saving resources.Quale sarà allora la dimensione di ogni blocco?Esso potrà contenere delle transazioni purchè sia rispettata questa disequazione:lo spazio occupato dalla parte "standard" delle transazioni (senza contare il campo witness) + 14 dello spazio occupato dal campo witness delle stesse transazioni <= 1 MegaQuoteSince old nodes will only download the witness-stripped block, they only enforce the 1 MB block size limit rule on that data. New nodes, which understand the full block with witness data, are therefore free to replace this limit with a new one, allowing for larger block sizes. Segregated witness therefore takes advantage of this opportunity to raise the block size limit to nearly 4 MB, and adds a new cost limit to ensure blocks remain balanced in their resource use (this effectively results in an effective limit closer to 1.6 to 2 MB).In questo modo quindi la dimensione del blocco può (e lo farà) superare tranquillamente 1 Mega per i nuovi client (si stima possa arrivare a 1,52 Mega effettivi?) mentre i vecchi nodi scaricheranno sempre meno di 1 Mega (poichè essi non vedono il "witness").Il fatto di considerare solo 14 del peso del witness (cioè delle firme) mira a favorire luso del sigwit, pochè esso porta molti vantaggi (ad esempio il fatto che la ID di una transazione non dipenda più da "scriptSig" rende più facile ricostruire linsieme degli UTXO mentre finora bisognava scaricare anche le firme solo per ricostruire le txid; lelenco completo dei vari vantaggi si trova qui s:bitcoincore.orgen20160126segwit-benefits)QuoteThe Unspent Transaction Output (UTXO) database is maintained by each validating Bitcoin node in order to determine whether new transactions are valid or fraudulent. For efficient operation of the network, this database needs to be very quick to query and modify, and should ideally be able to fit in main memory (RAM), so keeping the database’s size in bytes as small as possible is valuable.Segwit improves the situation here by making signature data, which does not impact the UTXO set size, cost 75% less than data that does impact the UTXO set size. This is expected to encourage users to favour the use of transactions that minimise impact on the UTXO set in order to minimise fees, and to encourage developers to design smart contracts and new features in a way that will also minimise the impact on the UTXO set.Because segwit is a soft-forking change and does not increase the base blocksize, the worst case growth rate of the UTXO set stays the futuro quindi potremo finalmente liberarci di giga di firme non più necessarie (solo quelle nel campo witness però! non quelle tradizionali che sono legate alle txid e quindi sono necessarie per ricostruire il database degli UTXO), come afferma lo stesso Pieter Wuille, il promotore di questo soft fork:QuoteWe all know how bitcoin transactions work. Every bitcoin transaction gets inputs, which refer to previous outputs being spent. Every input has the txid and the signature to prove that it is allowed, plus an amount and script in every output. What this presentation will mostly be about is the question of whether all of this data is equally particular, we are going to be talking about signatures. Its important to realize here that signatures are really only needed for fully-validating nodes. As a light-weight client, you are not validating signatures, even though they are part of the transactions you still have to download them. If you are using a full-node that is syncing historical data, you dont actually validate all of the signatures in there. Currently there is a mechanism in there using checkpoints, which we want to deprecate soon, but the result will still be that were not validating all signatures from years ago in deep history.These signatures are only needed at time of validation. They dont go into the UTXO set, the database of all unspent coins. These unspent transaction outputs dont enter into the UTXO set. This is a significant cost on the resources of both keeping a node running but also the speed of propagation and access to the UTXO set needs to be fast. Of all the data in a transaction, signatures dont go into the UTXO set, even though they account for 60% of the blockchain data. Segregated witness is about ignoring this whenever possible.Where does the name witness come from? For now, its motsly a word to refer to the scriptSig in inputs or signatures inside transactions. Later I will extend this meaning. The reason for this name is because signatures are not part of the transaction. They dont describe what the transaction is doing. The only thing they are doing is proving that the transaction is authorized by the previous owners of the coins. There are usually multiple possible valid signature for the same transaction. We dont really care what the signature is, all we care about is that at least one signature for that existed. Such an example of where something exists is known as a witness.Wouldnt it be nice to just drop the signatures? The reason why we cant do this is because the signature is part of the transaction hash. If we would just drop the sig from the transaction, the block wouldnt validate, you wouldnt be able to prove an output spend came from that transaction, so thats not something we could do. But lets simplify the problem. What if we could redesign Bitcoin from scratch? What if youre designing an altcoin, theres really no reason why you would want to do this in Bitcoin. This is actually something we did in sidechain alpha.You would mark the signature data as special. You are indicated by green color on this slide. Everything but the green part goes into the hash of a transaction. The signature doesnt. Its just a piece of data thats still there, but we dont consider it part of the transaction.What are the advantages of this? It allows you to drop the signatures from relay whenever you are relaying to a node that is not actually doing full-validation at the time. It also allows us to effectively prune this data from history, maybe were fine with not all nodes in the network actually maintaining these gigabytes of signatures that are buried under years of proof-of-work now.fonti: s:diyhpl.uswikitranscriptsscalingbitcoinhong-kongsegregated-witness-and-its-impact-on-scalabilitys:bitcoinmagazine.comarticlessegregated-witness-part-how-a-clever-hack-could-significantly-increase-bitcoin-s-potential-1450553618s:bitcoinmagazine.comarticlessegregated-witness-part-why-you-should-care-about-a-nitty-gritty-technical-trick-1450827675s:github.combitcoinbipsblobmasterbip-0141.mediawiki#Exampless:github.combitcoinbipsblobmasterbip-0142.mediawikiQuoteExampleThe following public key,    0450863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B23522CD470243453A 299FA9E77237716103ABC11A1DF38855ED6F2EE187E9C582BA6 when encoded as a P2PKH template, would become:   <--  normale transazione    scriptPubKey:  DUP HASH160 <010966776006953D5567439E5E39F86A0D273BEE> EQUALVERIFY CHECKSIGWith the corresponding version 1 Bitcoin address being:    16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM      When the same public key is encoded as P2WPKH, the scriptPubKey becomes:  <--   transazione con firma separata (segwit)      scriptPubKey: OP_0 <010966776006953D5567439E5E39F86A0D273BEE>    Using 0x06 as address version, followed by 0x00 as witness program version, and a 0x00 padding, the equivalent P2WPKH address is:    p2xtZoXeX5X8BP8JfFhQK2nD3emtjch7UeFmQuotescriptPubKey: OP_0 <010966776006953D5567439E5E39F86A0D273BEE>  scriptPubKey: 0 <20-byte-key-hash>                  (0x0014{20-byte-key-hash})Its a data push that contains the witness program hash, prepended by OP_0.Old nodes will evaluate this as a script that just pushes two data items onto the stack (a 0 and a hash). Thats obviously spendable by all, as the requirement is having a non-zero item as last element on the stack.The 0 in scriptPubKey indicates the following push is a version 0 witness program. The length of the witness program indicates that it is a P2WPKH type. The witness must consist of exactly 2 items wallet su pc e cellulare December 15, 2016, 06:19:10 PM  #1 Sto prendendo in considerazione lidea di scegliere uno di questi due wallet (Copay eo Electrum) e non capisco una cosa:pensavo di scaricare la versione PC, ma ho visto cè cè anche la versione per cellulare, se le installo entrambe in quel caso come si integrano tra di loro PC e cellulare? Le chiavi sono su entrambi i dispositivi o solo sul pc dove ho inizializzato il wallett? Dal cellulare cè operatività piena o è solo per controllare invio e ricezione di BTC?E soprattutto, ha un senso prendere in considerazione lidea di fare linstallazione su due dispositivi? Re: wallet su pc e cellulare December 15, 2016, 06:21:21 PM  #2 Se vuoi tenere lo stesso wallet su entrambi i dispositivi (che comunque, a meno che non si trattino di piccole somme, non è una buona idea), ti basterà installare prima uno su un dispositivo, e sullaltro invece di crearne uno nuovo, fare limportazione. Re: wallet su pc e cellulare December 15, 2016, 06:31:25 PM  #3 Capisco, allora per sicurezza meglio due wallet separati tra cui eventualmente fare movimenti. Qualè la tua opinione sui wallet da cellulare (si parla di piccole cifre 0,1 - 0,2 BTC al massimo), ed eventulamente quale consigli? Re: wallet su pc e cellulare December 15, 2016, 06:31:52 PM  #4 Copay va benone. Re: wallet su pc e cellulare December 15, 2016, 06:45:51 PM  #5 Quote from: HostFat on December 15, 2016, 06:31:52 PMCopay va benone.Ottimo, allora attiverò Electrum su PC e Copay su cellulare.grazie Re: wallet su pc e cellulare December 15, 2016, 06:48:46 PM  #6 Ottimo.Imparare anche ad usare wallet differenti aiuta a comprendere meglio il funzionamento del bitcoin .) Video presso Assemblea Gruppo Giovani Imprenditori di Pordenone December 10, 2016, 09:05:18 PM  #1 Sembra che i video siano apprezzati. Eccovene dunque due freschi freschi che ho appena trovato.Interventi presso lAssemblea Gruppo Giovani Imprenditori di Pordenone:s:youtube.comwatch?v=FC7JX1eTTD8s:youtube.comwatch?v=7ORMIjGXTvUCiao! Re: Video presso Assemblea Gruppo Giovani Imprenditori di Pordenone December 12, 2016, 12:01:18 PM  #2 Non so se cè una sezione "Video" dove poter postare queste segnalazioni. Casomai ditemelo, eh? ?!? Re: Video presso Assemblea Gruppo Giovani Imprenditori di Pordenone December 12, 2016, 12:59:06 PM  #3 Quote from: MarioV on December 12, 2016, 12:01:18 PMNon so se cè una sezione "Video" dove poter postare queste segnalazioni. Casomai ditemelo, eh? ?!?Il li metterei anche in s:bitcointalk.orgindex.php?topic=924937 perché sono interessanti. Re: Video presso Assemblea Gruppo Giovani Imprenditori di Pordenone December 14, 2016, 06:19:03 PM  #4 Belli sti video, grazie per la condivisione. Cè un thread con altri video? Tipo quello delle news? Blockchainopoli December 13, 2016, 11:34:41 PMLast edit: December 14, 2016, 12:18:29 AM by HostFat  #1 QuoteBlockchainopolyNuovo gioco del piccolo anarcocapitalista!Il primo gioco che mischia la realtà con il "virtuale" (...), in un turbine fra le forze economiche e politiche presenti nel mondo vero!!!Costa solo 49.90 euro! (ma anche opzioni più scontante o più costose)E possibile anche giocare su più livelli, dal più facile al più ostico, comprando varie espansioni ( comunque rivendibili ad altri giocatori)E possibile scegliere a che livello iniziare, partendo dal più facile in cima, via via scendendo ai più ostici e praticamente impossibili: comunità dei videogiocatori è veramente molto ampia e sempre piena di sorprese.Entra anche tu nel mondo di Blockchainopoly!Le serate con gli amici non saranno più le stesse, i vostri pensieri non saranno più gli stessi e le notti insonni non mancheranno!Attenzione a non esagerare, laccumulo esagerato di punti può portare allaggravamento della vostra salute.Si consiglia di staccare ogni tanto e godersi i risultato dei punti raccolti nelle precedenti partite.Avete qualche altra idea per rendere più interessante o divertente questo promo? Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:23:56 PM  #1 Buongiorno, forse qualcuno può darmi una mano. Ho installato Bitcoin Core e stavo attendendo la sincronizzazione per visualizzare i bitcoin che ho ricevuto. Ieri sera ho lasciato il computer acceso che era a circa 50 settimane, oggi pomeriggio, sono andato a vedere se aveva finito ma è comparsa la scritta "Errore durante la lettura del database". E quindi chiude automaticamente il programma. Ero arrivato circa a 40 settimane. Se lo riapro prova a sincronizzare ma mi da sempre Errore. Ora sto facendo un back up dei file nella cartella Bitcoin. Avete qualche indicazione da darmi? Grazie Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:26:24 PM  #2 Hai scelto Core per qualche motivo particolare fra le varie scelte?Nel caso, no, cioè hai fatto una scelta casuale, ti consiglierei uno di questi altri due client, che non devi scaricare tutta la blockchain:- Electrum- Copay Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:35:53 PM  #3 Ciao, grazie, lho scelto perché sul sito ufficiale bitcoin mi diceva che era il sistema più sicuro. In effetti è stato piuttosto casuale. Ma ora su questi client che mi suggerisci posso aprire il mio indirizzo e ricevere lì i bitcoin, cioè posso visualizzare i bitcoin che ho già ricevuto? Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:36:15 PM  #4 Si, e inviare a tutti gli altri. Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:43:06 PM  #5 Ho installato Electrum Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 02:57:16 PM  #6 Ma posso qui importare il mio indirizzo per visualizzare i bitcoin? O sono costretto ad adottare un nuovo indirizzo e perdo i bitcoin? Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 03:12:10 PM  #7 Ah, se hai già trasferito dei Bitcoin su Bitcoin Core, dovrai aspettare che finisca di sincronizzazarsi. Re: Errore durante sincronizzazione con bitcoin core December 03, 2016, 04:09:37 PM  #8 Quote from: Aleksej6 on December 03, 2016, 02:23:56 PMBuongiorno, forse qualcuno può darmi una mano. Ho installato Bitcoin Core e stavo attendendo la sincronizzazione per visualizzare i bitcoin che ho ricevuto. Ieri sera ho lasciato il computer acceso che era a circa 50 settimane, oggi pomeriggio, sono andato a vedere se aveva finito ma è comparsa la scritta "Errore durante la lettura del database". E quindi chiude automaticamente il programma. Ero arrivato circa a 40 settimane. Se lo riapro prova a sincronizzare ma mi da sempre Errore. Ora sto facendo un back up dei file nella cartella Bitcoin. Avete qualche indicazione da darmi? Graziese non hai motivi particolari non usare core.leggi questo prima di fare altri errori: s:bitcointalk.orgindex.php?topic=1241459.0 Re: Errore durante sincronizzazione con bitcoin core December 12, 2016, 01:41:50 PM  #9 puoi avere il tuoi indirizzi privati su più client, io avevo gli stessi indirizzi sul core multibit ed electrum. Per me puoi tranquillamente esportarti le chiavi privare e importarle dove vuoi.Se con il core hai problemi a esportarle, visto che ogni tanto sembra avere problemi puoi usare questos:bitcointalk.orgindex.php?topic=1620625.0Se hai cifre importanti pero attenzione che nello stesso istante in cui nel tuo computer viene visualizzata la chiave privata, potenzialmente qualcuno potrebbe rubartela con tutti i bitcoin che ci sono sopra.  Io uso ancora il core, pero ogni tanto mi faccio un bel backup in formato rar di tutta la Blockchain. In caso si dovesse corrompere qualcosa ripristino il backup. SOno comunque 70 80 giga persi per la Blockchain e altrettanti per il backup Re: Errore durante sincronizzazione con bitcoin core December 12, 2016, 06:08:16 PM  #10 Quote from: nutriagrigia on December 12, 2016, 01:41:50 PMpuoi avere il tuoi indirizzi privati su più client, io avevo gli stessi indirizzi sul core multibit ed electrum. Per me puoi tranquillamente esportarti le chiavi privare e importarle dove vuoi.Questa tecnica è spesso utilizzata con i wallet che non deterministici , che non hanno seed. Per avere accessibilità al wallet sia da PC che smartdevices, per esempio si può movimentare lo stesso address con Multibit su PC e Mycellium su tablet Cambiare client + traferimento bitcoin December 04, 2016, 03:00:00 PM  #1 Ciao a tuttiho cercato dei topic simili ma non ho trovato risposta.Da quando ho iniziato ad usare bitcoin, circa 3 anni fa, uso bitcoin qt come wallet ma è diventato davvero troppo lento e anche lo spazio che occupa è enorme (ad oggi circa 35gb di spazio). Vorrei cambiare client, mi confermate che il migliore al momento è Electrum? Quanto spazio occupa questo client quando scarica la chain?Come posso fare per trasferire tutti i bitcoin da bitcoin qt ad Electrum?Grazie Re: Cambiare client + traferimento bitcoin December 04, 2016, 03:26:23 PM  #2 Quote from: sottoscritto on December 04, 2016, 03:00:00 PMCome posso fare per trasferire tutti i bitcoin da bitcoin qt ad Electrum?Tutti i client bitcoin appena usati creano un nuovo wallet con degli indirizzi bitcoin che puoi usare come indirizzo di arrivo, fai un semplice pagamento dal bitcoin qt al tuo nuovo wallet. Re: Cambiare client + traferimento bitcoin December 04, 2016, 04:27:12 PM  #3 non è possibile spostarli senza effettuare un pagamento? Re: Cambiare client + traferimento bitcoin December 04, 2016, 04:36:35 PM  #4 Quote from: sottoscritto on December 04, 2016, 04:27:12 PMnon è possibile spostarli senza effettuare un pagamento? Potresti passare la priv key (export da Bitcoin-qt -> import su Electrum) senza movimentare laddress. Per fare queso devi creare su electrum un wallet specifico (non deterministico). Oppure spendere qualche spicciolo in fee per cambiare laddress facendo un invio dal wallet su Bitcoin-qt ad un address (ricevi) di electrum Re: Cambiare client + traferimento bitcoin December 04, 2016, 05:21:25 PM  #5 Quote from: ParmaBTC on December 04, 2016, 04:36:35 PMQuote from: sottoscritto on December 04, 2016, 04:27:12 PMnon è possibile spostarli senza effettuare un pagamento? Potresti passare la priv key (export da Bitcoin-qt -> import su Electrum) senza movimentare laddress. Per fare queso devi creare su electrum un wallet specifico (non deterministico). Oppure spendere qualche spicciolo in fee per cambiare laddress facendo un invio dal wallet su Bitcoin-qt ad un address (ricevi) di electrum quindi se ho ben cabito posso semplicemente esportare il file wallet.dat da bitcoinqt e importare lo stesso file su electrum? Re: Cambiare client + traferimento bitcoin December 05, 2016, 03:52:50 PM  #6 Lascio la risposta agli esperti di wallet.dat. Asentimento non dovrebbe essere possibile sostituire un wallet.dat con laltro. Dovresti procedere con esporta priv key e poi importa nellaltro wallet Re: Cambiare client + traferimento bitcoin December 05, 2016, 10:26:54 PM  #7 Quote from: ParmaBTC on December 05, 2016, 03:52:50 PMLascio la risposta agli esperti di wallet.dat. Asentimento non dovrebbe essere possibile sostituire un wallet.dat con laltro. Dovresti procedere con esporta priv key e poi importa nellaltro walletok grazie, aspettiamo altre risposte Re: Cambiare client + traferimento bitcoin December 06, 2016, 07:32:50 AM  #8 in teoria puoi semplicemente esportare la chiave privata e importarla in electrumio stesso ho fatto cio per importare un vanity address quindi penso che questo sistema sia fattibileesporti la chiave privata dellindirizzo con i soldi e la importi in electrum.. almeno io farei cosi Re: Cambiare client + traferimento bitcoin December 06, 2016, 09:51:46 PM  #9 Quote from: babo on December 06, 2016, 07:32:50 AMin teoria puoi semplicemente esportare la chiave privata e importarla in electrumio stesso ho fatto cio per importare un vanity address quindi penso che questo sistema sia fattibileesporti la chiave privata dellindirizzo con i soldi e la importi in electrum.. almeno io farei cosiovviamente per esportare la chiave devo attendere che finisca tutto il download della chain su bitconi qt giusto?Poi come posso espostareimportare la chiave privata?grazie Re: Cambiare client + traferimento bitcoin December 06, 2016, 10:04:45 PM  #10 in teoria no, puoi esportarlo in qualsiasi momento.. la chiave privata fa parte dellindirizzo non della blockchaingli altri veterani del forum cosa dicono? Re: Cambiare client + traferimento bitcoin December 07, 2016, 01:48:13 PM  #11 Quote from: babo on December 06, 2016, 10:04:45 PMin teoria no, puoi esportarlo in qualsiasi momento.. la chiave privata fa parte dellindirizzo non della blockchaingli altri veterani del forum cosa dicono?Questo scenario era già stato esposto in precedenza. Si chiedeva se il wallet.dat è compatibile ai due diversi wallet. A naso direi di no anche perchè con electrum ci sono tipi di wallet non presenti in bitcoin-qt Re: Cambiare client + traferimento bitcoin December 08, 2016, 09:43:24 PM  #12 Quote from: ParmaBTC on December 07, 2016, 01:48:13 PMQuote from: babo on December 06, 2016, 10:04:45 PMin teoria no, puoi esportarlo in qualsiasi momento.. la chiave privata fa parte dellindirizzo non della blockchaingli altri veterani del forum cosa dicono?Questo scenario era già stato esposto in precedenza. Si chiedeva se il wallet.dat è compatibile ai due diversi wallet. A naso direi di no anche perchè con electrum ci sono tipi di wallet non presenti in bitcoin-qtquindi lunica cosa è esportare la chiave privata da bitcoin core e importarla in Electrum.Come posso esportare da bitcoin ore ed importare la chiave in electrum?ho cercato nel forum ma non risco a capire quale sia la procedura correttagrazie Re: Cambiare client + traferimento bitcoin December 08, 2016, 11:20:51 PM  #13 Quote from: sottoscritto on December 08, 2016, 09:43:24 PMCome posso esportare da bitcoin ore ed importare la chiave in electrum?Vai nella shell di bitcoin core dove si possono dare i comandi e dai il comando:dumpprivkeyssu Electrum basta dare un:importprivkeyo forse è meglio uno sweepGli esperti di electrum diranno... Re: Cambiare client + traferimento bitcoin December 09, 2016, 02:58:11 PM  #14 Quote from: Sandro kensan on December 08, 2016, 11:20:51 PMQuote from: sottoscritto on December 08, 2016, 09:43:24 PMCome posso esportare da bitcoin ore ed importare la chiave in electrum?Vai nella shell di bitcoin core dove si possono dare i comandi e dai il comando:dumpprivkeyssu Electrum basta dare un:importprivkeyo forse è meglio uno sweepGli esperti di electrum diranno...Non mi ritengo esperto, ma ti posso dire che:su electrum la importprivkey va fatto in un wallet creato appositamente e si avranno solo quegli address disponibili più eventuali address per il restolo sweep può essere fatto su qualsiasi wallet , ma questo è una transazione a tutti gli effetti, fee da pagareA seconda della bisogna si può decidere come procedere Re: Cambiare client + traferimento bitcoin December 09, 2016, 03:16:31 PM  #15 Quote from: ParmaBTC on December 09, 2016, 02:58:11 PMNon mi ritengo esperto, ma ti posso dire che:su electrum la importprivkey va fatto in un wallet creato appositamente e si avranno solo quegli address disponibili più eventuali address per il restoMi scuso per intromettermi in un 3ad dedicato a unaltra questione ma io ho creato un wallet apposito come dici tu e ho "importato" due chiavi private e quindi ha come dici tu gli "address disponibili". I miei dubbi riguardano "gli eventuali address per il resto". Cioè se io faccio una transazione con Multibit il resto mi va a finire sugli "address disponibili" e non vengono creati nuovi address per il resto. Su Electrum vengono creati nuovi address per ogni nuova transazione al fine di immagazzinare il resto? Job for an Italian marketeer November 08, 2016, 06:18:39 PMLast edit: July 05, 2018, 10:27:13 AM by coinmixer.se  #1 job is no longer available. Re: Job offer for an Italian speaking marketeer November 30, 2016, 05:53:02 PM  #2 Sounds good, ill send you a pm. im interested .. your proposal is nice, but i dont know if my role is right for this.Im waiting your answer. Re: Job offer for an Italian speaking marketeer December 06, 2016, 03:41:00 PM  #3 Quote from: coinmixer.se on November 08, 2016, 06:18:39 PMHello,we are running the CoinMixer.se - bitcoin mixing service:s:bitcointalk.orgindex.php?topic=1089301.0and we are looking for an Italian speaking marketeer. It works like this:1. The translatormarketeer creates an affiliate account and we bind his account to the new language (Italian for example). Therefore, he will get 50% of the commission from every participation in Italian version of the site.2. We provide a language file to the translator. He translates it and sends it back to us.3. The translatormarketeer promotes our service in the new language (forum posts, magazine articles, blog, etc.) and provides support for users which do not speak English.This is our affiliate program home page: you register and I change your account type to "Language Affiliate" you will see there some stats (how many participants used the Italian version and how much bitcoins you already earned). You may withdraw the bitcoins anytime. There is also no minimal amount you are allowed to withdraw.We can also sign PGP contract for 6 months if you want. After that period of time the terms will be renegotiated again.I dont know how big is the bitcoin market in Italian speaking countries, but according our experience from German market you could make 0.1BTC - 2BTC per month. It depends on market size and how good you are with marketing.Only requirement for this job is that you can speak Italian and understand English. If you are interested then please send me PM and we can discuss the terms further.Wrote you a long PM waiting for replies to my several questions. Inviare e ricevere bitcoin dallo stesso wallet December 03, 2016, 04:21:24 PM  #1 Ciao,ho necessità di un wallet bitcoin che possa inviare e ricevere transizioni usando sempre uno stesso uso Multibit HD e su cellulare la app di CoinBase, ma su entrambi mi sembra che lindirizzo di invio cambi ad ogni invio.Sapete dirmi una di queste due:- come posso controllare lindirizzo di invio sulle suddette applicazioni?- mi consigliate un wallet bitcoin per pc o android dove possa fare questa cosa e dove possa tenere con una certa tranquillità anche più di 1 bitcoin?grazieZK Re: Inviare e ricevere bitcoin dallo stesso wallet December 03, 2016, 04:54:51 PM  #2 io uso electrum e posso decidere da quale indirizzo inviare e in quale ricerverein teoria, non ho provato, puoi decidere anche lindirizzo del resto impara il mining di bitcoin

Comments

Popular posts from this blog

bitcoin

bitcoin

bitcoins