Author

Topic: Comment est utilisé le fichier wallet.dat quand on le remet dans Bitcoin Core ? (Read 7887 times)

legendary
Activity: 1512
Merit: 1011
member
Activity: 114
Merit: 10
Star Cat
franchement super pour l explication mais j ai rien capté ... je vais essayé de le refaire pas a pas mais quand j ai mi le nouveau wallet sur mon autre pc j ai un message erreur " key no valide ect " suite a l ajout du fichier .dat
faut t il attendre que le wallet charge les block avant de faire cette manip ou on peut le faire d entrer de jeu ?
member
Activity: 122
Merit: 10
Thread super intéressant pour les curieux comme moi, merci Cheesy
legendary
Activity: 1512
Merit: 1011
Performance de Bitcoin Core 0.15.0 avec une relecture du wallet.dat

A comparer à la courbe plus haut dans le sujet (même machine, même SSD, même fichier de test) ... le temps est plus long puisque la blockchain locale a largement grossi entre temps.



Comme on le voit, les optimisations de la blockchain locale et les instructions SSE4 permettent de ne plus être ralenti sur la fin.

C'est beau, les gains en performance ...  Grin
Bravo les développeurs Bitcoin Core !

sr. member
Activity: 810
Merit: 444
Non, la création des 100 adresses (de réceptions) dans le debug.log correspond bien au format non-HD du wallet.dat

En fait, tu peux demander 1-2-3-4-5 adresses de réceptions et Bitcoin Core ira donc t'afficher une des 100 adresses précédemment créées dans le wallet.dat lors de sa création à partir de zéro.
Ok, mais nous sommes bien d'accord qu'il n'y a pas une unique clé privée pour ces 100 adresses, ni même une clé privée pour plusieurs adresses, mais bien une clé privée par adresse (pour info, je ne suis pas allé voire le debug.log donc je ne sais pas ce qui s'y trouve, je parle du fichier issus de la commande "dumpwallet" dans la console : c'est dans ce fichier que tu trouves les 100 lignes avec clé privée, adresse bitcoin) ?

Oui c'est bien ça, 1 clé privée correspond a une unique adresse. Meuh si tu as un document sur ce que tu disais (1 clé privée pour 100 adresses).

Car quand je fais mon dumpprivkey par adresse j'ai bien une clé privée différente à chaque fois.

Du coup niveau sauvegarde ça change la donne il faut bien sauver toutes ces clé privée et pas uniquement celle du wallet ID (adresse de base du wallet).
Si tu demandes une nouvelle clé de réception dans un wallet non-HD, tu dois refaire une sauvegarde du Wallet.dat

Si tu demandes une nouvelle clé de réception dans un wallet HD, la sauvegarde n'est pas nécessaire si tu as bien le premier fichier généré après le cryptage par mot de passe.

Si j'ai bon souvenir, l'histoire des 100 adresses de réception lié à une seule clé privée est bien faux ... c'est dans un autre sujet (surement l'import d'une clé privée si j'ai bonne mémoire).

De mon coté, je n'utilise qu'une seule clé de réception par wallet.dat ... je n'ai donc jamais eu à me poser ce genre de question.




bitaddress confirme cet état en ne proposant qu'une adresse de réception par clé privée :

Code:
1,"1HpLkKdC1muXsfHQfpNEN7hpgxuq4F5Qdk","L3frk71Axqn5UQWLknSyRrL35tce5ERji9UAMhepU1D4L6EX5NWR"
2,"1PGyJTVSPz3HoqQP67VaSfFDiDcoYREb7q","L3KHSHaKP2ZXoHReN5dVxNCEmi1dTwjqcY4NAzZ6Z4JDeBBJ1f73"
3,"1Dtdv6JdL5UtBQeE8zz72s46ES4BT37PL1","L1pK5TqgDZnH3TWyWD9TrTMGePrbGVJSZN8uSg43dqhnUS975L2e"


j'ai modifié mon message plus haut pour les prochains lecteurs.
Merci à vous deux d'avoir confirmé ce que j'écrivais.

Non seulement l'ambiguité est levée et c'est important pour ma compréhension.
En plus, je suis heureux d'avoir, humblement, participé à l'amélioration de ce très bon topic/premier post :-).

J'imagine que cela aidera de futurs lecteurs.
legendary
Activity: 1512
Merit: 1011
Si tu demandes une nouvelle clé de réception dans un wallet non-HD, tu dois refaire une sauvegarde du Wallet.dat

Si tu demandes une nouvelle clé de réception dans un wallet HD, la sauvegarde n'est pas nécessaire si tu as bien le premier fichier généré après le cryptage par mot de passe.

Si j'ai bon souvenir, l'histoire des 100 adresses de réception lié à une seule clé privée est bien faux ... c'est dans un autre sujet (surement l'import d'une clé privée si j'ai bonne mémoire).

De mon coté, je n'utilise qu'une seule clé de réception par wallet.dat ... je n'ai donc jamais eu à me poser ce genre de question.




bitaddress confirme cet état en ne proposant qu'une adresse de réception par clé privée :

Code:
1,"1HpLkKdC1muXsfHQfpNEN7hpgxuq4F5Qdk","L3frk71Axqn5UQWLknSyRrL35tce5ERji9UAMhepU1D4L6EX5NWR"
2,"1PGyJTVSPz3HoqQP67VaSfFDiDcoYREb7q","L3KHSHaKP2ZXoHReN5dVxNCEmi1dTwjqcY4NAzZ6Z4JDeBBJ1f73"
3,"1Dtdv6JdL5UtBQeE8zz72s46ES4BT37PL1","L1pK5TqgDZnH3TWyWD9TrTMGePrbGVJSZN8uSg43dqhnUS975L2e"


j'ai modifié mon message plus haut pour les prochains lecteurs.
sr. member
Activity: 560
Merit: 250
Non, la création des 100 adresses (de réceptions) dans le debug.log correspond bien au format non-HD du wallet.dat

En fait, tu peux demander 1-2-3-4-5 adresses de réceptions et Bitcoin Core ira donc t'afficher une des 100 adresses précédemment créées dans le wallet.dat lors de sa création à partir de zéro.
Ok, mais nous sommes bien d'accord qu'il n'y a pas une unique clé privée pour ces 100 adresses, ni même une clé privée pour plusieurs adresses, mais bien une clé privée par adresse (pour info, je ne suis pas allé voire le debug.log donc je ne sais pas ce qui s'y trouve, je parle du fichier issus de la commande "dumpwallet" dans la console : c'est dans ce fichier que tu trouves les 100 lignes avec clé privée, adresse bitcoin) ?

Oui c'est bien ça, 1 clé privée correspond a une unique adresse. Meuh si tu as un document sur ce que tu disais (1 clé privée pour 100 adresses).

Car quand je fais mon dumpprivkey par adresse j'ai bien une clé privée différente à chaque fois.

Du coup niveau sauvegarde ça change la donne il faut bien sauver toutes ces clé privée et pas uniquement celle du wallet ID (adresse de base du wallet).
sr. member
Activity: 810
Merit: 444
Non, la création des 100 adresses (de réceptions) dans le debug.log correspond bien au format non-HD du wallet.dat

En fait, tu peux demander 1-2-3-4-5 adresses de réceptions et Bitcoin Core ira donc t'afficher une des 100 adresses précédemment créées dans le wallet.dat lors de sa création à partir de zéro.
Ok, mais nous sommes bien d'accord qu'il n'y a pas une unique clé privée pour ces 100 adresses, ni même une clé privée pour plusieurs adresses, mais bien une clé privée par adresse (pour info, je ne suis pas allé voire le debug.log donc je ne sais pas ce qui s'y trouve, je parle du fichier issus de la commande "dumpwallet" dans la console : c'est dans ce fichier que tu trouves les 100 lignes avec clé privée, adresse bitcoin) ?
legendary
Activity: 1512
Merit: 1011
Non, la création des 100 adresses (de réceptions) dans le debug.log correspond bien au format non-HD du wallet.dat

En fait, tu peux demander 1-2-3-4-5 adresses de réceptions et Bitcoin Core ira donc t'afficher une des 100 adresses précédemment créées dans le wallet.dat lors de sa création à partir de zéro.
sr. member
Activity: 810
Merit: 444
1) la clé privé est dans le wallet.dat ... le wallet.dat permet de lire une clé privée ... et de donner un suivi de toutes les clés de réception créées ... surtout si on en fait plus de 100 par exemple.

si on utilise qu'une clé privé seule, au bout de 100 adresses de réception créées, tu ne récupère plus tes autres adresses de réception (par exemple, les bitcoins reçues sur l'adresse 101 ou 102) si le wallet.dat n'a pas été enregistré entre temps.

le wallet.dat évolue en fonction du nombre d'adresses de réception.

au bout de 100 adresses de réception, le wallet.dat contient 2 clés privées et donc 200 adresses de réceptions maximum ... etcs ...

https://en.bitcoin.it/wiki/Wallet
Le texte que j'ai souligné ne correspond pas à ce que je constate : soit je comprends mal, soit il y a un mystère...

Avec la version actuelle de bitcoin core (14.1), option "HD wallet" non activée et je n'ai demandé qu'une création d'adresse.
Lorsque je regarde mon fichier dump, j'ai bien une centaine d'adresses de crées d'office par le wallet (ce qui si j'ai bien compris, correspond à la fonction HD du HD wallet, étonant alors que l'option HD n'est ps activée), mais j'ai bien aussi 100 clés privée : elles sont disposées l'une et l'autre accouplées sur la même ligne. Je n'ai pas une même clé privées qui correspondrait à plusieurs adresses.
sr. member
Activity: 560
Merit: 250
En faisant lire ce fihier de clé privée, est-ce que je retrouve tous mes bitcoins et mes transactions comme avec le fichier wallet.dat ?
 Si oui, quelle est donc l'intérêt de sauvegarder wallet.dat si la sauvegarde de la clé privée suffit ?
 Quand tu as plusieurs PC avec chacun une version de bitcoin.qt, comment faire pour qu'ils se dupliquent (synchronisent), avec les mêmes adresses, même clé privée, mêmes transactions, même soldes de bitoins ?

Je pense que c'est une histoire de confort pour l'utilisateur.

Quand tu fais une fresh install d'un bitcoin core (sans blockchain locale) que tu remets ton wallet.dat avant synchronisation, et bien tes transactions apparaissent dans bitcoin core, par contre ton solde lui se synchronise au fur et à mesure que la blockchain se synchronise.

Donc au premier coup d'oeil tu vois que tes transactions sont bien là (ce qui rassure énormément. Cheesy) et tu peux de fait savoir si il s'agit du bon wallet.dat.

Et si jamais des transactions plus récentes que la sauvegarde du wallet.dat ont été faites, elles apparaîtrons après synchronisation de la blockchain et seront ajoutées au wallet.dat. (logique mais je précise tout de même. Wink)
legendary
Activity: 1512
Merit: 1011
Représentation graphique de la difficulté à lire dans la blockchain locale au fur-et-à-mesure des révisions.
Ici, un wallet de 2014 avec plus de 142 000 confirmations sur une adresse.
Evidemment, le temps dépend de la machine employée.

legendary
Activity: 1512
Merit: 1011
Vérification périodique de mes fichiers wallet.dat

Ici, un fichier de juillet 2014.
45min pour le vérifier (dépend de la puissance du PC).



Aucun soucis, tous les petits bitcoins y sont.  Cheesy
legendary
Activity: 1512
Merit: 1011
1) la clé privé est dans le wallet.dat ... le wallet.dat permet de lire une clé privée ... et de donner un suivi de toutes les clés de réception créées ... surtout si on en fait plus de 100 par exemple.

si on utilise qu'une clé privé seule, au bout de 100 adresses de réception créées, tu ne récupère plus tes autres adresses de réception (par exemple, les bitcoins reçues sur l'adresse 101 ou 102) si le wallet.dat n'a pas été enregistré entre temps.

le wallet.dat évolue en fonction du nombre d'adresses de réception.

au bout de 100 adresses de réception, le wallet.dat contient 2 clés privées et donc 200 adresses de réceptions maximum ... etcs ...

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

correction : https://bitcointalksearch.org/topic/m.19015787


2) je ne sais pas ce que donne une gestion du wallet.dat à plusieurs endroit en même temps.

En général, on crée un wallet par endroit ... on y injecte le fond de caisse au début de la journée ... puis à la fin de la journée, les caisses envoient le fond de caisse qui vide le wallet de la caisse.

Les wallets des caisses sont donc vierge à la fin d'une journée (destruction du fichier wallet à faire).

Lorsque les caisses envoient leur montant, le wallet du patron récupère toutes les opérations qui ont été faites depuis la caisse (y compris la dépense du fond de caisse du début de journée).

La gestion d'un wallet n'a rien de différent d'un TPE carte bancaire ... il faut avoir le journal de vente et le wallet de l'autre pour comparer.

Sauf qu'avec bitcoin, on a pas besoin du wallet de la caisse une fois qu'elle a envoyé ses sous chez le patron ... car les sous montrent les transactions datées (traçabilité).

Si le journal de vente montre une vente absente de la somme reçu ... c'est que l'employé a utilisé une autre adresse pour recevoir le paiement (vol).




3) le wallet.dat est un moyen rapide de gérer la clé privé avec une historique d'utilisation (surtout si on a renseigné les en-têtes de chaque transaction).

Il n'a été pensé que dans ce but.

Je refuse d'avoir à noter ou à gérer la sauvegarde de la clé privé ... je veux un fichier.
En plus, il est crypté avec un mot de passe ce qui m'arrange encore plus ... là où une clé privée marqué au stylo peut être utilisée librement sans mot de passe.
legendary
Activity: 1260
Merit: 1046
J'espère que tu ne m'en voudra pas d'intervenir sur ce topic...

Si je comprends bien :

Wallet.dat comprends un index de toutes les transactions liées à nos adresses de réceptions.
Si je veux sauvegarder mes Bitcoins, il me suffit de sauvegarder ce fichier wallet.dat lorsque mon bitcoin.qt est synchronisé.
Inversement, si je veux récuperer mes bitcoins, par exempple sur un autre PC, j'y installe bitcoin.qt, je le synchronise avec le réeau et j'importe mon wallet.dat : tous mes bitcoins apparîtront ainsi que toutes mes transactions.

Par contre qu'en est-il de la clé privée ?
 Je peux la sauvegarder ans un fichier séparé.
 En faisant lire ce fihier de clé privée, est-ce que je retrouve tous mes bitcoins et mes transactions comme avec le fichier wallet.dat ?
 Si oui, quelle est donc l'intérêt de sauvegarder wallet.dat si la sauvegarde de la clé privée suffit ?
 Quand tu as plusieurs PC avec chacun une version de bitcoin.qt, comment faire pour qu'ils se dupliquent (synchronisent), avec les mêmes adresses, même clé privée, mêmes transactions, même soldes de bitoins ?

Merci si tu peu m'aider dans les réponses à ces questions.
legendary
Activity: 1512
Merit: 1011
Il faut donc comprendre une unique chose ... ce qui demande du temps à bitcoin core pour ouvrir votre wallet.dat ... ce n'est pas ce fichier justement.

Mais uniquement la lecture de vos fichiers de la blockchain.  Kiss

Vos fichiers !  Tongue

Vous comprenez donc que si vous ne téléchargez pas correctement et en entier la blockchain ... votre wallet.dat ... même s'il est correcte, ne pourra pas vous afficher vos transactions.  Embarrassed
legendary
Activity: 1512
Merit: 1011
Et à la fin, le panneau d'ouverture de bitcoin core laisse la place au programme général qui permet de gérer son wallet.dat

Ici, l'adresse qui a été scannée (puisque je n'utilise qu'une seule adresse dans mes wallet.dat) est utilisée pour recevoir de micro-création de bitcoin blanc comme neige : la récompense d'un mineur hobbyiste en bitcoins.  Cheesy

legendary
Activity: 1512
Merit: 1011
Comme vous le voyez au minutage du fichier DEBUG.LOG situé à coté du wallet.dat dans le dossier "blockchain" du logiciel bitcoin core ... cela peu durer assez longtemps et dépend de la puissance de votre PC (CPU et disque dur).

legendary
Activity: 1512
Merit: 1011
Voici une première photo.



Celle-ci vous montre la progression de bitcoin core à lire la blockchain sur votre PC (non, pas sur le réseau Bitcoin !).

Il "scanne" les fichiers de la blockchain à la recherche de vos transactions qui sont associées à votre clé privée ... liée à vos clés de réception.

En jaune, c'est des transactions qu'il a pu associer dans la blockchain de votre PC avec votre wallet.dat
legendary
Activity: 1512
Merit: 1011
 Wink un petit sujet photo pour les débutants qui ont un peu de peur de manipuler ce précieux fichier wallet.dat

si on vous montre comment il est utilisé, dans le programme Bitcoin Core, vous comprendrez un peu mieux pourquoi son poids peut varier de :
- 88ko avec 2 adresses cryptées sans transactions ...  Cool
- à 400ko  Grin
- une fois la blockchain lue et scannée  Wink
- pour y pêcher les transactions qui vont être remises dans votre suivi dans le logiciel Bitcoin Core  Kiss

ainsi, le poids du wallet.dat ... n'a pas une grande importance car ce n'est que la trace de votre transactions (que vous aurez peut-être renseignées avec vos notes).
ces traces ... sont relues à chaque fois que vous ré-implantez le wallet.dat dans le dossier "blockchain" de bitcoin core.

le plus important, dans un wallet.dat ... est bien de le sauvegarder chaque fois que l'on "demande" à bitcoin core ... une nouveau adresse de réception !  Lips sealed Lips sealed Lips sealed

C'est cette information qui est la plus critique ... raison pour laquelle, on conseille, depuis fin 2014-début 2015 ... de créer autant de wallet.dat différent pour éviter un crash épique de vos fonds.

Corrompre un wallet.dat est possible (crash disque dur, faute d'alimentation de la clé USB) ... mais en corrompre 10x wallet.dat avec de petites sommes dessus, c'est impossible !  Cheesy
Jump to: