Pages:
Author

Topic: Proof Of Burn (Distruggere Bitcoin) - page 5. (Read 14530 times)

hero member
Activity: 658
Merit: 502
June 10, 2014, 09:56:38 AM
#40
Implementiamo una brute force pool Smiley ?
Potrebbe anche avere senso...


Se parliamo di Warp, ci può stare, ma più che una pool servirebbe un calcolo condiviso.

In realtà Warp usa scrypt ma nessuno si è preso la briga di sviluppare un codice che usi la GPU anzichè a la CPU. Questa potrebbe essere la chiave vincente.

Io purtroppo tutto quello che ho potuto fare è uno script in phyton che divida il lavoro tra i threads, su una macchina che ha 24 core riesco a verificare 13500 chiavi ogni mezz'ora. Dovrei studiarmi le kernel GPU, ma come detto prima sono full di roba in quest' ultimo periodo.




FaSan

7,5 chiavi al secondo. In pratica (sei calcoli che ho copia/incollato da una veloce ricerca su google sono giusti) ci dovresti mettere nel worst case 1 milione di anni.

Se ci distribuiamo il calcolo tra un milione di utenti ci mettiamo un anno.




Si ma 20 BTC diviso un milione fà 0.0002 BTC... chi ce lo fà fare ? Cheesy

1 Milione di anni se la password fosse l' ultima ovvero ZZZZZZZZ e se avessi impostato un sequenziale standard. In realtà consapevole dei tempi improbabili, ho modificato la sequenza delle password generate in modo da sperare nel fattore K. Se arriva bene, sennò pazienza, il server tanto ce l' ho in casa Smiley



FaSan
hero member
Activity: 484
Merit: 500
June 10, 2014, 09:53:52 AM
#39
Implementiamo una brute force pool Smiley ?
Potrebbe anche avere senso...


Se parliamo di Warp, ci può stare, ma più che una pool servirebbe un calcolo condiviso.

In realtà Warp usa scrypt ma nessuno si è preso la briga di sviluppare un codice che usi la GPU anzichè a la CPU. Questa potrebbe essere la chiave vincente.

Io purtroppo tutto quello che ho potuto fare è uno script in phyton che divida il lavoro tra i threads, su una macchina che ha 24 core riesco a verificare 13500 chiavi ogni mezz'ora. Dovrei studiarmi le kernel GPU, ma come detto prima sono full di roba in quest' ultimo periodo.




FaSan

7,5 chiavi al secondo. In pratica (sei calcoli che ho copia/incollato da una veloce ricerca su google sono giusti) ci dovresti mettere nel worst case 1 milione di anni.

Se ci distribuiamo il calcolo tra un milione di utenti ci mettiamo un anno.
hero member
Activity: 658
Merit: 502
June 10, 2014, 09:42:35 AM
#38
Implementiamo una brute force pool Smiley ?
Potrebbe anche avere senso...


Se parliamo di Warp, ci può stare, ma più che una pool servirebbe un calcolo condiviso.

In realtà Warp usa scrypt ma nessuno si è preso la briga di sviluppare un codice che usi la GPU anzichè a la CPU. Questa potrebbe essere la chiave vincente.

Io purtroppo tutto quello che ho potuto fare è uno script in phyton che divida il lavoro tra i threads, su una macchina che ha 24 core riesco a verificare 13500 chiavi ogni mezz'ora. Dovrei studiarmi le kernel GPU, ma come detto prima sono full di roba in quest' ultimo periodo.




FaSan
hero member
Activity: 484
Merit: 500
June 10, 2014, 09:41:06 AM
#37
Implementiamo una brute force pool Smiley ?
Potrebbe anche avere senso...

 Assuming that the password could only be numbers or letters (no special characters) and that lowercase letters are considered distinct from uppercase, you would have 62 possible characters in each space. For an 8 character password, that would be 62^8 combinations, or a little over 218 Trillion combinations. At one try per second, that would be 218 Trillion seconds, or 3.6 Trillion minutes, or 60 billion hours, or 2 Billion days, or just under 7 million years.

Secondo questi conti, con un tentativo al secondo ci si mette 7 milioni di anni.

Quanti tentativi al secondo fa il tuo bruteforce?

EDIT: volevo quotare FaSan!
legendary
Activity: 2450
Merit: 1008
June 10, 2014, 09:36:28 AM
#36
Implementiamo una brute force pool Smiley ?
Potrebbe anche avere senso...
hero member
Activity: 484
Merit: 500
June 10, 2014, 09:35:04 AM
#35
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan

Ho guardato il sito. Non ho capito come si partecipa.


WalletWarp è un sistema di codifica tipo BrainWallet, che sfrutta scrypt per trasformare la tua "password" in una chiave privata e quindi un address valido.

Se scorri in basso alla pagina vedrai che hanno già fatto una serie di bounties, già terminate, e l' ultima che è ancora valida. Si chiede di trovare la password di 8 cifre alfanumerica (numeri e lettere di cui le lettere maiuscole e minuscole) che genera l' address indicato.

Ovviamente non viene fornito nessun software, ma solo la funzione che viene utilizzata. Il resto te lo devi fare da solo... 20 BTC in palio Wink



FaSan

Quindi se ho ben capito se do in input la giusta "parola segreta di 8 lettere da indovinare" a una

miaImplementazioneDellaLoroFunzione

e sono fortunato da indovinare quella che ti fa ottenere come output: 1AdU3EcimMFN7JLJtceSyrmFYE3gF5ZnGj

vinco 20 btc?


Esatto. 10 BTC sono depositati nell' address e te li prendi subito importando la privkey e trasferendo i BTC su un' altro address.

Gli altri 10 BTC te li danno loro dopo che gli avrai spiegato quale sistema hai usato (e credo indipendentemente da quale sia), l' importante è che non sparisci Smiley



FaSan

Implementiamo una brute force pool Smiley ?
hero member
Activity: 658
Merit: 502
June 10, 2014, 09:27:06 AM
#34
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan

Ho guardato il sito. Non ho capito come si partecipa.


WalletWarp è un sistema di codifica tipo BrainWallet, che sfrutta scrypt per trasformare la tua "password" in una chiave privata e quindi un address valido.

Se scorri in basso alla pagina vedrai che hanno già fatto una serie di bounties, già terminate, e l' ultima che è ancora valida. Si chiede di trovare la password di 8 cifre alfanumerica (numeri e lettere di cui le lettere maiuscole e minuscole) che genera l' address indicato.

Ovviamente non viene fornito nessun software, ma solo la funzione che viene utilizzata. Il resto te lo devi fare da solo... 20 BTC in palio Wink



FaSan

Quindi se ho ben capito se do in input la giusta "parola segreta di 8 lettere da indovinare" a una

miaImplementazioneDellaLoroFunzione

e sono fortunato da indovinare quella che ti fa ottenere come output: 1AdU3EcimMFN7JLJtceSyrmFYE3gF5ZnGj

vinco 20 btc?


Esatto. 10 BTC sono depositati nell' address e te li prendi subito importando la privkey e trasferendo i BTC su un' altro address.

Gli altri 10 BTC te li danno loro dopo che gli avrai spiegato quale sistema hai usato (e credo indipendentemente da quale sia), l' importante è che non sparisci Smiley



FaSan
hero member
Activity: 484
Merit: 500
June 10, 2014, 09:21:39 AM
#33
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan

Ho guardato il sito. Non ho capito come si partecipa.


WalletWarp è un sistema di codifica tipo BrainWallet, che sfrutta scrypt per trasformare la tua "password" in una chiave privata e quindi un address valido.

Se scorri in basso alla pagina vedrai che hanno già fatto una serie di bounties, già terminate, e l' ultima che è ancora valida. Si chiede di trovare la password di 8 cifre alfanumerica (numeri e lettere di cui le lettere maiuscole e minuscole) che genera l' address indicato.

Ovviamente non viene fornito nessun software, ma solo la funzione che viene utilizzata. Il resto te lo devi fare da solo... 20 BTC in palio Wink



FaSan

Quindi se ho ben capito se do in input la giusta "parola segreta di 8 lettere da indovinare" a una

miaImplementazioneDellaLoroFunzione

e sono fortunato da indovinare quella che ti fa ottenere come output: 1AdU3EcimMFN7JLJtceSyrmFYE3gF5ZnGj

vinco 20 btc?
hero member
Activity: 658
Merit: 502
June 10, 2014, 09:12:01 AM
#32
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan

Ho guardato il sito. Non ho capito come si partecipa.


WalletWarp è un sistema di codifica tipo BrainWallet, che sfrutta scrypt per trasformare la tua "password" in una chiave privata e quindi un address valido.

Se scorri in basso alla pagina vedrai che hanno già fatto una serie di bounties, già terminate, e l' ultima che è ancora valida. Si chiede di trovare la password di 8 cifre alfanumerica (numeri e lettere di cui le lettere maiuscole e minuscole) che genera l' address indicato.

Ovviamente non viene fornito nessun software, ma solo la funzione che viene utilizzata. Il resto te lo devi fare da solo... 20 BTC in palio Wink



FaSan
hero member
Activity: 658
Merit: 502
June 10, 2014, 09:08:15 AM
#31
Vanitygen nella sua forma standard non fà un vero bruteforce, ma spezzetta le possibilità risommandole alla fine. C'è un thread nell' area internazionale dove ne viene spiegato il funzionamento. Se fosse un semplice bruteforce non potrebbe garantirti la risposta nei tempi indicati, che vengono sempre rispettati, ovvero non esiste che la trovi prima.
Hai un link? Perché qui io invece leggo:
Quote
Vanitygen's search is probabilistic, and the amount of time required to find a given pattern depends on how complex the pattern is, the speed of your computer, and whether you get lucky.
(ovvero sembrerebbe un banale bruteforce).

Mi sto appunto chiedendo che altro approccio possa esistere rispetto a tentare tutte le possibilità finché non si becca la chiave privata.

Ciao!


Guarda, sempre che non abbia capito male, in origine era così, poi man mano sono state aggiunte funzioni, tipo la ricerca per affinità, calcolo del delta e non sò bene cos'altro.  Premetti che non sono un matematico quindi alcune terminologie le ignoro completamente. Mi piacerebbe sapere tutto, ma il tempo è sempre quello che è e per quanto non finisca mai di studiare, c'è sempre qualcosa che mi tocca trascurare.

Cmq all'interno delle decine di pagine del thread di Vanitygen e, probabilmente più facile, nel changelog dovrebbe esserci qualche accenno.

Il discorso dello spezzettare la chiave, invece, credo di averla confusa con la pool. Che poi non sarebbe errato, la base delle privkey è una key hex di 64 chars(che poi viene convertita in base58), e come avviene per il mining, applicandoci il principio dello stratum, potrebbe essere possibile minarla, dove il target sarebbe propio la chiave cercata. Siamo sul teorico ovviamente.




FaSan
hero member
Activity: 484
Merit: 500
June 10, 2014, 08:54:36 AM
#30
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan

Ho guardato il sito. Non ho capito come si partecipa.
legendary
Activity: 2450
Merit: 1008
June 10, 2014, 08:18:47 AM
#29
Vanitygen nella sua forma standard non fà un vero bruteforce, ma spezzetta le possibilità risommandole alla fine. C'è un thread nell' area internazionale dove ne viene spiegato il funzionamento. Se fosse un semplice bruteforce non potrebbe garantirti la risposta nei tempi indicati, che vengono sempre rispettati, ovvero non esiste che la trovi prima.
Hai un link? Perché qui io invece leggo:
Quote
Vanitygen's search is probabilistic, and the amount of time required to find a given pattern depends on how complex the pattern is, the speed of your computer, and whether you get lucky.
(ovvero sembrerebbe un banale bruteforce).

Mi sto appunto chiedendo che altro approccio possa esistere rispetto a tentare tutte le possibilità finché non si becca la chiave privata.

Ciao!
hero member
Activity: 658
Merit: 502
June 10, 2014, 08:07:46 AM
#28
Sempre in ambito di Bruteforce, se a qualcuno interessa, c'è una bounties sul sito di warpwallet, 20BTC in palio. Io stò brutalmente cercando da tre mesi, con scarso risultato.



FaSan
hero member
Activity: 658
Merit: 502
June 10, 2014, 07:47:09 AM
#27
Sampey e giusto per farsi due risate, conosci qualche programmino per il bruteforce in automatico ?

vanitygen? Come si diceva sopra..


Vanitygen nella sua forma standard non fà un vero bruteforce, ma spezzetta le possibilità risommandole alla fine. C'è un thread nell' area internazionale dove ne viene spiegato il funzionamento. Se fosse un semplice bruteforce non potrebbe garantirti la risposta nei tempi indicati, che vengono sempre rispettati, ovvero non esiste che la trovi prima.

Diversamente esiste un' altra versione di vanitygen per python in github (vanitygen-py) che è invece un vero e proprio bruteforce, e che veramente potrebbe andare avanti in eterno senza mai trovare nulla (o trovarla al primo colpo).

Io in passato ho avuto modo di giocare con i brute per gli address, mi ero messo in testa che trovare la privkey di indirizzi andati persi fosse cosa buona e giusta. Inutile dire che dopo più di un mese di brute ho cannato  Cheesy Cheesy Cheesy




FaSan



PS : se a qualcuno interessa esiste VANITYPOOL, una pool che paga in BTC e che fà lavorare le vostre GPU per velocizzare lo scan di indirizzi richiesti (e pagati) dagli utenti
legendary
Activity: 2450
Merit: 1008
June 10, 2014, 06:55:43 AM
#26
Ma se io apro il client bitcoin e genero un indirizzo e vi dico che non ho la chiave privata (che invece ho) ci credete? Non capisco cosa ci garantisce che per quell'indirizzo nessuno possa avere la chiave privata.

Ci stiamo basando sul fatto che "ha tutte quelle x di fila" ? Ci aspettiamo che sia statisticamente rarissimo che il client ci generi proprio un indirizzo cosi particolare?
Esattamente: è in pratica impossibile che esca fuori un indirizzo contenente un uno iniziale (obbligatorio) seguito da una lunga parola di senso compiuto (con tutte le maiuscole e minuscole a posto) tra l'altro semanticamente coerente col tipo di servizio proposto, seguita unicamente da una sfilza di X fino a riempire perfettamente i primi 27 caratteri obbligatori e dal checksum.

Per capirci, visto che nessuno ha risposto al mio invito, risolvo il problemino proposto.

Facciamo 2 calcoli.

https://en.bitcoin.it/wiki/Vanitygen_keysearch_rate

Prendiamo una scheda video che provi 25 milioni di chiavi al secondo (hardware credo al top). Per provare tutte le combinazioni ci vorrebbero:
58^34/25000000 = 3,619193243×10⁵² secondi = 1,147638649×10⁴² millenni

(arrotondiamo a 10⁴² millenni, ovvero "1 seguito da 42 zeri" millenni)

Ovviamente ci vorrebbe meno tempo, perché questo è il peggiore scenario, ove si becchi la combinazione giusta all'ultimo tentativo dopo aver provato tutte le possibilità. Da qui però però si può calcolare la probabilità di trovare la chiave privata nel tempo che preferite. Per esercizio vi invito a calcolare la probabilità di trovare la chiave in meno di 1 milione di anni (1000 millenni).

I milioni di anni necessari a fare tutte le prove usando quella scheda video sono 10³⁹; la probabilità che la chiave privata di quell'indirizzo venga trovata nel primo milione di anni è quindi 1/10³⁹, ovvero 0,[38 zeri]1 = 0,[36 zeri]1%. In termini ingegneristici si può tranquillamente arrotondare con uno zero tondo, che in italiano si legge "è praticamente proprio impossibile".

Ora, per stimare la probabilità che quello sia un indirizzo uscito fuori casualmente, basta immaginare tutte le combinazioni "sensate" possibili e moltiplicare il numero di queste possibilità per la probabilità precedentemente calcolata.

Esempi di indirizzi sensati:
Code:
1CounterpartyXXXXXXXXXXXXXXX[checksum] ← il caso analizzato in questa discussione
1counterpartyXXXXXXXXXXXXXX[checksum]
1Counterpartyxxxxxxxxxxxxxx[checksum]
1CounterpartyYYYYYYYYYYYYYY[checksum]
1TrashAddressXXXXXXXXXXXXXX[checksum]
...

Nel mio caso la probabilità che uno di quegli indirizzi possa uscire fuori in meno di un milione di anni di tentativi è 5/10³⁹. Mettiamo che esistano un miliardo di combinazioni "plausibili", cambia poco/niente: 10⁹/10³⁹ = 1/10³⁰, comunque semplificabile in uno zero tondo. Dato che dall'inizio del progetto Bitcoin ad oggi non sono passati miliardi e miliardi di anni ma solo cinque e mezzo, capite bene che è davvero ridicolo avere anche solo il minimo dubbio che quel tizio possa disporre della chiave privata di quell'indirizzo.

Ciao!
legendary
Activity: 3766
Merit: 1742
Join the world-leading crypto sportsbook NOW!
June 10, 2014, 05:07:36 AM
#25
Probabilmente ci si basa sul fatto che è presente una parola come Counterparty e poi tutte le XXXXXXXXXXXXXXX (il resto dell'indirizzo probabilmente è generato per quadrare le 2 forzature precedenti).

Se intendi gli ultimi sei caratteri, sarebbero il checksum presente in ogni indirizzo (l'unica parte non personalizzabile insieme all'1)
legendary
Activity: 3766
Merit: 1742
Join the world-leading crypto sportsbook NOW!
June 10, 2014, 05:05:51 AM
#24
Uno dei proof-of-burn più grandi di sempre (novacoin, però pur sempre un bello stake di questa moneta): https://bitcointalksearch.org/topic/110k-premined-nvc-is-successfully-destroyed-144158
legendary
Activity: 3248
Merit: 1070
June 10, 2014, 02:39:54 AM
#23
è una cosa tipo rendo non spendibile una certa quantità di moneta per avere una chance di farne di più

slimcoin ne fa uso
legendary
Activity: 2632
Merit: 1040
June 10, 2014, 02:04:11 AM
#22
Probabilmente ci si basa sul fatto che è presente una parola come Counterparty e poi tutte le XXXXXXXXXXXXXXX (il resto dell'indirizzo probabilmente è generato per quadrare le 2 forzature precedenti).

Se generi un Indirizzo non hai alcun modo di forzare parte di esso, quindi creando una chiave privata si genera le relativa pubblica, formalmente corretta ma con caratteri assolutamente casuali.

Detto questo, se invece di "Counterparty" ci fosse stato scritto "aoiEoasRYTRASC" anche se fosse stata generata in maniera "Proof Of Burn" nessuno potrebbe dimostrarlo.
hero member
Activity: 484
Merit: 500
June 10, 2014, 01:54:12 AM
#21
No... ma sul serio c'è gente che ha *volontariamente* buttato più di duemila bitcoin su quell'indirizzo ?
Meglio per noi. Più gente butta via i propri bitcoin, più i bitcoin diventano rari, più i nostri aumentano di valore.

Quote
Appunto... questo è il problema... chi garantisce che effettivamente non sia stata creata partendo da una chiave privata ? Credo nessuno.
Invito chiunque voglia dilettarsi a fare un esercizio di calcolo delle probabilità. A naso sono piuttosto fiducioso sul fatto che sia più probabile che TUTTI coloro che hanno letto questo messaggio vengano ripetutamente colpiti da fulmini alcune decine di volte nel giro di uno stesso minuto. Come gran parte di tutto ciò che riguarda Bitcoin (che si fonda sulla crittografia), non siamo nel campo dell'impossibile ma dell'altissimamente improbabile.

Per capirci, la probabilità che chi ha generato quell'indirizzo possieda la relativa chiave privata è analoga alla probabilità che quel tizio possieda la chiave privata di un qualsiasi vostro indirizzo.

Ma se io apro il client bitcoin e genero un indirizzo e vi dico che non ho la chiave privata (che invece ho) ci credete? Non capisco cosa ci garantisce che per quell'indirizzo nessuno possa avere la chiave privata.

Ci stiamo basando sul fatto che "ha tutte quelle x di fila" ? Ci aspettiamo che sia statisticamente rarissimo che il client ci generi proprio un indirizzo cosi particolare?
Pages:
Jump to: