Bitcoin Forum
November 02, 2024, 05:59:38 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27 28 29 30 31 »
  Print  
Author Topic: Encrypted wallet.dat, lost password, any solutions?  (Read 213588 times)
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 23, 2014, 07:54:03 AM
 #461

So, given that my old password is correct (which I am quite quite certain about), these would be the steps to follow?

1: Deinstalling current bitcoin client
2: Removing all data, blocks, and current wallet.dat
3: Downloading new Bitcoin client
4: Removing wallet.dat new bitcoin client
5: Inserting old wallet.dat in the folder where the new wallet.dat was located
6: Open command: "bitcoin-qt.exe -rescan"
7: Let the client rescan all the blocks and once it is finished, I should be able to make transfers with my old password

Am I correct here on these steps?

Best,

Clochard
telepatheic
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1


View Profile
May 23, 2014, 09:09:03 AM
 #462

So, given that my old password is correct (which I am quite quite certain about), these would be the steps to follow?

1: Deinstalling current bitcoin client
2: Removing all data, blocks, and current wallet.dat
3: Downloading new Bitcoin client
4: Removing wallet.dat new bitcoin client
5: Inserting old wallet.dat in the folder where the new wallet.dat was located
6: Open command: "bitcoin-qt.exe -rescan"
7: Let the client rescan all the blocks and once it is finished, I should be able to make transfers with my old password

Am I correct here on these steps?

Best,

Clochard

No need to remove all data and blocks. Other than that those are the right steps.
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 23, 2014, 09:25:49 AM
 #463

The problem is, again, that when I only remove the wallet.dat file and I insert the old wallet.dat backed up file, it still states the password is wrong.

When I am completely certain the password is correct...
telepatheic
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1


View Profile
May 23, 2014, 10:33:10 AM
 #464

The problem is, again, that when I only remove the wallet.dat file and I insert the old wallet.dat backed up file, it still states the password is wrong.

When I am completely certain the password is correct...

I can't work out what is wrong then. Try using btcrecover https://github.com/gurnec/btcrecover

If that doesn't work, your file has probably become corrupted and you will need an expert to have a look at it and see if it can be repaired.
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 23, 2014, 11:21:05 AM
 #465

I reinstalled the entire Bitcoin client, removed the new wallet.dat, introduced the backed up wallet.dat and opened the client. I can see my transactions but I cannot see saldo (probably after synchronizing) and I can still not change my password.

How the hell is that possible??

I have 1000% sure the correct password, I copy it from notepad into the field and it keeps repeating me it is incorrect.

Is there any way that the file has become corrupted or the password has changed?

And if I would manage to restart my old computer, would I be able to open my wallet there? The last time I tried to open my wallet there I got a system error: corrupt database

Anyone here that can help me out? It starts to stress me Wink

Many thanks!!

Clochard
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 23, 2014, 01:35:17 PM
 #466

I have been thinking it over and over and I came up with an idea what could be the cause (there is a small chance it is like this, but I cannot rule it out).

The keyboard of my old computer was sometimes malfunctioning, e.g. letters that did not appear on the screen despite hitting them.

Could it have been, that one or two letters continuously were not hit, while I thought I typed them and therefore wrote down on paper another password then I typed?

That could explain something. The shitty thing is, I later destroyed my keyboard when I trew over a glass of water, so now trying to get that computer to work and retype the password there is not going to work.

If however this is the case, bruteforcing it might help. But still, in my attempt to create a safe password I created a phrase of around 35 letters and numbers , so I am not sure how feasible it is to crack it...

In the mean time, I will keep looking for solutions. Any insight or advice is highly appreciated!

Best,

Clochard
DannyHamilton
Legendary
*
Offline Offline

Activity: 3472
Merit: 4801



View Profile
May 23, 2014, 02:08:37 PM
 #467

- snip -

The keyboard of my old computer was sometimes malfunctioning, e.g. letters that did not appear on the screen despite hitting them.

Could it have been, that one or two letters continuously were not hit, while I thought I typed them and therefore wrote down on paper another password then I typed?

- snip -

If however this is the case, bruteforcing it might help. But still, in my attempt to create a safe password I created a phrase of around 35 letters and numbers , so I am not sure how feasible it is to crack it...

- snip -

If you're just looking for a few missing characters in an otherwise exact password, it wouldn't be difficult to write a computer program that could try all possibilities. The program shouldn't take long at all to try them all and report back to you if any of them worked.
telepatheic
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1


View Profile
May 23, 2014, 02:17:47 PM
 #468

If you're just looking for a few missing characters in an otherwise exact password, it wouldn't be difficult to write a computer program that could try all possibilities. The program shouldn't take long at all to try them all and report back to you if any of them worked.

The program already exists: btcrecover. Use the
Code:
--typos-delete 
feature to test all deleted character possibilities.
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 23, 2014, 02:42:17 PM
 #469

Cool thanks, that might be an option to try!

First thing I will do now this weekend is to take out the hard disk of my old computer and connect it to another computer and see if I can launch the Bitcoin client from there and if there my password still works.

If not, I will take other steps such as the password recovery tool.

Just in case I am completely confused, I already wrote down the password  I think it is (pretty certain about it) plus some extra words and combinations I tend to use in other passwords, so I can try many possibilities.

I keep you updated about the process! Many thanks!

Best,

Clochard
Stan-O
Sr. Member
****
Offline Offline

Activity: 267
Merit: 250


Stan the Man!


View Profile
May 28, 2014, 07:39:25 PM
 #470

here's one that is probably very easy to figure out.  i know the first 7 characters of the passphrase, and have some combination of 4-8 numbers on the end, no spaces anywhere.

i tried using this script, but i'm sure it's going about it the wrong way.  I made a myriadcoind and the script runs, but looks like it would take forever and a day to actually find the password.  lil help?   thanks.

Code:
#!/usr/bin/ruby -w

passphrase = "Abcdefg12345678"

def test(phrase)
  print phrase, "\t"
  system("./myriadcoind", "walletpassphrase", phrase, "20")
  case $?.exitstatus
  when 0
    puts "Found it!  #{phrase}"
    exit 0
  when 127
    puts "myriadcoind not found in current dir"
    exit 1
  end
end

def scramble(passphrase)
  characters = " !\"\#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
  list = []

  # transpose adjacent chars
  (passphrase.length - 1).times do |i|
    testphrase = passphrase.dup
    testphrase[i] = passphrase[i+1]
    testphrase[i+1] = passphrase[i]
    list << testphrase
  end

  # delete one char
  passphrase.length.times do |i|
    testphrase = passphrase.dup
    testphrase = testphrase[0,i] + testphrase[(i+1)..-1]
    list << testphrase
  end

  # substitutute one char
  passphrase.length.times do |i|
    characters.chars.each do |c|
      testphrase = passphrase.dup
      testphrase[i] = c
      list << testphrase
    end
  end

  # insert one char
  (passphrase.length + 1).times do |i|
    characters.chars.each do |c|
      testphrase = passphrase.dup
      testphrase.insert(i, c)
      list << testphrase
    end
  end

  return list.uniq
end

list1 = scramble(passphrase)
list1.each { |i| test i }
list1.each { |i| scramble(i).each { |j| test j }}

puts "No luck."
exit 1
Revalin
Hero Member
*****
Offline Offline

Activity: 728
Merit: 500


165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g


View Profile
May 29, 2014, 03:15:17 AM
Last edit: May 29, 2014, 04:06:57 AM by Revalin
 #471

here's one that is probably very easy to figure out.  i know the first 7 characters of the passphrase, and have some combination of 4-8 numbers on the end, no spaces anywhere.

Start myraidcoind like this:
Code:
myriadcoind -rpcpass=some-password

Then run this script:
Code:
#!/usr/bin/ruby -w
require 'net/http'
require 'json'

start = "passphrase"
min_digits = 4
max_digits = 8

$rpc_user = ""
$rpc_pass = "some-password"
$rpc_port = 10889

def test(passphrase)
  puts passphrase.inspect
  request = Net::HTTP::Post.new("/")
  request.basic_auth $rpc_user, $rpc_pass
  request.body = { method:"walletpassphrase", params:[passphrase, 1] }.to_json
  response = Net::HTTP.new("localhost", $rpc_port).request(request)
  if response.code == "401" ; puts "Incorrect RPC user/pass" ; exit 1 ; end
  ret = JSON.parse response.body
  if ret["error"].nil? ; puts "\nFound it! #{passphrase.inspect}" ; exit ; end
  return if ret["error"]["code"] == -14 # wrong passphrase
  raise "WTF? #{ret.inspect}"
end

(min_digits..max_digits).each do |digits|
  (10**digits).times do |i|
    test("%s%0#{digits}d" % [start, i])
  end
end

puts "No luck."
exit 1

It'll take about 1 day for 6 digits, 2 weeks for 7, 3 months for 8.

      War is God's way of teaching Americans geography.  --Ambrose Bierce
Bitcoin is the Devil's way of teaching geeks economics.  --Revalin 165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g
Revalin
Hero Member
*****
Offline Offline

Activity: 728
Merit: 500


165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g


View Profile
May 29, 2014, 03:49:27 AM
 #472

For everyone asking about Multibit: Sorry, I don't have time to write an interface for it right now.  If someone creates a command line or JSON-RPC API I can use to test a password I'll be happy to plug my script into it.

Here is the JSON-RPC for recovering Multibit passwords.
This in only for Multibit, i'm working on Armory as well.

https://dl.dropboxusercontent.com/u/71434563/rpc-service.jar

This is interesting, but I don't want to touch it unless I can build it myself.  Can you post the source?

      War is God's way of teaching Americans geography.  --Ambrose Bierce
Bitcoin is the Devil's way of teaching geeks economics.  --Revalin 165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g
Stan-O
Sr. Member
****
Offline Offline

Activity: 267
Merit: 250


Stan the Man!


View Profile
May 29, 2014, 05:23:40 PM
 #473

here's one that is probably very easy to figure out.  i know the first 7 characters of the passphrase, and have some combination of 4-8 numbers on the end, no spaces anywhere.

Start myraidcoind like this:
Code:
myriadcoind -rpcpass=some-password

Then run this script:
Code:
#!/usr/bin/ruby -w
require 'net/http'
require 'json'

start = "passphrase"
min_digits = 4
max_digits = 8

$rpc_user = ""
$rpc_pass = "some-password"
$rpc_port = 10889

def test(passphrase)
  puts passphrase.inspect
  request = Net::HTTP::Post.new("/")
  request.basic_auth $rpc_user, $rpc_pass
  request.body = { method:"walletpassphrase", params:[passphrase, 1] }.to_json
  response = Net::HTTP.new("localhost", $rpc_port).request(request)
  if response.code == "401" ; puts "Incorrect RPC user/pass" ; exit 1 ; end
  ret = JSON.parse response.body
  if ret["error"].nil? ; puts "\nFound it! #{passphrase.inspect}" ; exit ; end
  return if ret["error"]["code"] == -14 # wrong passphrase
  raise "WTF? #{ret.inspect}"
end

(min_digits..max_digits).each do |digits|
  (10**digits).times do |i|
    test("%s%0#{digits}d" % [start, i])
  end
end

puts "No luck."
exit 1

It'll take about 1 day for 6 digits, 2 weeks for 7, 3 months for 8.

thanks Revalin.  i could swear it's 4 digits on the end.  

i'll give it a go and let you know how it turns out.

It's returning this error:

net/http: warning: Content-Type did not set; using application/x-www-form-urlenc
oded

and then a password attempt.  is it working?  it's runing through the passwords, but not sure if its actually applying them.
clochard
Member
**
Offline Offline

Activity: 99
Merit: 10


View Profile
May 29, 2014, 10:25:22 PM
 #474

I just wanted to share that I fixed it. For god's sake.

I took out the hard disk of my old pc, connected it to another one and took the wallet.dat file. I then imported it into blockchain. It asked for my password, I typed the password that I knew was connected to that wallet.dat file but did not work in my new computer and it worked.

Thanks for all the tips!

Best,

Clochard
Stan-O
Sr. Member
****
Offline Offline

Activity: 267
Merit: 250


Stan the Man!


View Profile
May 29, 2014, 10:44:15 PM
 #475

I just wanted to share that I fixed it. For god's sake.

I took out the hard disk of my old pc, connected it to another one and took the wallet.dat file. I then imported it into blockchain. It asked for my password, I typed the password that I knew was connected to that wallet.dat file but did not work in my new computer and it worked.

Thanks for all the tips!

Best,

Clochard

This got me to thinking.  I cloned my wallet VM a while back, and had been working off of the clone.   So, i shut down the clone, fired up the original, and there's my unencrypted MyriadCoin wallet.  imagine that!!  lol

thanks again Revalin for your help.  didn't need the script after all.
Revalin
Hero Member
*****
Offline Offline

Activity: 728
Merit: 500


165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g


View Profile
May 30, 2014, 03:32:01 AM
 #476

net/http: warning: Content-Type did not set; using application/x-www-form-urlencoded

and then a password attempt.  is it working?  it's runing through the passwords, but not sure if its actually applying them.

Yes, that's fine.  The wallet doesn't care about the content-type.  If you want to see everything it's doing in detail then make this change (add the middle line):

Code:
  response = Net::HTTP.new("localhost", $rpc_port).request(request)
  puts request.body, response.body
  if response.code == "401" ; puts "Incorrect RPC user/pass" ; exit 1 ; end

      War is God's way of teaching Americans geography.  --Ambrose Bierce
Bitcoin is the Devil's way of teaching geeks economics.  --Revalin 165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g
vauhoa
Copper Member
Member
**
Offline Offline

Activity: 80
Merit: 10


View Profile
June 09, 2014, 09:37:55 AM
 #477

Do you remember the day and hour the last time you had access to your BTC's?
Then I suggest you find a very good hypnotherapist that will recall all the information from your mind! javascript:void(0); If it works, don't forget me as I got Goxed!!! javascript:void(0); Best luck!!!
steelbuzz
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
June 14, 2014, 12:51:14 PM
 #478

Wow... It took you two years to fix this problem???  Huh
paythrough_team
Newbie
*
Offline Offline

Activity: 56
Merit: 0


View Profile
June 15, 2014, 01:54:50 AM
 #479

Lost password is a troublesome thing, and God bless you.
thiec
Hero Member
*****
Offline Offline

Activity: 854
Merit: 502



View Profile
June 24, 2014, 04:16:52 AM
 #480

Very nice thread. Mark it and i hope i wont visit here searching for my own mistake.

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27 28 29 30 31 »
  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!