Author

Topic: Paper wallet non sicuri (Read 311 times)

member
Activity: 233
Merit: 31
April 19, 2018, 06:47:33 AM
#18
MyEtherWallet utilizza 3 metodi javascript, in base alla compatibilità del browser, per generare dati casuali in ordine di priorità:
crypto.getRandomValues, browser più recenti
crypto.randomBytes, node.js javascript
math.random, compatibile con la maggior parte dei browser

codice versione 3.11.2.3:

Code:
6883 ethUtil.crypto = require('crypto');
.
63247 if (CRYPTO) {
63250 if (crypto.getRandomValues) {
63252    a = crypto.getRandomValues(new Uint32Array(k *= 2));
.
63283 } else if (crypto.randomBytes) {
63286     a = crypto.randomBytes(k *= 7);

Code:
63228 var random53bitInt = Math.random() * pow2_53 & 0x1fffff ? function () {
63313 if (!CRYPTO) {
.
63316             v = random53bitInt();

Da quello che ho letto SecureRandom() è una libreria appartente alla stessa classe CRYPTO di javascript utilizzata spesso fino a qualche anno fa e che non viene usata da MyEtherWallet!
member
Activity: 434
Merit: 38
April 18, 2018, 03:40:35 PM
#17
Se ho ben capito il problema, è possibile che la funzione software random potrebbe, teoricamente, in un caso su n (numero grandissimo) volte, generare la stessa chiave privata precedentemente generata.

Ora, quello che non capisco se è un problema relativo solo alla generazione di paper wallet mediante bitaddress (che te lo fa generare passando il mouse o inserendo lettere causali) o è un problema in generale sulla generazione di paper wallet in qualsiasi modo, per esempio generandone uno anche con electrum o per andare in ambito ethereum, su MyEtherWallet.

Qualcuno ha più chiaro il problema?


Mi autoquoto per:



Ammetto di essere un pò pigro nel fare lunghe ricerche a riguardo, ma se qualcuno ha voglia di spiegarmi un pò meglio se il problema riguarda solo bitaddress (MyEtherWallet è lo stesso???) e spiegare un pò più nel dettaglio la questione della sicurezza (argomento di cui cerco sempre di informarmi in merito) dei paper wallet, mi fa un favore e sono pronto a ricompensarlo con 2 merit (spero non sia vietato dalle regole del forum proporre questi incentivi e non venga considerato incentivazione vietata!  Grin Grin Grin  Se non si può fatemelo presente e cancello subito il post).
member
Activity: 434
Merit: 38
April 15, 2018, 12:48:11 PM
#16
Se ho ben capito il problema, è possibile che la funzione software random potrebbe, teoricamente, in un caso su n (numero grandissimo) volte, generare la stessa chiave privata precedentemente generata.

Ora, quello che non capisco se è un problema relativo solo alla generazione di paper wallet mediante bitaddress (che te lo fa generare passando il mouse o inserendo lettere causali) o è un problema in generale sulla generazione di paper wallet in qualsiasi modo, per esempio generandone uno anche con electrum o per andare in ambito ethereum, su MyEtherWallet.

Qualcuno ha più chiaro il problema?
legendary
Activity: 1981
Merit: 1039
April 15, 2018, 07:22:22 AM
#15
ricordo che c'era una tabella per generare un seed bip39 coi dadi ma poi scoprii che anche i dadi economici soffrono di un certo sbilanciamento appena ritrovo il link lo posto  Grin
legendary
Activity: 1932
Merit: 2077
April 15, 2018, 07:08:11 AM
#14
fatemi dire una cosa contro il bitcoin
ok, è una moneta creata da poco, è ancora tutto in via sperimentale, però così è una rottura di balle.
prima si scopre una vulnerabilità in electrum, poi ora anche i paper wallet non sono sicuri, gli exchange non ne parliamo, uno dove li deve conservare sti bitcoin ? ( e qui mi fermo per non essere volgare)

L'unico modo per essere "sicuri" è quello di generare una chiave privata in modo autonomo (a mano, con un dado). In tutti gli altri casi, appoggiandosi a software che utilizzano funzioni random, bisogna fidarsi (come minimo) di chi ha implementato e controllato quel tipo di funzione.

Almeno per cifre molto alte io farei così.
newbie
Activity: 63
Merit: 0
April 14, 2018, 12:22:29 AM
#13
Mi auguro myetherwallet non abbia questo problema
legendary
Activity: 2562
Merit: 2640
April 13, 2018, 01:57:10 PM
#12
se fosse così facile andrebbero sicuramente a cercare le priv key di indirizzi grossi.
io però mi domando una cosa,quando dite "usano pc e gpu per trovare le priv key" cosa intendete? Nel senso ci son programmi che in automatico generano indirizzi bitcoin per cercare una collisione?

Sì leggi qui:
https://bitcointalksearch.org/topic/large-bitcoin-collider-thread-20-1877935

se ne è parlato anche qualche mese fa in un thread nella sezione italiana: non l'ho sotto mano ma se cerchi lo trovi.
hero member
Activity: 634
Merit: 500
April 13, 2018, 01:39:19 PM
#11
se fosse così facile andrebbero sicuramente a cercare le priv key di indirizzi grossi.
io però mi domando una cosa,quando dite "usano pc e gpu per trovare le priv key" cosa intendete? Nel senso ci son programmi che in automatico generano indirizzi bitcoin per cercare una collisione?
legendary
Activity: 2562
Merit: 2640
April 13, 2018, 11:16:13 AM
#10
Mah, per me sono articoli che generano solo paura, inutilmente e immotivata.
Il fatto che le funzioni random non siano mai del tutto random è noto da quando in informatica si usavano ancora le schede perforate..... Roll Eyes   ma proprio per questo ogni sviluppatore degno di tale nome, quando usa queste funzioni in contesti "seri" (cioè ove siano in ballo soldi o cose simili)  usa sempre il classico seme che viene generato a seguito di attività casuali: il movimento del mouse, l'intervallo che passa tra la comparsa di una videata e il successivo click del mouse (o tasto premuto), fino a intrugli più azzardati che creano un hash a partire dall'hw che sta facendo girare il programma.
Mi stupire se software "seri" - come ad esempio Electrum citato infatti come "sicuro" - non implementassero almeno una di queste funzioni per rendere meno random la funzione random.

Comunque sia - a prescindere da questo - per me il metodo più sicuro per farsi dei paper w è composto da due azioni:
1) salvarsi il seed invece dei qr code così da poterlo eventualmente copiare e dividere in più parti

e soprattutto.....
2) nel caso si tratti di importi rilevanti dividere il malloppo in almeno 3 o 4 wallet diversi, così se anche di uno dovessero "indovinare" la chiave almeno non si rimarrebbe a secco.

legendary
Activity: 1981
Merit: 1039
April 13, 2018, 09:40:13 AM
#9
leggendo su reddit sembra che si tratti di quella vecchia vulnerabilità del secureRandom() che fu scoperta e fixata anni fa, inoltre il tipo posta da questa email : ketamine at national.shitposting.agency  Roll Eyes
sr. member
Activity: 490
Merit: 353
this is not a bounty avatar
April 13, 2018, 09:21:31 AM
#8
Non credo che i rapporti siano quelli che dici tu...

Anch'io lo credo ma ci sarebbero da definire i numeri. In questo modo mi renderei conto di "quanto" sono al sicuro perché non mi basta sapere "se" sono al sicuro.

Nella teoria hai 100% ragione, nella pratica, non per minimizzare, io mi sento sicuro per quanto detto sopra. Si tratta di probabilità infinitamente basse e imho non sufficienti a dire “i paper wallet non sono sicuri”

C’è anche da dire che tutto il sistema si basa proprio sulla sicurezza della crittografia, se viene fuori che è una favola e rubare Bitcoin in questo modo è “semplice”, probabilmente intanto rubano dai wallet con 100+ btc (non il mio Sad) e a quel punto apro il cassetto e il paper wallet (tra l’altro generato proprio con bitaddress pure io) lo brucio direttamente perché prima di riuscire a convertire in Fiat sarà già crollato tutto


Ps ho riletto pure la fonte in inglese in cui spiega la vulnerabilità dal punto di vista informatico, non credo si possa definire un numero “pensavate che fosse sicuro al 99,X% invece è sicuro solo al x% e c’è una probabilità del TOT% di generare una coppia di chiavi già usata”, ma forse non sono capace io:)
Pps e comunque mi sembra parli solamente di probabilità di “generare una coppia di chiavi già utilizzata”, nulla a che vedere con “dato un indirizzo pubblico ricavarne la priv key”
hero member
Activity: 708
Merit: 506
I support freedom of choice
April 13, 2018, 08:44:55 AM
#7
Non credo che i rapporti siano quelli che dici tu...

Anch'io lo credo ma ci sarebbero da definire i numeri. In questo modo mi renderei conto di "quanto" sono al sicuro perché non mi basta sapere "se" sono al sicuro.
sr. member
Activity: 490
Merit: 353
this is not a bounty avatar
April 13, 2018, 08:18:19 AM
#6
Non credo che i rapporti siano quelli che dici tu... che poi se il gioco valesse la candela qualcuno che ne sa più di noi ed ha a disposizione più potenza di calcolo, ci sarebbe già riuscito no?
Dal link su reddit che hai postato leggo commenti di gente che la pensa come me, ovvero è una “vulnerabilità” nota da tempo

Bitta l’articolo dice solo “il secure random non è poi così random”... perché come ho scritto sopra questo in informatica è impossibile.
Infatti poi dice “con electrum invece sono generate in maniera completamente casuale” e quella frase è per me inesatta.
L’ho appena riletto e credo di essere d’accordo con me stesso:)
legendary
Activity: 1526
Merit: 1000
April 13, 2018, 08:13:12 AM
#5
no aspettate, allora non ho capito una ceppa
leggendo l'articolo avevo capito che per i paperwallet creati con bitaddress c'erano problemi, non per i paper wallet in generale, cioè avevo capito che il loro sistema java per generare, non fosse così random e (per sparare un numero a caso) utilizzasse un numero limitato di indirizzi, rendendo quindi più "facile" trovare la priv key

se è così ditemelo perchè settimana scorsa mio cugino ha comprato 1 bitcoin e io l'ho messo su un paper di bitaddress, se lo rubano mio cugino mi sodomizza (e non lo chiamano "il nero di napoli" a causa del colore della pelle, ma per altro)  Grin
hero member
Activity: 708
Merit: 506
I support freedom of choice
April 13, 2018, 08:04:03 AM
#4
In sostanza per come la vedo io non è una “vulnerabilità” del Javascript di bitaddress, è come funzionano le cose, i computer, la crittografia  e la statistica

Si ma se a livello (se) pratico il gioco vale la candela allora ha ragione bittaitaliana. Se uno ha 100 btc in un paper wallet e per "rubargli" i soldi basta in media una quantità di energia elettrica pari a 50 btc allora il gioco vale la candela. Con cento paperoni che hanno 100 btc nel loro paper wallet sono quasi matematicamente sicuro che ricaverò 50 btc * 100 paper wallet meno i costi dell'infrastruttura.

Pare che debbano essere fatte un certo numero di firme della chiave privata per exploitare il conto bitcoin, quindi non è facile rubare i soldi da un cold wallet.
sr. member
Activity: 490
Merit: 353
this is not a bounty avatar
April 13, 2018, 07:54:25 AM
#3
fatemi dire una cosa contro il bitcoin
ok, è una moneta creata da poco, è ancora tutto in via sperimentale, però così è una rottura di balle.
prima si scopre una vulnerabilità in electrum, poi ora anche i paper wallet non sono sicuri, gli exchange non ne parliamo, uno dove li deve conservare sti bitcoin ? ( e qui mi fermo per non essere volgare)

Non sono d’accordo, avevo già commentato questa “notizia” sul 3d della raccolta news.
Metto notizia tra virgolette perché per quanto possa suscitare scalpore dire “nemmeno i paper wallet sono sicuri” in realtà il concetto è molto più banale: in informatica il concetto di “100% casualità” NON esiste, e si è sempre saputo.

Che “una coppia di chiavi pubblica/privata” può essere generata “doppione” di una già esistente, è vero, ma qual è la probabilità che ciò accada?

Forse la stessa di io che ora mi metto a lanciare un dado e entro sera genero la priv key dell’indirizzo di satoshi.

Vi/ci hanno sempre detto che per decifrare una priv key un computer quantistico ci mette migliaia di anni, quindi tutti tranquilli da sempre. Ma in effetti ci mette “fino a” migliaia di anni. C’è pure la probabilità che la indovini al primo tentativo!

In sostanza per come la vedo io non è una “vulnerabilità” del Javascript di bitaddress, è come funzionano le cose, i computer, la crittografia  e la statistica
legendary
Activity: 1526
Merit: 1000
April 13, 2018, 07:07:19 AM
#2
fatemi dire una cosa contro il bitcoin
ok, è una moneta creata da poco, è ancora tutto in via sperimentale, però così è una rottura di balle.
prima si scopre una vulnerabilità in electrum, poi ora anche i paper wallet non sono sicuri, gli exchange non ne parliamo, uno dove li deve conservare sti bitcoin ? ( e qui mi fermo per non essere volgare)
hero member
Activity: 708
Merit: 506
I support freedom of choice
Jump to: