Author

Topic: Sécurité : Attention aux brain wallets (Read 5392 times)

legendary
Activity: 966
Merit: 1000
March 17, 2015, 11:22:54 AM
#18
choisir un livre qu'on aime, et prendre la première lettre de chaque page.
bon, les minuscules seront sur-représentées par rapport aux majuscules et aux chiffres...

Si ton livre brûle, tu auras peut-être du mal à retrouver le même dans la même édition. Achète le en 3 exemplaires et offre le à 2 proches Smiley
legendary
Activity: 2707
Merit: 1201
עם ישראל
choisir un livre qu'on aime, et prendre la première lettre de chaque page.
bon, les minuscules seront sur-représentées par rapport aux majuscules et aux chiffres...
legendary
Activity: 966
Merit: 1000
Autre récit de vol de bitcoins ... depuis un brainwallet : http://le-coin-coin.fr/2112-une-balle-dans-la-cervelle/

Il existe un autre moyen de faire un brainwallet : utiliser electrum ou mycelium et mémoriser les 12 mots mnémotechniques.
legendary
Activity: 1512
Merit: 1012
Autre récit de vol de bitcoins ... depuis un brainwallet : http://le-coin-coin.fr/2112-une-balle-dans-la-cervelle/
sr. member
Activity: 384
Merit: 258
December 17, 2014, 01:11:38 PM
#14
Et pourtant plusieurs adresse bitcoin ce sont fait vider de cette façon
Oui bien sur. Il y a un vrai risque du côté des signatures ECDSA (sans RFC 6979).
C'est juste que je ne peux pas m'empêcher de me moquer de Sony à chaque fois que cette histoire ressort, parce que pour le coup, c'était vraiment une grosse boulette de leur part Cheesy
legendary
Activity: 1918
Merit: 1190
December 17, 2014, 09:37:01 AM
#13
Une clef public ECDA plus elle est utilisé permet des attaques par rejeux ( voir les hack PS3 pour exemple )
Une boite qui réimplémente une librairie crypto, en mettant une valeur constante là où les specs disent de générer un nombre aléatoire, mérite de se faire hacker ! Wink

Et pourtant plusieurs adresse bitcoin ce sont fait vider de cette façon
sr. member
Activity: 384
Merit: 258
December 17, 2014, 09:06:27 AM
#12
Une clef public ECDA plus elle est utilisé permet des attaques par rejeux ( voir les hack PS3 pour exemple )
Une boite qui réimplémente une librairie crypto, en mettant une valeur constante là où les specs disent de générer un nombre aléatoire, mérite de se faire hacker ! Wink
legendary
Activity: 1918
Merit: 1190
December 17, 2014, 07:31:01 AM
#11

C'est tout à fait vrai: toutes les transactions ne sont pas des "pay-to-hash", on peut aussi payer une clé publique directement (comme dans une coinbase transaction).
Donc en toute rigueur, l'entropie (si on utilisait que des transactions "pay-to-public-key") est celle de l'espace de clés publiques, c'est à dire l'ordre du champ fini utilisé dans ECDSA version Bitcoin.
Pour rappel , l'ordre de ce champ est (en notation hexa)
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE BAAEDCE6AF48A03BBFD25E8CD0364141

soit, en décimal (si ma conversion est correcte):
115792089237316195423570985008687907852497281912153965919141788534086393282883  > 1077

L'entropie des clés privées est donc très supérieure à 2160 mais, pour en bénéficier à plein, il faut recevoir ses fonds sur des clés publiques et non sur des adresses.

Je ne peut que agrée a ce calcul mais pour être complet il faut tenir compte du Aléa.

Une clef public ECDA plus elle est utilisé permet des attaques par rejeux ( voir les hack PS3 pour exemple )
Pour ceux qui n'ont pas compris en quoi une depense change la donne .
Recevoir des bitcoin sur addresse n'est pas recevoir des bitcoin sur une clef public .
Quand vous dépensez cette argent vous apporter aussi la connaissance de la clef public correspondant a cette adresse et un message signé .



Je pense que dans les fait un cold wallet sur une adresse bitcoin qui n'a fait aucune dépense est plus sur contre une attaque ciblé

1.) Pay to clef public
2.) Pay to addresse sans depense ( plusieur addresse public peuvent avoir la même adresse bitcoin )
3.) Pay to addresse avec depense ( debut attaque ECDA possible selon les implémentations)

legendary
Activity: 966
Merit: 1000
December 05, 2014, 03:11:42 AM
#10
Bonjour,

Je suis tombé un peu par hasard sur cette information : http://www.palkeo.com/code/vol-bitcoin.html

Il ne me semble pas qu'on en ait parlé dans le forum français, en tous cas je n'ai pas trouvé. J'ai juste trouvé celui-ci en anglais.

Conclusion : lorsque vous vous choisissez une phrase secrète, faites preuve d'imagination. Si votre phrase contient moins de deux mots principaux, c'est déjà mort. Par mot principaux, je veux dire sans les articles et les pronoms, qui peuvent être devinés en fonction des mots ou des verbes. Avec trois mots, et si on suppose que les mots sont dans un dictionnaire des 5000 mots les plus courants (je suppose que votre phrase ne contient pas des mots comme "Imperscrutable", "Kéraunographique" ou "Zinzolin"), on a 125000000000 possibilités. En testant 1000000 phrases par seconde (avec une bonne carte graphique et du calcul parallèle ça me semble faisable), vous vous faites vider votre compte en un peu plus de 24 heures.

Est-ce qu'on a plus d'infos sur ces cambrioleurs 2.0 ? On pourrait essayer de mettre l'équivalent de 10 euros (par exemple) sur un compte protégé par une brain wallet "faible", et voir au bout de combien de temps ils disparaissent ?


Auune chance qu'une brainwallet avec 128 bits se fasse craquer. Tu installes electrum, tu récupères le seed et tu le transformes en brainwallet et tu peux être tranquille.
legendary
Activity: 1221
Merit: 1025
e-ducat.fr
November 30, 2014, 07:05:11 AM
#9
l'espace des clés privées Bitcoin (2160).

J'imagine que vous voulez dire l'espace des adresses. Les cles privées c'est plus large que ça...

C'est tout à fait vrai: toutes les transactions ne sont pas des "pay-to-hash", on peut aussi payer une clé publique directement (comme dans une coinbase transaction).
Donc en toute rigueur, l'entropie (si on utilisait que des transactions "pay-to-public-key") est celle de l'espace de clés publiques, c'est à dire l'ordre du champ fini utilisé dans ECDSA version Bitcoin.
Pour rappel , l'ordre de ce champ est (en notation hexa)
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE BAAEDCE6AF48A03BBFD25E8CD0364141

soit, en décimal (si ma conversion est correcte):
115792089237316195423570985008687907852497281912153965919141788534086393282883  > 1077

L'entropie des clés privées est donc très supérieure à 2160 mais, pour en bénéficier à plein, il faut recevoir ses fonds sur des clés publiques et non sur des adresses.
hero member
Activity: 623
Merit: 500
CTO, Ledger
November 30, 2014, 03:07:44 AM
#8
Avec un choix de 24 mots dans un dictionnaire de 1000 mots on a une entropie de 100024 = 1072 supérieure à l'espace des clés privées Bitcoin (2160).
Donc, en pratique, l'entropie obtenue avec 12 mots (1036 > 2108) est déjà largement suffisante.


Le problème est de choisir les 12 (ou les 24) mots de façon vraiment aléatoire.

Le système d'encodage de BIP 39 ne se fait pas par tirage de mots ( https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki#Generating_the_mnemonic ) c'est pour ça que 12 mots me paraissent pas top - en choisissant cette option, on se retrouve à générer 256 bits d'entropie à partir d'une source de 128 bits.
legendary
Activity: 1512
Merit: 1012
November 29, 2014, 03:55:27 PM
#7
Le problème est de choisir les 12 (ou les 24) mots de façon vraiment aléatoire.

 Grin tu tapes 12 fois n'importe quoi dans google ... et tu laisse le correcteur d'orthographe prendre au hasard pour te corriger.
legendary
Activity: 1512
Merit: 1012
Still wild and free
November 29, 2014, 03:52:42 PM
#6
l'espace des clés privées Bitcoin (2160).

J'imagine que vous voulez dire l'espace des adresses. Les cles privées c'est plus large que ça...
legendary
Activity: 1221
Merit: 1025
e-ducat.fr
November 29, 2014, 12:30:06 PM
#5
Avec un choix de 24 mots dans un dictionnaire de 1000 mots on a une entropie de 100024 = 1072 supérieure à l'espace des clés privées Bitcoin (2160).
Donc, en pratique, l'entropie obtenue avec 12 mots (1036 > 2108) est déjà largement suffisante.


Le problème est de choisir les 12 (ou les 24) mots de façon vraiment aléatoire.
sr. member
Activity: 360
Merit: 250
CEO, Ledger
November 27, 2014, 04:54:34 PM
#4
Il y a quand même une différence majeure de principe entre les brainwallets et BIP39 (seed mnemonic).
Dans le cas du brainwallet l'entropie est générée par le choix des mots, et est donc très mauvaise.
Pour BIP39, l'entropie est de 128 bits réels pour 12 mots 256 bits pour 24 mots (ce qui devrait être le choix par défaut).

Les 12 ou 24 mots ne servent qu'à exprimer la seed sous un format facile à lire/écrire pour un humain.

Le brainwallet demande à l'utilisateur d'inventer sa seed, le HD wallet (si BIP39) force à retenir 12 mots déterminés par le générateur aléatoire à 128 bits d'entropie.
legendary
Activity: 1512
Merit: 1012
November 27, 2014, 06:44:43 AM
#3
J'en avais déjà parlé mais les HD Wallet utilisent une partie de ce que fait les brainwallets (et une partie seulement, hein !).
Ce qui veut qu'une partie de la création des HD Wallet est exécuté à partir de 12 mots.

En utilisant Mycelium, par exemple, c'est visible.
Sur Android Bitcoin Wallet, au contraire, c'est caché dans le fichier de backup.
legendary
Activity: 1568
Merit: 1169
November 26, 2014, 04:25:09 PM
#2
Le mieux c'est d'utiliser des mots qui ne sont même pas dans le dictionnaire, des mots que tu as inventé. Bon après faut s'en rappeler Grin
member
Activity: 121
Merit: 34
November 26, 2014, 02:43:01 PM
#1
Bonjour,

Je suis tombé un peu par hasard sur cette information : http://www.palkeo.com/code/vol-bitcoin.html

Il ne me semble pas qu'on en ait parlé dans le forum français, en tous cas je n'ai pas trouvé. J'ai juste trouvé celui-ci en anglais.

Conclusion : lorsque vous vous choisissez une phrase secrète, faites preuve d'imagination. Si votre phrase contient moins de deux mots principaux, c'est déjà mort. Par mot principaux, je veux dire sans les articles et les pronoms, qui peuvent être devinés en fonction des mots ou des verbes. Avec trois mots, et si on suppose que les mots sont dans un dictionnaire des 5000 mots les plus courants (je suppose que votre phrase ne contient pas des mots comme "Imperscrutable", "Kéraunographique" ou "Zinzolin"), on a 125000000000 possibilités. En testant 1000000 phrases par seconde (avec une bonne carte graphique et du calcul parallèle ça me semble faisable), vous vous faites vider votre compte en un peu plus de 24 heures.

Est-ce qu'on a plus d'infos sur ces cambrioleurs 2.0 ? On pourrait essayer de mettre l'équivalent de 10 euros (par exemple) sur un compte protégé par une brain wallet "faible", et voir au bout de combien de temps ils disparaissent ?
Jump to: