big_daddy
|
|
October 19, 2018, 12:33:53 PM |
|
se qualcuno accede al tuo PC, e ruba i file del bitcoin core nell'C:\utente_xy\AppData.... , inserendoli poi in un altro PC, puó accedere direttamente al tuo bitcoine core puoi fare un prova: copia questi file su un altro PC e vai a vedere quanto sei sicuro, sempre dipende quanto forte é la tua password, ma esistono programmi forti che sono in grado di decriptare facilmente password complesse
Parlo di password molto lunghe, almeno 25-30 caratteri, scelti tra maiuscole, minuscole, numeri, simboli vari e senza parole di senso compiuto al suo interno. Cioè di una password che alla fine abbia una entropia paragonabile a quella di una chiave privata vera e propria. E' chiaro che se metto come password "ciao" la sicurezza è nulla. Se qualcuno accede alla tua macchina e legge la password mentre la digiti la complessità della tua password poco importa, senza contare che anche la tua macchina è composta da hardware che può essere manomesso. Su un PC imo dal punto di vista della sicurezza ci sono molte più variabili da tenere in considerazione (e devi fidarti maggiormente di terze parti) rispetto ad un hardware wallet. gli utenti sanno usare il copy/paste per inserire le password o chiavi private... io quando lo faccio, non copio la chiave/password completa, per esempio 22 h.5}]n!kc`Ly(K285Up5X - copio la parte centrale e inserisco a mano il "22" e "5X" é forse un pó di paranoia in piú ma, occhi aperti, perché una volta perse le coin, non le trovi mai piú
|
If you don't believe it or don't get it, I don't have the time to try to convince you, sorry.
|
|
|
Makkara
|
|
October 19, 2018, 01:06:50 PM |
|
|
|
|
|
arulbero
Legendary
Offline
Activity: 1915
Merit: 2074
|
|
October 19, 2018, 01:11:12 PM |
|
Se qualcuno accede alla tua macchina e legge la password mentre la digiti la complessità della tua password poco importa, senza contare che anche la tua macchina è composta da hardware che può essere manomesso. Su un PC imo dal punto di vista della sicurezza ci sono molte più variabili da tenere in considerazione (e devi fidarti maggiormente di terze parti) rispetto ad un hardware wallet.
I keylogger in effetti possono essere un grosso problema, ma la password è utile solo se contemporaneamente riescono anche a prelevare il tuo file wallet.dat (cosa sempre possibile in teoria ma non facile). Un PC invece lo trovo mediamente più sicuro a livello hardware proprio perchè è "general porpose", cioè è difficile che su componenti hardware prodotti da case diverse e poi assemblati per scopi molto diversi e non inerenti alle criptovalute siano stati inseriti elementi che consentano di cercare specificatamente le chiavi private di un wallet. In un pc io posso programmare la mia cpu perchè generi le chiavi private senza che questa sia "consapevole" di cosa sta facendo, posso memorizzarle sull'hard disk nel formato che voglio e poi criptarle come voglio io, ecc. mentre in un hardware specializzato per i wallet ogni componente serve solo a fare una cosa ben specifica e per questo mi pare più prevedibile come comportamento, nel senso che è più facile sapere dove andare a guardare e cosa manomettere per ottenere le chiavi private. Ma si tratta più che altro di una sensazione, non posso dimostrare questa mia ultima considerazione.
|
|
|
|
Piggy
|
|
October 19, 2018, 08:08:27 PM |
|
I keylogger in effetti possono essere un grosso problema, ma la password è utile solo se contemporaneamente riescono anche a prelevare il tuo file wallet.dat (cosa sempre possibile in teoria ma non facile).
Un PC invece lo trovo mediamente più sicuro a livello hardware proprio perchè è "general porpose", cioè è difficile che su componenti hardware prodotti da case diverse e poi assemblati per scopi molto diversi e non inerenti alle criptovalute siano stati inseriti elementi che consentano di cercare specificatamente le chiavi private di un wallet.
In un pc io posso programmare la mia cpu perchè generi le chiavi private senza che questa sia "consapevole" di cosa sta facendo, posso memorizzarle sull'hard disk nel formato che voglio e poi criptarle come voglio io, ecc. mentre in un hardware specializzato per i wallet ogni componente serve solo a fare una cosa ben specifica e per questo mi pare più prevedibile come comportamento, nel senso che è più facile sapere dove andare a guardare e cosa manomettere per ottenere le chiavi private. Ma si tratta più che altro di una sensazione, non posso dimostrare questa mia ultima considerazione.
Si hai ragione anche tu, alla fine ci sono pro e contro per entrambe le soluzioni. Sono tutti punti condivisibili quelli che hai descritto. Comunque in generale penso sia importante avere una "scatola nera" disconnessa da internet con un rigido protocollo di comunicazione, la quale si occupi di firmare internamente le transazioni senza esporre chiavi private, per poi semplicemente buttarle fuori. Poi che questo sia un pc o hardware dedicato se ne può discutere
|
|
|
|
arulbero
Legendary
Offline
Activity: 1915
Merit: 2074
|
|
October 22, 2018, 07:03:45 PM Last edit: October 24, 2018, 07:38:03 AM by arulbero |
|
Comunque in generale penso sia importante avere una "scatola nera" disconnessa da internet con un rigido protocollo di comunicazione, la quale si occupi di firmare internamente le transazioni senza esporre chiavi private, per poi semplicemente buttarle fuori. Poi che questo sia un pc o hardware dedicato se ne può discutere In effetti serve una scatola che 1) generi sequenze pseudocasuali di 256 bit 2) sia in grado di calcolare una chiave pubblica da una privata (curva ellittica) 3) sia in grado di firmare una transazione, cioè di generare una coppia (r, s) di sequenze di 256 bit che dipendono dalla chiave privata e dalla transazione Sarebbe interessante verificare quanto di questo processo si possa fare a "mano", non letteralmente ma utilizzando strumenti su cui si abbia il controllo massimo possibile. Generare "s" da "r" è relativamente semplice, si tratta di 3-4 operazioni algebriche modulo n, per generare "r" invece bisogna lavorare con la matematica delle curve ellittiche. Il punto 1) rimane un punto intrigante, e cioè riuscire a costruire una sorgente di sequenze pseudocasuali che abbia un'entropia sufficiente. Per quanto riguarda la comunicazione scatola <-> pc connesso a Internet, dal pc bisogna importare lo sha256 della tx non firmata nella scatola che deve restituire solo la firma (r, s) al pc connesso, dove infine viene formata la tx finale firmata e inviata. La cosa più facile che mi viene in mente sarebbe quella di utilizzare come scatola un vecchio pc in disuso (senza scheda di rete, wifi, microfono, scheda audio, videocamera, ovviamente quindi non connesso a Internet), sul quale utilizzare una distro live minima con un paio di programmini in Python che assolvano alle funzioni 1) 2) e 3). Per quanto riguarda la comunicazione scatola <-> pc connesso, bisognerebbe trovare un modo di trasportare i dati tra i due dispositivi. Io utilizzerei la seguente procedura: ogni stringa di 256 bit viene convertita in un insieme di 12 (o quante ne servono) parole prese da una lista precaricata. In questo modo l'operatore umano può copiare abbastanza agevolmente i dati a mano, eliminando ogni contatto diretto tra i due dispositivi. Poi la sequenza di 12 parole viene automaticamente riconvertita nella stringa a 256 bit (64 cifre hex) ed eventualmente si controlla a mano di non aver fatto errori (ma se la firma è sbagliata in ogni caso la procedura si bloccherebbe da sola). Sulla carta è tutto abbastanza facile da realizzare (anche se non praticissimo, ovvio) tranne il punto 1), cioè costruire in maniera autonoma un generatore pseudocasuale con tutta quella entropia. Questo sarebbe il punto più intrigante di tutta la faccenda. EDIT: per chi volesse iniziare a implementare da solo (o capire meglio) il funzionamento di queste funzioni essenziali: https://medium.com/coinmonks/introduction-to-blockchains-bedrock-the-elliptic-curve-secp256k1-e4bd3bc17d
|
|
|
|
big_daddy
|
|
October 22, 2018, 07:31:45 PM |
|
Comunque in generale penso sia importante avere una "scatola nera" disconnessa da internet con un rigido protocollo di comunicazione, la quale si occupi di firmare internamente le transazioni senza esporre chiavi private, per poi semplicemente buttarle fuori. Poi che questo sia un pc o hardware dedicato se ne può discutere In effetti serve una scatola che 1) generi sequenze pseudocasuali di 256 bit 2) sia in grado di calcolare una chiave pubblica da una privata (curva ellittica) 3) sia in grado di firmare una transazione, cioè di generare una coppia (r, s) di sequenze di 256 bit che dipendono dalla chiave privata e dalla transazione Sarebbe interessante verificare quanto di questo processo si possa fare a "mano", non letteralmente ma utilizzando strumenti su cui si abbia il controllo massimo possibile. Generare "s" da "r" è relativamente semplice, si tratta di 3-4 operazioni algebriche modulo n, per generare "r" invece bisogna lavorare con la matematica delle curve ellittiche. Il punto 1) rimane un punto intrigante, e cioè riuscire a costruire una sorgente di sequenze pseudocasuali che abbia un'entropia sufficiente. Per quanto riguarda la comunicazione scatola <-> pc connesso a Internet, dal pc bisogna importare lo sha256 della tx non firmata nella scatola che deve restituire solo la firma (r, s) al pc connesso, dove infine viene formata la tx finale firmata e inviata. La cosa più facile che mi viene in mente sarebbe quella di utilizzare come scatola un vecchio pc in disuso (senza scheda di rete, wifi, microfono, scheda audio, videocamera, ovviamente quindi non connesso a Internet), sul quale utilizzare una distro live minima con un paio di programmini in Python che assolvano alle funzioni 1) 2) e 3). Per quanto riguarda la comunicazione scatola <-> pc connesso, bisognerebbe trovare un modo di trasportare i dati tra i due dispositivi. Io utilizzerei la seguente procedura: ogni stringa di 256 bit viene convertita in un insieme di 12 (o quante ne servono) parole prese da una lista precaricata. In questo modo l'operatore umano può copiare abbastanza agevolmente i dati a mano, eliminando ogni contatto diretto tra i due dispositivi. Poi la sequenza di 12 parole viene automaticamente riconvertita nella stringa a 256 bit (64 cifre hex) ed eventualmente si controlla a mano di non aver fatto errori (ma se la firma è sbagliata in ogni caso la procedura si bloccherebbe da sola). Sulla carta è tutto abbastanza facile da realizzare (anche se non praticissimo, ovvio) tranne il punto 1), cioè costruire in maniera autonoma un generatore pseudocasuale con tutta quella entropia. Questo sarebbe il punto più intrigante di tutta la faccenda. Non solo in teoria, questo é un sistema che puó funzionare Se lo vai a costruire, fammi sapere che sono curioso Grazie
|
If you don't believe it or don't get it, I don't have the time to try to convince you, sorry.
|
|
|
arulbero
Legendary
Offline
Activity: 1915
Merit: 2074
|
|
October 23, 2018, 03:29:02 PM Last edit: October 24, 2018, 07:37:11 AM by arulbero |
|
Per generare una sequenza casuale di 256 bit sarebbe teoricamente meglio usare un TRNG (true random number generator) piuttosto che un PRNG (pseudo random number generator). In sostanza sarebbe preferibile utilizzare una fonte analogica esterna piuttosto che un software "chiuso" all'interno di un pc. A questo punto tanto vale provare una soluzione a mano nel vero senso della parola: https://www.swansontec.com/bitcoin-dice.htmlGiusto per avere un'idea di cosa voglia dire 256 bit di entropia: https://medium.com/@kerbleski/a-dance-with-infinity-980bd8e9a781Sul concetto di entropia applicato alla generazione di una chiave privata spiegato in poche parole: Entropy (more accurately known as Shannon entropy) in information theory is a measure of randomness.
A private key (in the bitcoin protocol) is a number between 1 and 115792089237316195423570985008687907852837564279074904382605163141518161494336.
Since numbers can be represented in many forms, you can also say that a private key is a number between 0x01 and 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140
When choosing which number you want to use as your private key, it is important (in the interest of security) to have enough entropy (randomness) in your selection. While any number in that range IS a valid private key, your method of choosing a private key might not have an equal probability of generating any of the numbers in the range. This is where "entropy" becomes important. You need enough entropy to make any number in the valid range nearly equal in probability of being selected.
If you roll a cube die 3 times and use the resulting digits as your private key, you will only be capable of generating one of 216 possible private keys. There isn't enough randomness in this. Another person could roll a cube die a few thousand times and they would almost certainly get the same private key as you at least once. Since there are 216 possible results, and all of them are equally likely to occur, the entropy can be described as approximately 7.7 bits of entropy.
If you roll a cube die 100 times and use the resulting digits as a base 6 representation of your private key, you will generate one of: 6.53 X 1077 possible private keys. This has enough randomness. Another person could roll a cube die continuously for the rest of the time that the earth will exist and they still won't have even a 0.000000000000001% chance of generating the same private key as you. Since there are 6.53 X 1077 possible results, and all of them are equally likely to occur, the entropy can be described as a bit more than 256 bits of entropy.
|
|
|
|
Piggy
|
|
October 23, 2018, 03:39:11 PM |
|
Comunque in generale penso sia importante avere una "scatola nera" disconnessa da internet con un rigido protocollo di comunicazione, la quale si occupi di firmare internamente le transazioni senza esporre chiavi private, per poi semplicemente buttarle fuori. Poi che questo sia un pc o hardware dedicato se ne può discutere In effetti serve una scatola che 1) generi sequenze pseudocasuali di 256 bit 2) sia in grado di calcolare una chiave pubblica da una privata (curva ellittica) 3) sia in grado di firmare una transazione, cioè di generare una coppia (r, s) di sequenze di 256 bit che dipendono dalla chiave privata e dalla transazione Sarebbe interessante verificare quanto di questo processo si possa fare a "mano", non letteralmente ma utilizzando strumenti su cui si abbia il controllo massimo possibile. Generare "s" da "r" è relativamente semplice, si tratta di 3-4 operazioni algebriche modulo n, per generare "r" invece bisogna lavorare con la matematica delle curve ellittiche. Il punto 1) rimane un punto intrigante, e cioè riuscire a costruire una sorgente di sequenze pseudocasuali che abbia un'entropia sufficiente. Per quanto riguarda la comunicazione scatola <-> pc connesso a Internet, dal pc bisogna importare lo sha256 della tx non firmata nella scatola che deve restituire solo la firma (r, s) al pc connesso, dove infine viene formata la tx finale firmata e inviata. La cosa più facile che mi viene in mente sarebbe quella di utilizzare come scatola un vecchio pc in disuso (senza scheda di rete, wifi, microfono, scheda audio, videocamera, ovviamente quindi non connesso a Internet), sul quale utilizzare una distro live minima con un paio di programmini in Python che assolvano alle funzioni 1) 2) e 3). Per quanto riguarda la comunicazione scatola <-> pc connesso, bisognerebbe trovare un modo di trasportare i dati tra i due dispositivi. Io utilizzerei la seguente procedura: ogni stringa di 256 bit viene convertita in un insieme di 12 (o quante ne servono) parole prese da una lista precaricata. In questo modo l'operatore umano può copiare abbastanza agevolmente i dati a mano, eliminando ogni contatto diretto tra i due dispositivi. Poi la sequenza di 12 parole viene automaticamente riconvertita nella stringa a 256 bit (64 cifre hex) ed eventualmente si controlla a mano di non aver fatto errori (ma se la firma è sbagliata in ogni caso la procedura si bloccherebbe da sola). Sulla carta è tutto abbastanza facile da realizzare (anche se non praticissimo, ovvio) tranne il punto 1), cioè costruire in maniera autonoma un generatore pseudocasuale con tutta quella entropia. Questo sarebbe il punto più intrigante di tutta la faccenda. Il passaggio della transazione tra un pc e l'altro potrebbe avvenire attraverso una di quelle app/software che leggono il testo da un immagine( tramite camera ), una volta che trovi la configurazione/contrasto giusto non dovrebbe creare troppi problemi. Copiare manualmente c'è sempre il rischio di commettere errori, ma sembra quantomeno interessante calcolarsi la chiave privata a mano.
|
|
|
|
arulbero
Legendary
Offline
Activity: 1915
Merit: 2074
|
|
October 23, 2018, 03:48:23 PM Last edit: October 24, 2018, 02:26:07 PM by arulbero |
|
Il passaggio della transazione tra un pc e l'altro potrebbe avvenire attraverso una di quelle app/software che leggono il testo da un immagine, una volta che trovi la configurazione/contrasto giusto non dovrebbe creare troppi problemi. Copiare manualmente c'è sempre il rischio di commettere errori, ma sembra quantomeno interessante calcolarsi la chiave privata a mano. Tra l'altro nei passaggio tra pc offline / pc online tutto ciò che viene scambiato può essere pubblico, infatti né l'impronta digitale della tx non firmata né la firma sono dati riservati, ma finiranno tutti nella blockchain. Si cerca di tenere separati però i 2 dispositivi solo per evitare che passi anche altro oltre a questi dati. EDIT: esempio di sistema di protezione delle chiavi private: https://medium.com/square-corner-blog/open-sourcing-subzero-ee9e3e071827
|
|
|
|
|
big_daddy
|
|
November 23, 2018, 12:56:42 PM Last edit: November 23, 2018, 01:51:37 PM by big_daddy |
|
il Ledger Nano S é scontato fino al 26 Novembre
50% di sconto
|
If you don't believe it or don't get it, I don't have the time to try to convince you, sorry.
|
|
|
Makkara
|
|
November 23, 2018, 01:50:48 PM Last edit: November 23, 2018, 03:00:08 PM by Makkara |
|
|
|
|
|
big_daddy
|
|
November 23, 2018, 01:52:14 PM |
|
|
If you don't believe it or don't get it, I don't have the time to try to convince you, sorry.
|
|
|
BamBam78
|
|
November 23, 2018, 03:59:39 PM |
|
Ragazzi buongiorno! Se provo a spostare dal mio ledger nano s bitcoin cash (bch) mi dà un errore e non mi fa inviare (errore 503 HTTP API). Sapete da cosa dipende? Grazie
|
|
|
|
|
babo
Legendary
Offline
Activity: 3738
Merit: 4425
The hacker spirit breaks any spell
|
|
November 23, 2018, 10:17:34 PM |
|
Ragazzi buongiorno! Se provo a spostare dal mio ledger nano s bitcoin cash (bch) mi dà un errore e non mi fa inviare (errore 503 HTTP API). Sapete da cosa dipende? Grazie
X queste problematiche così particolari t conviene leggere sul loro subreddit ufficiale Troverai sicuramente qualcuno col tuo problema
|
| CHIPS.GG | | | ▄▄███████▄▄ ▄████▀▀▀▀▀▀▀████▄ ▄███▀░▄░▀▀▀▀▀░▄░▀███▄ ▄███░▄▀░░░░░░░░░▀▄░███▄ ▄███░▄░░░▄█████▄░░░▄░███▄ ███░▄▀░░░███████░░░▀▄░███ ███░█░░░▀▀▀▀▀░░░▀░░░█░███ ███░▀▄░▄▀░▄██▄▄░▀▄░▄▀░███ ▀███░▀░▀▄██▀░▀██▄▀░▀░███▀ ▀███░▀▄░░░░░░░░░▄▀░███▀ ▀███▄░▀░▄▄▄▄▄░▀░▄███▀ ▀████▄▄▄▄▄▄▄████▀ █████████████████████████ | | ▄▄███████▄▄ ▄███████████████▄ ▄█▀▀▀▄█████████▄▀▀▀█▄ ▄██████▀▄█▄▄▄█▄▀██████▄ ▄████████▄█████▄████████▄ ████████▄███████▄████████ ███████▄█████████▄███████ ███▄▄▀▀█▀▀█████▀▀█▀▀▄▄███ ▀█████████▀▀██▀█████████▀ ▀█████████████████████▀ ▀███████████████████▀ ▀████▄▄███▄▄████▀ ████████████████████████ | | 3000+ UNIQUE GAMES | | | 12+ CURRENCIES ACCEPTED | | | VIP REWARD PROGRAM | | ◥ | Play Now |
|
|
|
Cent21
|
|
November 24, 2018, 02:38:25 AM |
|
Ordinato! Segnalo a chi può essere utile che utilizzano bitpay come gestore pagamenti, ma per chi come me usa un wallet che non è compatibile esiste un sito che vi fa la conversione per effettuare una normale transazione bitcoin: https://alexk111.github.io/DeBitpay/L'ho usato oggi per la prima volta, e sembra aver funzionato correttamente.
|
|
|
|
alexrossi
Legendary
Offline
Activity: 3850
Merit: 1745
Join the world-leading crypto sportsbook NOW!
|
|
November 25, 2018, 07:49:43 PM |
|
Ragazzi buongiorno! Se provo a spostare dal mio ledger nano s bitcoin cash (bch) mi dà un errore e non mi fa inviare (errore 503 HTTP API). Sapete da cosa dipende? Grazie
Molto probabilmente è un errore lato server e non puoi che aspettare e ritentare in un momento diverso.
|
|
|
|
BamBam78
|
|
November 26, 2018, 11:43:52 AM |
|
Grazie a tutti per la risposta... comunque la ledger aveva bloccato appositamente il wallet bch, ora è tutto risolto! 😊
|
|
|
|
Speculatoross
Sr. Member
Offline
Activity: 490
Merit: 353
this is not a bounty avatar
|
|
November 27, 2018, 05:03:03 PM Last edit: November 27, 2018, 05:15:03 PM by Speculatoross |
|
Ordinato! Segnalo a chi può essere utile che utilizzano bitpay come gestore pagamenti, ma per chi come me usa un wallet che non è compatibile esiste un sito che vi fa la conversione per effettuare una normale transazione bitcoin: https://alexk111.github.io/DeBitpay/L'ho usato oggi per la prima volta, e sembra aver funzionato correttamente. Ho approfittato anche io dello sconto e ho fatto il bis:) Ordinato sabato sera, arrivato stamattina, efficientissimi e tutto bene.... Condivido però l’esperienza d’acquisto che è stata diciamo inaspettata: a differenza dell’altra volta, a questi valori di btc mi sarei sentito di “non stare comprando effettivamente in sconto” e quindi ho comprato con la carta e gli euri.... Ho inserito i dati della carta (numero, scadenza, cvv)..... ed è partito l’acquisto all’istante. Nessun 3Dsecure o one-time password richiesta per sicurezza, niente (ho utilizzato una semplice postepay evolution neanche la carta di credito, e per tutti gli altri acquisti online devo dare conferma tramite codice che mi arriva per sms sul numero associato). Boh.... è normale? Non dico che mi ha spaventato la cosa, ma quasi. Non faccio moltissimi acquisti online, ma non mi era mai successo. E non dipende dalla carta perché poche ore prima avevo comprato i biglietti del cinema e come sempre mi aveva chiesto la conferma Pareri?
|
|
|
|
|