Bitcoin Forum
November 06, 2024, 06:18:16 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Contenu de wallet.dat  (Read 4036 times)
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 10, 2013, 09:48:22 AM
 #1

Hello,

je découvre en exportant un fichier wallet.dat vers blockchain.info qu'il contient de nombreuses adresses bitcoin - des dizaines- dont je n'avais aucune idée (ça marche par exemple avec un wallet.dat tout neuf que je viens de créer).

Pouvez-vous m'éclairer sur ce contenu?


Je m'intéresse beaucoup à ce sujet car il y a quelques années j'ai constaté un virement d'un de mes wallets vers une adresse inconnue que je n'ai certainement pas exécuté moi-même. Je croyais ces bitcoins définitivement perdus, mais je me demande finalement s'ils n'ont pas été simplement virés vers une de ces adresses cachées et s'ils ne seraient donc pas récupérables avec le wallet.dat lui-même.

A ce moment-là, savez-vous comment je peux prendre connaissance de ces adresses sans exporter vers blockchain.info (je n'ai pas confiance... peut-être ai-je tort?). Y a-t-il une application qui me donnerait en clair le contenu intégral d'un fichier wallet.dat?

J'ajoute que si je remets la main sur ces bitcoins, je donnerai 1btc à celui qui m'auront aidé de manière significative (ou ceux, à ce moment-là le btc sera réparti).

Bien à vous.

kcud_dab
Legendary
*
Offline Offline

Activity: 1652
Merit: 1002


Bitcoin enthusiast!


View Profile
November 10, 2013, 11:18:41 AM
 #2

En fait le client Bitcoin-QT crée une 100 aine adresses dès le départ et pioche ensuite dans ces adresses quand il en a besoin :
 - à la création d'une nouvelle adresse de réception
 - pour récupérer la "monnaie" quand tu fais une transaction, ex quand tu envoie 1 BTC depuis une adresse qui en contient 2

L'intérêt de créer ses adresses à l'avance est d'éviter la perte des dernières adresses générées en cas de problème avec ton fichier wallet.dat : grâce à une ancienne sauvegarde de ton wallet.dat (donc qui contenait déjà les adresses que tu as "généré" par la suite) tu peux récupérer le tout.

Sinon il existe des softs pour explorer les wallet bitcoins, comme pywallet par ex :
-> https://bitcointalk.org/index.php?topic=34028.0


Edit : ça s'appelle le "keypool" la base qui contient les adresse pré-générées, et ça a été ajouté en octobre 2010
-> https://en.bitcoin.it/wiki/Key_pool
-> https://bitcointalk.org/index.php?topic=1414.0

jackjack
Legendary
*
Offline Offline

Activity: 1176
Merit: 1280


May Bitcoin be touched by his Noodly Appendage


View Profile
November 10, 2013, 12:10:06 PM
 #3

Je m'intéresse beaucoup à ce sujet car il y a quelques années j'ai constaté un virement d'un de mes wallets vers une adresse inconnue que je n'ai certainement pas exécuté moi-même. Je croyais ces bitcoins définitivement perdus, mais je me demande finalement s'ils n'ont pas été simplement virés vers une de ces adresses cachées et s'ils ne seraient donc pas récupérables avec le wallet.dat lui-même.
C'est exactement ça qu'il s'est passé
D'ailleurs tu peux en être sûr en vérifiant dans bitcion-qt: je parie qu'il ne manque pas le montant envoyé vers l'adresse inconnue

A ce moment-là, savez-vous comment je peux prendre connaissance de ces adresses sans exporter vers blockchain.info (je n'ai pas confiance... peut-être ai-je tort?). Y a-t-il une application qui me donnerait en clair le contenu intégral d'un fichier wallet.dat?
Comme kcud_dab l'a dit, pywallet le fait (et bientôt son successeur qui aura un autre nom), il suffit de lancer "python pywallet.py --dumpwallet" (peut-être à modifier suivant ta configuration)
Je suis le développeur de pywallet donc si t'as besoin d'aide pour l'utiliser, demande

A ma connaissance il n'existe actuellement aucun autre logiciel

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 10, 2013, 08:39:22 PM
 #4

Merci. Je regarde tout ça.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 10, 2013, 08:47:06 PM
 #5

J'ai des problèmes pour installer. Cela aurait-il un rapport avec le fait que je suis en 64bits?
jackjack
Legendary
*
Offline Offline

Activity: 1176
Merit: 1280


May Bitcoin be touched by his Noodly Appendage


View Profile
November 10, 2013, 08:49:56 PM
 #6

Windows? Tu as python? C'est quoi le problème exactement?

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 10, 2013, 10:46:23 PM
 #7

Effectivement j'arrive à voir les adresses qui constituent le pool, mais je ne trouve celle sur laquelle se trouvent les BTC perdus.

Le fichier wallet.dat que j'ai utilisé à l'époque n'était qu'une copie que j'ai ensuite effacée (avec un brouilleur): est-ce que le fait de copier un wallet.dat et ouvrir la copie dans bitcoin-qt génère de nouvelles adresses de pools? Parce que dans ce cas, ces nouvelles adresses ont été perdues lorsque j'ai effacé le fichier. Mais si ce n'est pas le cas, alors je n'y comprends rien.

Un peu déprimé ce soir, j'y croyais vraiment...

Un grand merci en tous cas.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 10, 2013, 10:49:04 PM
 #8

Je recommence:

"Effectivement j'arrive à voir les adresses qui constituent le pool, mais je ne trouve PAS celle sur laquelle se trouvent les BTC perdus.

Le fichier wallet.dat que j'ai utilisé à l'époque n'était qu'une copie que j'ai ensuite effacée (avec un brouilleur): est-ce que le simple fait d'ouvrir un wallet.dat dans bitcoin-qt génère de nouvelles adresses de pools? Parce que dans ce cas, ces nouvelles adresses ont été perdues lorsque j'ai effacé ce fichier qui n'était qu'une copie.

Mais si ce n'est pas le cas, alors je n'y comprends rien.

Un peu déprimé ce soir, j'y croyais vraiment...

Un grand merci en tous cas."
kcud_dab
Legendary
*
Offline Offline

Activity: 1652
Merit: 1002


Bitcoin enthusiast!


View Profile
November 10, 2013, 11:17:01 PM
 #9

Si aucune des adresses contenues dans ton wallet.dat ne contient tes BTC, j'ai bien peur qu'ils soient perdus :/
Je ne sais pas dans quel sens se vide la keypool, mais quand une adresse est sortie de la keypool une nouvelle est générée pour la remplir à nouveau.

Est ce que tu avais fait plus de 100 transaction / création d'adresse avec le fichier wallet.dat que tu as perdu ? Ça pourrait être une explication...

jackjack
Legendary
*
Offline Offline

Activity: 1176
Merit: 1280


May Bitcoin be touched by his Noodly Appendage


View Profile
November 11, 2013, 12:07:16 AM
 #10

Si aucune des adresses contenues dans ton wallet.dat ne contient tes BTC, j'ai bien peur qu'ils soient perdus :/
Je ne sais pas dans quel sens se vide la keypool, mais quand une adresse est sortie de la keypool une nouvelle est générée pour la remplir à nouveau.

Est ce que tu avais fait plus de 100 transaction SORTANTES/ création d'adresse avec le fichier wallet.dat que tu as perdu ? Ça pourrait être une explication...

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
FTWbitcoinFTW
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250



View Profile
November 11, 2013, 03:07:26 AM
 #11

Crée un compte sur blockchain.info et import le wallet : https://blockchain.info/fr/wallet/import-wallet

Au pire ça ne change rien, au mieux c'est une fausse manip sur pywallet

Bonne chance !

Lost coins only make everyone else's coins worth slightly more. Think of it as a donation to everyone.
it has lots of buttery taste..
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 11, 2013, 06:49:08 PM
 #12

Je récapitule, même si j'ai bien peu d'espoir de récupérer quoi que ce soit, afin que ce soit bien et que je clôture ce dossier une fois pour toute.

Si je comprends bien, les wallet.dat d'avant bitcoin-qt ne contenaient en natif qu'une seule adresse. C'est donc en utilisant bitcoin-qt avec un vieux fichier wallet.dat que l'accident est arrivé.

- J'avais stocké mon wallet.dat sur une clef USB, qui ne contenait qu'une seule adresse (c'était avant bitcoin-qt).
- J'ai décidé de virer des bitcoins à partir de ce fichier.
- Pour ce faire, je créée une copie que je place dans Roaming/... à l'endroit qu'il faut.
- Je fais mon virement.
- A ce moment, le logiciel Bitcoin-qt créée d'autres adresses dans la copie du wallet.dat.
- La monnaie est virée sur une nouvelle adresse disponible uniquement dans cette copie.
- Je supprime la copie, croyant que toute l'information est disponible dans ma clef USB.
- Or ce n'est pas le cas: il aurait fallu que je sauvegarde cette copie et non le fichier d'origine. Donc les bitcoins issus de la "monnaie rendue" sont perdus.


Est-ce plausible?

Pierre-Joseph Proudhon
Newbie
*
Offline Offline

Activity: 59
Merit: 0



View Profile
November 11, 2013, 08:39:33 PM
 #13

- J'avais stocké mon wallet.dat sur une clef USB, qui ne contenait qu'une seule adresse (c'était avant bitcoin-qt).
- J'ai décidé de virer des bitcoins à partir de ce fichier.
- Pour ce faire, je créée une copie que je place dans Roaming/... à l'endroit qu'il faut.
- Je fais mon virement.
- A ce moment, le logiciel Bitcoin-qt créée d'autres adresses dans la copie du wallet.dat.
- La monnaie est virée sur une nouvelle adresse disponible uniquement dans cette copie.
- Je supprime la copie, croyant que toute l'information est disponible dans ma clef USB.
- Or ce n'est pas le cas: il aurait fallu que je sauvegarde cette copie et non le fichier d'origine. Donc les bitcoins issus de la "monnaie rendue" sont perdus.
Est-ce plausible?

En tout cas le scénario est vraisemblable.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 11, 2013, 09:57:57 PM
 #14

Je suppose que de nombreux utilisateurs pas forcément avertis dans mon genre ont dû perdre pas mal de btc aussi.
crema (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
November 11, 2013, 09:59:28 PM
 #15

Et il faut donc sauvegarder le wallet.dat à chaque fois qu'on l'utilise. Eh ben...
kcud_dab
Legendary
*
Offline Offline

Activity: 1652
Merit: 1002


Bitcoin enthusiast!


View Profile
November 11, 2013, 10:56:30 PM
 #16

C'est effectivement un scénario possible si tu avais utilisé autre chose que bitcoin-qt.
Pour la remarque sur la sauvegarde, ce n'est justement plus le cas grâce à la keypool, même si dans le doute une sauvegarde supplémentaire ne fera jamais de mal.

binaryFate
Legendary
*
Offline Offline

Activity: 1512
Merit: 1012


Still wild and free


View Profile
November 11, 2013, 11:40:27 PM
 #17

Et il faut donc sauvegarder le wallet.dat à chaque fois qu'on l'utilise. Eh ben...
Non, ce serai absolument pas utilisable sinon. Juste toutes les 100 transactions sortantes (merci jackjack) maximum, par défaut. Tu peux augmenter 100 (par exemple à 10,000) avec une simple ligne de commande.

Monero's privacy and therefore fungibility are MUCH stronger than Bitcoin's. 
This makes Monero a better candidate to deserve the term "digital cash".
estenity
Hero Member
*****
Offline Offline

Activity: 1923
Merit: 538


View Profile
April 01, 2017, 09:42:09 AM
 #18

utile, merci.
Looarn
Sr. Member
****
Offline Offline

Activity: 560
Merit: 250


View Profile
April 04, 2017, 07:15:58 AM
 #19

Bon comme ce sujet a été détéré, je vais dire une chose. Les bitcoins ne sont pas perdu.

Tu as la chance d'avoir la private key, il te suffit donc d'ajouter a ta liste d'adresse, l'adresse manquante, et quand  BitCoin core fera la vérification (le hash pour voir que c'est bien une des adresses qui correspond à la private key et bien elle apparaitra.

Donc ça c'est la théorie, pour la pratique, tu as soit la chance. Soit une grosse bidouille que je ne connais pas encore (faudrai que je cherche plus).

Donc pour le coup de poker, tu ouvres ton bitcoin-core tu vas dans la console et tu tapes :
listreceivedbyaddress

Tu aura la liste des adresses de réception utilisées. Si l'adresse en question est là, alors il faudra simplement faire un rescan de la chaîne de blocs locale pour voir les bitcoin apparaitre dans le protefeuille.

Si elle n'y est pas tu tapes alors
keypoolrefill 10000

Celà va créer 10 000 adresse de réception sur la base de la clé privée d'origine. Donc tu as une petite chance que l'adresse soit générer comme ceci.

Pour vérifier tu relance un listreceivedbyaddress pour voir si une nouvelle adresse est indexé.

Tu avances de 10 000 en 10 000 et théoriquement tu y arriveras.
C'est la méthode brutus là, mais tu as la clé privée, je rapelle ce qui est le plus important. Wink

Pour le faire proprement il faudrait pouvoir ajouter l'adresse directement dans la base de donnée du bitcoin-core.
C'est forcément faisable, pas forcément compliqué mais surement complexe. Wink

If my post help you, you can tip me in FeatherCoin here: 6wgNso1AWVuGy5P5Rpc2bBoVaNaKzbxmyi
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!