saverio (OP)
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 25, 2014, 07:45:35 AM |
|
Mi sto avvicinando adesso al mondo bitcoin e ho 2 domande tecniche da completo neofita.
Premessa: da quanto ho capito quando creiamo un nuovo indirizzo bitcoin il software crea una chiave privata che resta segreta e una chiave pubblica che poi è il nostro indirizzo. Data la chiave privata si può creare facilmente la chiave pubblica mentre il processo non è reversibile, dalla chiave pubblica non si può risalire alla chiave privata.
Se la premessa è giusta (lo è?)...
Prima domanda, teoricamente è possibile che creando una chiave privata casuale ne creo una uguale ad un'altra già esistente, capisco che la possibilità è remotissima, ma c'è questa possibilità giusto? Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
Seconda domanda, con la tecnologia odierna (o almeno quella conosciuta) dalla chiave pubblica non riesco a trovare la chiave privata, se ci provo con metodi di forza bruta impiego probabilmente ere geologiche anche disponendo di super computer. Con il prossimo possibile avvento dei computer quantistici e di possibilità di calcolo oggi impensabili tutto il sistema bitcoin potrebbe essere a rischio?
|
|
|
|
picchio
Legendary
Offline
Activity: 2506
Merit: 1120
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 25, 2014, 07:52:45 AM |
|
Mi sto avvicinando adesso al mondo bitcoin e ho 2 domande tecniche da completo neofita.
Premessa: da quanto ho capito quando creiamo un nuovo indirizzo bitcoin il software crea una chiave privata che resta segreta e una chiave pubblica che poi è il nostro indirizzo. Data la chiave privata si può creare facilmente la chiave pubblica mentre il processo non è reversibile, dalla chiave pubblica non si può risalire alla chiave privata.
Se la premessa è giusta (lo è?)...
Prima domanda, teoricamente è possibile che creando una chiave privata casuale ne creo una uguale ad un'altra già esistente, capisco che la possibilità è remotissima, ma c'è questa possibilità giusto? Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
Il ragionamento simile e' stato affrontato in questo 3d https://bitcointalk.org/index.php?topic=645667.0In sintesi: hai ragione. Seconda domanda, con la tecnologia odierna (o almeno quella conosciuta) dalla chiave pubblica non riesco a trovare la chiave privata, se ci provo con metodi di forza bruta impiego probabilmente ere geologiche anche disponendo di super computer. Con il prossimo possibile avvento dei computer quantistici e di possibilità di calcolo oggi impensabili tutto il sistema bitcoin potrebbe essere a rischio?
Qui' le cose si complicano, ho letto ma non ricordo dove, che un indirizzo utilizzato per firmare transazioni è piu' a rischio di attacchi quantistici di uno non utilizzato in quanto i livelli di codifica sono di due tipi differenti ... non ne so molto di più, al momento starei tranquillo.
|
Waves mi piaceva ora non più.
|
|
|
alexrossi
Legendary
Offline
Activity: 3836
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 25, 2014, 10:11:49 AM |
|
Prima domanda, teoricamente è possibile che creando una chiave privata casuale ne creo una uguale ad un'altra già esistente, capisco che la possibilità è remotissima, ma c'è questa possibilità giusto? Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
Boh, prendo sempre lo stesso esempio che però spiega bene quanto potrebbe essere remoto l'evento: è più probabile che il tuo PC si fonda e dalle ceneri ne esca uno scontrino con i numeri del lotto giusti, piuttosto che un indirizzo bitcoin generato 2 volte.
|
|
|
|
Gc24
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 113
Merit: 12
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 25, 2014, 12:34:45 PM |
|
Mi sto avvicinando adesso al mondo bitcoin e ho 2 domande tecniche da completo neofita.
Premessa: da quanto ho capito quando creiamo un nuovo indirizzo bitcoin il software crea una chiave privata che resta segreta e una chiave pubblica che poi è il nostro indirizzo. Data la chiave privata si può creare facilmente la chiave pubblica mentre il processo non è reversibile, dalla chiave pubblica non si può risalire alla chiave privata.
Se la premessa è giusta (lo è?)...
Prima domanda, teoricamente è possibile che creando una chiave privata casuale ne creo una uguale ad un'altra già esistente, capisco che la possibilità è remotissima, ma c'è questa possibilità giusto? Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
Seconda domanda, con la tecnologia odierna (o almeno quella conosciuta) dalla chiave pubblica non riesco a trovare la chiave privata, se ci provo con metodi di forza bruta impiego probabilmente ere geologiche anche disponendo di super computer. Con il prossimo possibile avvento dei computer quantistici e di possibilità di calcolo oggi impensabili tutto il sistema bitcoin potrebbe essere a rischio?
la premessa è giusta, se vuoi i dettagli matematici puoi cercare RSA e funzioni di hash su wikipedia o su google e leggere le slide di qualche corso universitario di sicurezza informatica (le chiavi negli esempi matematici sono due coppie di numeri, es: chiave pubblica (33,7) e chiave privata (33,3) ) 1)la possibilità esiste, ma per essere accettato come standard dalla comunità informatica, la collisione della funzione di hash (così si chiama quando da due chiavi pubbliche viene generata la stessa chiave privata) dev'essere remotissima 2) si, potrebbe, ma la vulnerabilità verrebbe evidenziata a caratteri cubitali anche fuori dal mondo bitcoin, e si parlerà di eventualmente una "rottura" di SHA-256 (credo che bitcoin usi questa implementazione), visto che sha viene usato anche per altro e non solo per generare indirizzi bitcoin. La rottura tuttavia non minerà l'intero protocollo, perché trovare una collisione su centinaia di miliardi di miliardi (e mi tengo basso) di tentativi non vuol dire che è stato trovato un "bug" nella funzione di hash, quindi probabile che anche in caso di funzione hash "craccata", i portafogli rimarranno sicuri, il problema sarà quando la bruteforce sarà in grado di farlo in tempi ragionevoli.... Tuttavia si potrà implementare un wallet a SHA-512 ad esempio, e incentivare il passaggio a questa nuova generazione di wallets
|
|
|
|
Ilsk
Legendary
Offline
Activity: 834
Merit: 1015
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 25, 2014, 09:51:24 PM |
|
Un indirizzo è formato da un 1 + 33 caratteri casuali che possono essere lettere maiuscole, minuscole o numeri (26+26+10=62)
Quindi esistono 62^(33)=1.4*10^(59) indirizzi possibili.
Ora ipotizzando che una popolazione di 1000 miliardi di persone che generano ogni giorno 10'000 nuovi indirizzi a testa usi i bitcoin per 5 miliardi di anni la probabilità che vengano generati due indirizzi uguali almeno una volta è di circa una ogni 1'000'000'000'000'000'000'000'000'000'000
Spero di aver reso l'idea.
|
|
|
|
Stemby
Legendary
Offline
Activity: 2450
Merit: 1008
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
June 26, 2014, 10:50:47 PM Last edit: June 27, 2014, 01:31:26 AM by Stemby |
|
la vulnerabilità verrebbe evidenziata a caratteri cubitali anche fuori dal mondo bitcoin, e si parlerà di eventualmente una "rottura" di SHA-256 (credo che bitcoin usi questa implementazione), visto che sha viene usato anche per altro e non solo per generare indirizzi bitcoin.
SHA-256 è la funzione di hashing usata per il mining, che è una parte del protocollo bitcoin totalmente distinta dalla firma delle transazioni. Per la generazione degli indirizzi bitcoin si usa l'ECDSA. In realtà anche SHA-256, assieme ad un altro algoritmo di hashing (RIPEMD-160), è usato varie volte per passare dalla chiave pubblica all'indirizzo bitcoin finale come siamo soliti vederlo, ma si tratta di dettagli abbastanza secondari. Ciao!
|
“…virtual currencies, could have a substitution effect on central bank money if they become widely accepted.” ECB Report, October 2012
|
|
|
carlob
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 67
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 10:06:50 AM |
|
Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
In teoria è remota in realtà non tanto, con questo programmino qui sotto, http://gobittest.appspot.com/Addressio ho messo random chiavi private ed ho trovato un indirizzo esistente che aveva 4 btc, aveva perchè li ho presi, (non è vero, magari ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) ), se vuoi provare metti 01 nella private ECDSA key ti darà questo indirizzo: 1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm e provalo con la blockchain, uno pensa l'eccezione fà la regola, ma se provi 0A trovi questo indirizzo valido: 1GDWJm5dPj6JTxF68WEVhicAS4gS3pvjo7 e anche questo aveva dei bitcoin dentro, trovarne uno può essere un caso ma due come si spiega se si continua a dire che ci vogliono miliardi di anni, io ci ho messo 10 minuti, ciau
|
|
|
|
Amph
Legendary
Offline
Activity: 3248
Merit: 1070
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 10:22:46 AM Last edit: July 01, 2014, 10:45:02 AM by Amph |
|
con i computer quantistici sarebbero a rischio solo le chiavi pubbliche che sono a 128 bit non quelle private, i computer quantici è come se applicassero una radice di due nel calcolo, quindi per loro 128bit sono 64 e 256 diventano 128 ecc....e i 128 non si possono "bruteforzare"
|
|
|
|
alexrossi
Legendary
Offline
Activity: 3836
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 10:23:31 AM |
|
Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
In teoria è remota in realtà non tanto, con questo programmino qui sotto, http://gobittest.appspot.com/Addressio ho messo random chiavi private ed ho trovato un indirizzo esistente che aveva 4 btc, aveva perchè li ho presi, (non è vero, magari ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) ), se vuoi provare metti 01 nella private ECDSA key ti darà questo indirizzo: 1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm e provalo con la blockchain, uno pensa l'eccezione fà la regola, ma se provi 0A trovi questo indirizzo valido: 1GDWJm5dPj6JTxF68WEVhicAS4gS3pvjo7 e anche questo aveva dei bitcoin dentro, trovarne uno può essere un caso ma due come si spiega se si continua a dire che ci vogliono miliardi di anni, io ci ho messo 10 minuti, ciau e le marmotte impacchettano la cioccolata... Già che ci sono mi metto a cercare pure io
|
|
|
|
Amph
Legendary
Offline
Activity: 3248
Merit: 1070
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 10:28:01 AM |
|
Io potrei avere dal nulla la chiave privata di un indirizzo già esistente e magari con bitcoin sopra. Quando è remota questa possibilità?
In teoria è remota in realtà non tanto, con questo programmino qui sotto, http://gobittest.appspot.com/Addressio ho messo random chiavi private ed ho trovato un indirizzo esistente che aveva 4 btc, aveva perchè li ho presi, (non è vero, magari ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) ), se vuoi provare metti 01 nella private ECDSA key ti darà questo indirizzo: 1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm e provalo con la blockchain, uno pensa l'eccezione fà la regola, ma se provi 0A trovi questo indirizzo valido: 1GDWJm5dPj6JTxF68WEVhicAS4gS3pvjo7 e anche questo aveva dei bitcoin dentro, trovarne uno può essere un caso ma due come si spiega se si continua a dire che ci vogliono miliardi di anni, io ci ho messo 10 minuti, ciau 1 è caso 2 è coincidenza 3 è premeditazione http://www.hwupgrade.it/forum/images_hwu/smilies/asd.gif
|
|
|
|
Stemby
Legendary
Offline
Activity: 2450
Merit: 1008
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 10:32:32 AM |
|
In teoria è remota in realtà non tanto, con questo programmino qui sotto, http://gobittest.appspot.com/Addressio ho messo random chiavi private ed ho trovato un indirizzo esistente che aveva 4 btc, aveva perchè li ho presi, (non è vero, magari ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) ), se vuoi provare metti 01 nella private ECDSA key ti darà questo indirizzo: 1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm e provalo con la blockchain, uno pensa l'eccezione fà la regola, ma se provi 0A trovi questo indirizzo valido: 1GDWJm5dPj6JTxF68WEVhicAS4gS3pvjo7 e anche questo aveva dei bitcoin dentro, trovarne uno può essere un caso ma due come si spiega se si continua a dire che ci vogliono miliardi di anni, io ci ho messo 10 minuti Le chiavi private che hai testato non sono dei numeri casuali a 256 bit, bensì dei casi molto specifici: sono tutti numeri bassissimi, evidentemente usati a fini didattici e sperimentali (e rapinati nel giro di pochi secondi, se guardi bene in cronologia). La chiave numero 1 poi non parliamone... Prova a generare numeri realmente casuali a 256 bit (64 caratteri esadecimali) e dedica 10 minuti di tentativi (ma anche un anno della tua vita o più, se preferisci): sono sicurissimo che non beccherai neppure un indirizzo bitcoin già utilizzato.
|
“…virtual currencies, could have a substitution effect on central bank money if they become widely accepted.” ECB Report, October 2012
|
|
|
carlob
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 67
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 11:16:22 AM |
|
Quindi sono stati creati apposta all'inizio dici, quello che mi sono chiesto è che quando si genera una chiave privata, cosa di cui noi non possiamo avere il controllo, è sempre lunga il massimo cioè 64 caratteri come dici, o c'è un range che sò fra 30 e 64, capisco il sarcasmo ma è solo perchè sono piccolo e nero ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) , ciau
|
|
|
|
alexrossi
Legendary
Offline
Activity: 3836
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 11:29:59 AM |
|
Quindi sono stati creati apposta all'inizio dici, quello che mi sono chiesto è che quando si genera una chiave privata, cosa di cui noi non possiamo avere il controllo, è sempre lunga il massimo cioè 64 caratteri come dici, o c'è un range che sò fra 30 e 64, capisco il sarcasmo ma è solo perchè sono piccolo e nero ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) , ciau Non sono stati creati necessariamente all'inizio, sono semplicemente valori molto bassi che qualcuno ha voluto testare nella generazione di key: spero per lui che non abbia perso nulla Che io sappia sì, la private key in base 58 è sempre lunga 64 caratteri
|
|
|
|
carlob
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 67
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 11:54:02 AM |
|
Ecco 64 numeri casuali di chiave privata: 1111111111111111111111111111111111111111111111111111111111111111 genera l'indirizzo: 1MsHWS1BnwMc3tLE8G35UXsS58fKipzB7a che ha avuto bitcoin fino a gennaio 2014, lo sò non sembrano numeri casuali perchè sono tutti 1, ma se sono casuali sono casuali anche tutti 1 ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) , ciau
|
|
|
|
Stemby
Legendary
Offline
Activity: 2450
Merit: 1008
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 12:16:53 PM Last edit: July 04, 2014, 09:18:21 AM by Stemby |
|
Ecco 64 numeri casuali di chiave privata: 1111111111111111111111111111111111111111111111111111111111111111 genera l'indirizzo: 1MsHWS1BnwMc3tLE8G35UXsS58fKipzB7a che ha avuto bitcoin fino a gennaio 2014, lo sò non sembrano numeri casuali perchè sono tutti 1, ma se sono casuali sono casuali anche tutti 1 ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Eh, no. "Tutti 1" è casuale se lo ottieni estraendolo con una funzione random, altrimenti è una tua scelta arbitraria. Personalmente propendo per la seconda opzione ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) Per estrarre un numero casuale, ti prendi un bel dado a 20 facce ( a 16 non esiste), lo tiri 64 volte e ti annoti su un foglietto i numeri usciti (trasformi 10 in A, 11 in B, [...], 15 in F, 16 in 0 e se esce un numero maggiore ritiri). Se non disponi di quel dado, tiri 256 volte una moneta (testa = 0, croce = 1). Questo è un numero a 256 bit casuale. [EDIT] Scopro ora che esistono anche dadi esadecimali già pronti. [/EDIT]
|
“…virtual currencies, could have a substitution effect on central bank money if they become widely accepted.” ECB Report, October 2012
|
|
|
bitcoinplaza
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 12:26:22 PM |
|
https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addressesSince Bitcoin addresses are basically random numbers, it is possible, although extremely unlikely, for two people to independently generate the same address.
This is called a collision. If this happens, then both the original owner of the address and the colliding owner could spend money SENT TO THAT ADDRESS. It would NOT be possible for the colliding person to spend the original owner's entire wallet (or vice versa).
If you were to intentionally try to make a collision, it would currently take 2^107 times longer to generate a colliding Bitcoin address than to generate a block. As long as the signing and hashing algorithms remain cryptographically strong, it will likely always be more profitable to collect generations and transaction fees than to try to create collisions."
|
|
|
|
TheBomber999
Legendary
Offline
Activity: 1274
Merit: 1001
"shh, he's coding..."
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 01:42:25 PM |
|
Piccolo inciso da programmatore web. NON utilizzate servizi del genere (http://gobittest.appspot.com/Address) con la vostra chiave privata.Il sito sicuramente salverà i tentativi che state facendo...
|
You either die a developer, or live long enough to see yourself become the scammer. O muori da programmatore, o vivi tanto a lungo da diventare uno scammer.
|
|
|
alexrossi
Legendary
Offline
Activity: 3836
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 01, 2014, 08:31:45 PM |
|
Piccolo inciso da programmatore web. NON utilizzate servizi del genere (http://gobittest.appspot.com/Address) con la vostra chiave privata.Il sito sicuramente salverà i tentativi che state facendo... Ma infatti normalmente servizi del genere hanno una versione scaricabile .zip da eseguire su un computer offline, tipo bitaddress.
|
|
|
|
Gicpiglio
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 04, 2014, 08:14:08 AM |
|
MIO DIO
Ho schiacciato "Random" e mi ha generato questo indirizzo: 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM Che HA CONTENUTO BTC!
|
Bitrated user: Gicminos.
|
|
|
alexrossi
Legendary
Offline
Activity: 3836
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 04, 2014, 08:19:18 AM |
|
MIO DIO
Ho schiacciato "Random" e mi ha generato questo indirizzo: 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM Che HA CONTENUTO BTC!
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2F5G2DBIP.gif&t=665&c=5n20HtO5N1eTmQ)
|
|
|
|
|