Bitcoin Forum
December 11, 2016, 04:23:36 AM *
News: To be able to use the next phase of the beta forum software, please ensure that your email address is correct/functional.
 
   Home   Help Search Donate Login Register  
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 172484 times)
veryveryinteresting
Member
**
Offline Offline

Activity: 60


View Profile
April 30, 2013, 04:52:11 PM
 #141

Every time it adds words from the word list, it places a symbol between them, and it doesn't try to add the words together without anything in them.

I have 4 words, but 7 total because three of them have capitalization variances.

1 symbol.

And between 2-4 numbers randomly in there.

For instance:

When I put that all in (with only "2" as the max number count), it generates ONLY 24 possibly passwords. Minimum 10 char, max 21. It didn't even put in any numbers, and all the potential passwords had 2 symbols in them.

 Huh

Well, I found the error. It turns out, that after adding a symbol it would call the function with the algorithm with one less parameter than expected. Instead of throwing an error, powershell defaulted to 0..

Here is a fixed version with a DEBUG mode, which you can enable (will probably make you understand how the passphrases are generated), note that it will slow it down quite a bit as printing takes up quite some time for a computer.

Also added an improvement where if the word is already max length, it will no longer add anything to it (and then find out it's too long anyway).

Sorry about not seeing this mistake :/..

http://pastebin.com/wwuYHzSu


No Problem! Thank you very much! I'll give it a shot now!

Turns out that the array stopped being built @ 300,000 guesses. I know there are more combinations, because I have 4 numbers, a symbol, and 4 words. Is 300,000 a hard limit for arrays?
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
1481430216
Hero Member
*
Offline Offline

Posts: 1481430216

View Profile Personal Message (Offline)

Ignore
1481430216
Reply with quote  #2

1481430216
Report to moderator
Rahazan
Newbie
*
Offline Offline

Activity: 14


View Profile
May 01, 2013, 11:26:28 PM
 #142

http://www.assemblein.info/powershell-2/command-to-increase-powershell-memory-limits/
cybrbeast
Member
**
Offline Offline

Activity: 93



View Profile
May 02, 2013, 04:54:00 PM
 #143

Great work going on in this thread, very nice to see you've been able to help people recover lost coins!

I was curious regarding the memory limit, is it necessary to store all possibilities in an array? If the number of possibilities is larger than the memory can contain, couldn't you simply remember the step the password generator algorithm is at, then test all the passwords, wipe the array and restart the password generator algorithm at the remembered point. In this way memory would never be limiting, only the time you're willing to wait.
Also couldn't you apply this method to speed up the cracking in some cases? You generate smaller arrays and test each one as it's finished before generating the next one. This way your script could already return a correct result if the right answer is contained in one of the earlier arrays.

malvino
Member
**
Offline Offline

Activity: 105



View Profile WWW
May 04, 2013, 07:07:32 PM
 #144

Just received this PM from Rahazan, looks great!

Quote from: Rahazan
Hello there,

(If this is the second time you receive this, it's because I was not sure whether the message was sent or not).

After a long night of learning the syntax of PowerShell (I only know Java and a little Clean) and debugging I have been able to program what you requested in this thread https://bitcointalk.org/index.php?topic=85495.120 . A way to get your coins back, hopefully.

http://pastebin.com/9MYBV9ve
It is fairly well documented, it should contain all the information you need.

The reason I didn't simply post this in the thread is because I have not been whitelisted yet (which I have requisted however). I will post it up in the thread for others to use when I am able to.
Time for some sleep now ;].

Hope it works for you

Regards,
Rahazan


His code is here:

Code:
# Bitcoin encrypted wallet somewhat-brute-force-recovery.
# Also works for litecoins probably (untested).
# By Rahazan
#
# Originally created for veryveryinteresting (VVI)
# https://bitcointalk.org/index.php?topic=85495.120
# My first ever powershell script, by the way.
# Pardon any convention I broke in this language (for I did not study any conventions of this language).

################################################################
# Recovered your coin     using this? Consider a donation to   #
# the AI student who scripted this :)                          #
# Donations BTC:    1FkXY2WVG9X4WqVuKdrSrX64ZTj9HgG34U         #
# Donations LTC:    LKdLS4seKpE2MNmt4t618oZV7v7tNkD6zL         #
################################################################


######################################################
# How does it work?
######################################################

# This script creates every possible combination in a depth-first order.
# After this it tries all of these. On my crappy laptop it achieved ~ 5 attempts per second.

######################################################
# How do I use this?
######################################################

# - Edit the values in the next block of this script to your likings, make sure you set your RPC password & username.
# - Run the daemon service found in Bitcoin\daemon  (bitcoind.exe)
# - Run this script (save as SOMENAME.ps1 and right click -> run with PowerShell.
# (To run it you might have to change some settings regarding allowing PowerShell scripts to run.. Google this.)
# (Press CTRL+C to cancel if you wish to stop it.)
# - Grab a cup of coffee as it tries a gazillion combinations.
# - Get your coin back.
# - Maybe donate a portion? ;)
# - DELETE THIS SCRIPT (Shred it!). It holds way too valuable information about your password!


######################################################
#Values you will probably want to set!
#Please note that the more free you make these variables, computation time will increase by A LOT.
######################################################

# Min/Max length of your password (included! so min:1 max: 3 would allow password length 1 but also length 3)
# So if you know the length, these should both be the same number.
[int] $global:minLength = 10
[int] $global:maxLength = 16

#Word list
$wordsList = @("abcd","efgh")
[int] $numWords = 2 #Amount of times one of these word blocks can exist in your pass

#Symbol list
$symbolList = @("&")
[int] $numSymbols = 1 #Amount of times one of these symbol blocks can exist in your pass

#Number list
$numberList = @("0","1","2","3","4","5","6","7","8","9") #Possible numbers, do not have to be single numbers. For instance it could be just "22" if you know you have that in your pass somewhere with numNumbers 1
[int] $numNumbers = 2 #Amount of times one of these number blocks can exist in your pass

#Option to print when adding a possibility to the list of possibilities.
#Consider making this false, it might make it somewhat faster (especially for very long passwords with small "blocks" in the lists.
$verbose = $TRUE


# Please put the correct RPC username/password below
$h = new-object Net.WebClient
$h.Credentials = new-object Net.NetworkCredential("RPCUSERNAME","RPCPASSWORD")
$h.Encoding = [Text.Encoding]::Default
# Above "Default" works for original encryption from the command line
# Change to "UTF8" when the GUI was used to encrypt (Was not necessary when tested -Rahazan)

[string[]]  $global:allPossibilities = @() #Empty array, you can manually add possibilities if you want (that you think will not be generated by the algorithm).

######################################################
# Time to create an array of all the possibilities! No need to change anything past this point.
######################################################



# Algorithm is next, it recursively builds the array of all possibilities.

Function generateAllPossibilities([string]$wordSoFar, $wordsList, $symbolList, $numberList, [int]$numWords, [int]$numSymbols, [int]$numNumbers)
{
    #Base case: Length of the created pass is too big, no need to further explore this node, go up one step in the tree.
if ($wordSoFar.length -gt $global:maxLength) {
        #Too long! Done with this branch!
        return
    }

   #Add the word to the possibilities if the right length
if ($wordSoFar.length -gt $global:minLength) {
$global:allPossibilities += $wordSoFar
}
   
if ($numWords -gt 0) {#Have not added max amount of words to this possibility yet.
        for ($i=0;$i -lt $wordsList.length; $i++) {
      generateAllPossibilities ($wordSoFar+$wordsList[$i]) $wordsList $symbolList $numberList ($numWords-1) $numSymbols $numNumbers
        }
}
   
if ($numSymbols -gt 0) {#Have not added max amount of symbols to this branch yet.
for ($i=0;$i -lt $symbolList.length; $i++) {
      generateAllPossibilities ($wordSoFar + $symbolList[$i]) $wordsList $symbolList $numberList ($numSymbols-1) $numNumbers
        }
}

if ($numNumbers -gt 0) {#Have not added max amount of nums to this branch yet.
for ($i=0;$i -lt $numberList.length; $i++) {
      generateAllPossibilities ($wordSoFar + $numberList[$i] ) $wordsList $symbolList $numberList $numWords $numSymbols ($numNumbers-1)
        }
}

}

[string]$wordsofar = ""

Write-Host "Generating all possibilities, may take a long time depending on the amount + size of the \"blocks\" you have given !"

#Calling the algorithm (function) above to fill the list!
generateAllPossibilities $wordSoFar $wordsList $symbolList $numberList $numWords $numSymbols $numNumbers

Write-Host "DONE Generating!"
Write-Host "Note: There seems to be a slight bug, about 1 in 100 of these strings break the rules (for instance 2 symbols where numSymbols was 1).. don't know why."
Write-Host "Will be printing all possibilities now:"


Write-Host $global:allPossibilities

Write-Host "===================="
Write-Host "Amount to be tested:"  $global:allPossibilities.length
Write-Host "Starting bruteforce!"
Write-Host "===================="
######################################################
# Time to start trying them one by one!
######################################################

$i = 0

# Somewhat altered code by 2112 -> from https://bitcointalk.org/index.php?topic=85495.msg1756901#msg1756901
$global:allPossibilities | foreach {
    $i++
    try {
        $p = $_
       
        if ($i%4 -eq 0) {
            Write-Host "   '$p' " $i "/" $global:allPossibilities.length
        }
        else {
         Write-Host "   '$p'" -nonewline
        }
       
        $r = $h.UploadString('http://localhost:8332/','{"method":"walletpassphrase","params":["'+$p+'",1]}')
        # Write-Output $r
        Write-Output "Correct password found!"
        Write-Output "'$p'"
        break
    }
    catch [Net.WebException] {
        $e = $_
        switch -wildcard ($e.Exception.Message) {
             "*(401) Unauthorized*" {
                  Write-Output "Fix the user/pass!"
                  Exit-PSSession
             }
             "*(500) Internal Server Error*" {
                  continue
             }
             default {
                  $e | Format-List -Force
                  Exit-PSSession
            }
        }
    }
}
#
# Exiting without success!
#
Write-Output "===================="

Write-Output "Exiting!"

I am running it now, after verifying it works with a newly encrypted wallet. I had to change my ExecutionPolicy settings in PowerShell (googled it as Rahazan suggested). I also googled and added a "pause" or Press Any Key to continue after the correct password is found, as running straight from the script simply closed the window after it was done, therefore not showing me the password.

Thanks Rahazan! If it works, I'll be sending you some BTC!


Any idea of running this script on a Mac?

Thanks!
malvino
Member
**
Offline Offline

Activity: 105



View Profile WWW
May 08, 2013, 08:48:19 AM
 #145

Just received this PM from Rahazan, looks great!

Quote from: Rahazan
Hello there,

(If this is the second time you receive this, it's because I was not sure whether the message was sent or not).

After a long night of learning the syntax of PowerShell (I only know Java and a little Clean) and debugging I have been able to program what you requested in this thread https://bitcointalk.org/index.php?topic=85495.120 . A way to get your coins back, hopefully.

http://pastebin.com/9MYBV9ve
It is fairly well documented, it should contain all the information you need.

The reason I didn't simply post this in the thread is because I have not been whitelisted yet (which I have requisted however). I will post it up in the thread for others to use when I am able to.
Time for some sleep now ;].

Hope it works for you

Regards,
Rahazan


His code is here:

Code:
# Bitcoin encrypted wallet somewhat-brute-force-recovery.
# Also works for litecoins probably (untested).
# By Rahazan
#
# Originally created for veryveryinteresting (VVI)
# https://bitcointalk.org/index.php?topic=85495.120
# My first ever powershell script, by the way.
# Pardon any convention I broke in this language (for I did not study any conventions of this language).

################################################################
# Recovered your coin     using this? Consider a donation to   #
# the AI student who scripted this :)                          #
# Donations BTC:    1FkXY2WVG9X4WqVuKdrSrX64ZTj9HgG34U         #
# Donations LTC:    LKdLS4seKpE2MNmt4t618oZV7v7tNkD6zL         #
################################################################


######################################################
# How does it work?
######################################################

# This script creates every possible combination in a depth-first order.
# After this it tries all of these. On my crappy laptop it achieved ~ 5 attempts per second.

######################################################
# How do I use this?
######################################################

# - Edit the values in the next block of this script to your likings, make sure you set your RPC password & username.
# - Run the daemon service found in Bitcoin\daemon  (bitcoind.exe)
# - Run this script (save as SOMENAME.ps1 and right click -> run with PowerShell.
# (To run it you might have to change some settings regarding allowing PowerShell scripts to run.. Google this.)
# (Press CTRL+C to cancel if you wish to stop it.)
# - Grab a cup of coffee as it tries a gazillion combinations.
# - Get your coin back.
# - Maybe donate a portion? ;)
# - DELETE THIS SCRIPT (Shred it!). It holds way too valuable information about your password!


######################################################
#Values you will probably want to set!
#Please note that the more free you make these variables, computation time will increase by A LOT.
######################################################

# Min/Max length of your password (included! so min:1 max: 3 would allow password length 1 but also length 3)
# So if you know the length, these should both be the same number.
[int] $global:minLength = 10
[int] $global:maxLength = 16

#Word list
$wordsList = @("abcd","efgh")
[int] $numWords = 2 #Amount of times one of these word blocks can exist in your pass

#Symbol list
$symbolList = @("&")
[int] $numSymbols = 1 #Amount of times one of these symbol blocks can exist in your pass

#Number list
$numberList = @("0","1","2","3","4","5","6","7","8","9") #Possible numbers, do not have to be single numbers. For instance it could be just "22" if you know you have that in your pass somewhere with numNumbers 1
[int] $numNumbers = 2 #Amount of times one of these number blocks can exist in your pass

#Option to print when adding a possibility to the list of possibilities.
#Consider making this false, it might make it somewhat faster (especially for very long passwords with small "blocks" in the lists.
$verbose = $TRUE


# Please put the correct RPC username/password below
$h = new-object Net.WebClient
$h.Credentials = new-object Net.NetworkCredential("RPCUSERNAME","RPCPASSWORD")
$h.Encoding = [Text.Encoding]::Default
# Above "Default" works for original encryption from the command line
# Change to "UTF8" when the GUI was used to encrypt (Was not necessary when tested -Rahazan)

[string[]]  $global:allPossibilities = @() #Empty array, you can manually add possibilities if you want (that you think will not be generated by the algorithm).

######################################################
# Time to create an array of all the possibilities! No need to change anything past this point.
######################################################



# Algorithm is next, it recursively builds the array of all possibilities.

Function generateAllPossibilities([string]$wordSoFar, $wordsList, $symbolList, $numberList, [int]$numWords, [int]$numSymbols, [int]$numNumbers)
{
    #Base case: Length of the created pass is too big, no need to further explore this node, go up one step in the tree.
if ($wordSoFar.length -gt $global:maxLength) {
        #Too long! Done with this branch!
        return
    }

   #Add the word to the possibilities if the right length
if ($wordSoFar.length -gt $global:minLength) {
$global:allPossibilities += $wordSoFar
}
   
if ($numWords -gt 0) {#Have not added max amount of words to this possibility yet.
        for ($i=0;$i -lt $wordsList.length; $i++) {
      generateAllPossibilities ($wordSoFar+$wordsList[$i]) $wordsList $symbolList $numberList ($numWords-1) $numSymbols $numNumbers
        }
}
   
if ($numSymbols -gt 0) {#Have not added max amount of symbols to this branch yet.
for ($i=0;$i -lt $symbolList.length; $i++) {
      generateAllPossibilities ($wordSoFar + $symbolList[$i]) $wordsList $symbolList $numberList ($numSymbols-1) $numNumbers
        }
}

if ($numNumbers -gt 0) {#Have not added max amount of nums to this branch yet.
for ($i=0;$i -lt $numberList.length; $i++) {
      generateAllPossibilities ($wordSoFar + $numberList[$i] ) $wordsList $symbolList $numberList $numWords $numSymbols ($numNumbers-1)
        }
}

}

[string]$wordsofar = ""

Write-Host "Generating all possibilities, may take a long time depending on the amount + size of the \"blocks\" you have given !"

#Calling the algorithm (function) above to fill the list!
generateAllPossibilities $wordSoFar $wordsList $symbolList $numberList $numWords $numSymbols $numNumbers

Write-Host "DONE Generating!"
Write-Host "Note: There seems to be a slight bug, about 1 in 100 of these strings break the rules (for instance 2 symbols where numSymbols was 1).. don't know why."
Write-Host "Will be printing all possibilities now:"


Write-Host $global:allPossibilities

Write-Host "===================="
Write-Host "Amount to be tested:"  $global:allPossibilities.length
Write-Host "Starting bruteforce!"
Write-Host "===================="
######################################################
# Time to start trying them one by one!
######################################################

$i = 0

# Somewhat altered code by 2112 -> from https://bitcointalk.org/index.php?topic=85495.msg1756901#msg1756901
$global:allPossibilities | foreach {
    $i++
    try {
        $p = $_
       
        if ($i%4 -eq 0) {
            Write-Host "   '$p' " $i "/" $global:allPossibilities.length
        }
        else {
         Write-Host "   '$p'" -nonewline
        }
       
        $r = $h.UploadString('http://localhost:8332/','{"method":"walletpassphrase","params":["'+$p+'",1]}')
        # Write-Output $r
        Write-Output "Correct password found!"
        Write-Output "'$p'"
        break
    }
    catch [Net.WebException] {
        $e = $_
        switch -wildcard ($e.Exception.Message) {
             "*(401) Unauthorized*" {
                  Write-Output "Fix the user/pass!"
                  Exit-PSSession
             }
             "*(500) Internal Server Error*" {
                  continue
             }
             default {
                  $e | Format-List -Force
                  Exit-PSSession
            }
        }
    }
}
#
# Exiting without success!
#
Write-Output "===================="

Write-Output "Exiting!"

I am running it now, after verifying it works with a newly encrypted wallet. I had to change my ExecutionPolicy settings in PowerShell (googled it as Rahazan suggested). I also googled and added a "pause" or Press Any Key to continue after the correct password is found, as running straight from the script simply closed the window after it was done, therefore not showing me the password.

Thanks Rahazan! If it works, I'll be sending you some BTC!


Any idea of running this script on a Mac?

Thanks!

Nobody?
Rampion
Legendary
*
Offline Offline

Activity: 1092


View Profile
May 08, 2013, 08:54:37 AM
 #146

Yeah, it would be cool to have Mac instructions Wink

sflicht
Newbie
*
Offline Offline

Activity: 19


View Profile
May 10, 2013, 11:56:30 PM
 #147

I feel a moron for this, but I locked myself out of my wallet (w/ about 2.5 BTC in it) today,
right after setting a passphrase. (I use bitcoin-qt.)

I tried all the obvious typing variants of the phrase, and then ran the Ruby script in this thread for an hour or so (basically through depth 2 of all 1-character substitutions into the passphrase I thought I was using).

Anyone have suggestions for next steps? I haven't "forgotten" anything about my passphrase; I even wrote it down "exactly" to store elsewhere for safekeeping. I don't have an unencrypted backup because I am a moron.

I run Ubuntu, but I am still nervous that my system might have been compromised somehow, although that's pretty unlikely. I didn't do anything in particular to secure the system (I don't encrypt my filesystem). I ran a couple of utilities to check for rootkits, but they didn't find anything suspicious.

So... somehow I must have mistyped the passphrase twice in a non-obvious way, which seems extraordinarily unlikely. I tried:
* Case inversion (caps lock)
* Adding punctuation and a space at the end
* All obvious variants for punctuation and capitalization in the passphrase
The script (I think) tried:
* All adjacent character swaps
* All 1-letter character changes
* Most 2-letter character changes

The form of the passphrase is (with capitalization and punctuation)
"Proper Name, Same Name; random word another Word"

Can anyone think of other good typing modifications to try?

If not, can anyone think what could be going on other than a strange repeated typo, or a malicious actor having installed (somehow!) a keylogger on my system and then changing the passphrase? Also I didn't have bitcoind installed at all until today, when I added it to run the Ruby script for brute-forcing the passphrase. Would it even be possible for someone else without physical access to my machine (which I'm fairly certain was safe) to have changed my passphrase with only bitcoin-qt installed on my system?

I've been using a version of bitcoin-qt installed via the Ubuntu package manner roughly 2 months ago (I think), and I have had some issues; once the block data got corrupted and I had to redownload the whole blockchain and start a new wallet, although this was before I owned any bitcoins, so I just moved on.  Could a buggy bitcoin installation have somehow caused my problem? Is it worth installing a new software wallet program and trying to import wallet.dat using that?
Rahazan
Newbie
*
Offline Offline

Activity: 14


View Profile
May 11, 2013, 01:07:35 AM
 #148

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac

cycloid
Sr. Member
****
Offline Offline

Activity: 420



View Profile WWW
May 11, 2013, 07:28:16 AM
 #149

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac



does this work on litecoin?

AdriKGB
Newbie
*
Offline Offline

Activity: 18


View Profile
May 12, 2013, 08:36:12 AM
 #150

I feel a moron for this, but I locked myself out of my wallet (w/ about 2.5 BTC in it) today,
right after setting a passphrase. (I use bitcoin-qt.)

I tried all the obvious typing variants of the phrase, and then ran the Ruby script in this thread for an hour or so (basically through depth 2 of all 1-character substitutions into the passphrase I thought I was using).

Anyone have suggestions for next steps? I haven't "forgotten" anything about my passphrase; I even wrote it down "exactly" to store elsewhere for safekeeping. I don't have an unencrypted backup because I am a moron.

I run Ubuntu, but I am still nervous that my system might have been compromised somehow, although that's pretty unlikely. I didn't do anything in particular to secure the system (I don't encrypt my filesystem). I ran a couple of utilities to check for rootkits, but they didn't find anything suspicious.

So... somehow I must have mistyped the passphrase twice in a non-obvious way, which seems extraordinarily unlikely. I tried:
* Case inversion (caps lock)
* Adding punctuation and a space at the end
* All obvious variants for punctuation and capitalization in the passphrase
The script (I think) tried:
* All adjacent character swaps
* All 1-letter character changes
* Most 2-letter character changes

The form of the passphrase is (with capitalization and punctuation)
"Proper Name, Same Name; random word another Word"

Can anyone think of other good typing modifications to try?

If not, can anyone think what could be going on other than a strange repeated typo, or a malicious actor having installed (somehow!) a keylogger on my system and then changing the passphrase? Also I didn't have bitcoind installed at all until today, when I added it to run the Ruby script for brute-forcing the passphrase. Would it even be possible for someone else without physical access to my machine (which I'm fairly certain was safe) to have changed my passphrase with only bitcoin-qt installed on my system?

I've been using a version of bitcoin-qt installed via the Ubuntu package manner roughly 2 months ago (I think), and I have had some issues; once the block data got corrupted and I had to redownload the whole blockchain and start a new wallet, although this was before I owned any bitcoins, so I just moved on.  Could a buggy bitcoin installation have somehow caused my problem? Is it worth installing a new software wallet program and trying to import wallet.dat using that?

In the following link:
https://en.bitcoin.it/wiki/Wallet_encryption

It says the following:
Wallet encryption uses AES-256-CBC to encrypt only the private keys that are held in a wallet. The keys are encrypted with a master key which is entirely random. This master key is then encrypted with AES-256-CBC with a key derived from the passphrase using SHA512 and OpenSSL's EVP_BytesToKey and a dynamic number of rounds determined by the speed of the machine which does the initial encryption (and is updated based on the speed of a computer which does a subsequent passphrase change).

I don't know if there could be any unforeseen behaviour of bug not detected yet which encrypts the wallet, but later, in order to decrypt, not all parameters above are correctly used...

It is just an idea... Just in case it helps.

Regards,
AdriKGB
Rahazan
Newbie
*
Offline Offline

Activity: 14


View Profile
May 12, 2013, 07:35:51 PM
 #151

~snip



does this work on litecoin?

I have not tested this, but I don't see why not.
sflicht
Newbie
*
Offline Offline

Activity: 19


View Profile
May 13, 2013, 03:45:12 AM
 #152

Well I just wrote these coins off, for now. My new wallet encrypts and decrypts fine, so it must really have been a typo, I guess. Sad

If anyone wants to have a go at cracking the wallet, PM me. I'll send you the .dat file and what I thought the password was, and if you can
crack it using a script like the one in this thread, you can keep a fraction of the contents of the wallet that seems fair.
reaver000
Newbie
*
Offline Offline

Activity: 10


View Profile
May 17, 2013, 04:41:40 PM
 #153

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac



does this work on litecoin?

Revalin's script does. I'm running it now. Change the bitcoind lines in the script and its good to go
cycloid
Sr. Member
****
Offline Offline

Activity: 420



View Profile WWW
May 17, 2013, 09:19:04 PM
 #154

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac



does this work on litecoin?

Revalin's script does. I'm running it now. Change the bitcoind lines in the script and its good to go

What kind of speed are you getting? I got a script from another user to help me out but it does 1 try a sec :/ 

bonksnp
Newbie
*
Offline Offline

Activity: 16


View Profile
May 18, 2013, 04:18:44 AM
 #155

if it really was you who put the password the best piece of hardware you can use right now is your brain

relax and try to recreate the whole scenario, time, place, mindset of when you were leaning on the bitcoin client, then put your hands on the keyboard, focus and start trying

hopefully the password will emerge

source: my own experience, I have set up a password on a 50 btc worth wallet. This is how it happened:

It was late night in a hostel, the only computer avaiable, not only a public a PC but I had to use standing up, and, to increase the anxiety level, I was drinking beer. Put the password and shutdown the PC. Then I left the place I was for three days, here is where I needed the password and: WTF?! Wrong password! Don't panic.  At this time the password only existed on my brain, then just said to myself I was going to remeber. I did exactly as I told you above. Took me one day to go back to the place I had set up the password. And two more days acting like "12:01" movie to finally extract it from my mind. The pass was a 12 chars long phrase.

Hope this inspires you. Cheesy
I know this is probably way out there, but I just wanted to say thanks for this. 

I recently was having trouble getting into my LTC wallet and even emailed myself clues as to what the password was.  But I could NOT get in.  I started googling solutions and came across this thread.  I read this post and I admit sorta rolled my eyes.  But figured "why not....what have I got to lose".  Turns out I ended up typing part of my anniversary wrong (even confirmed the date with the wife!  Grin) and it was still wrong.  Finally I said, "I wonder if I typed my daughters BD instead?" which happens to be the same numbers, just different format.  VIOLA.

So thanks for this!  If you accept LTC I'd love to send a few your way! Wink

Also, for anyone else who might be in the same predicament and hopefully save you some time and frustration.  I did quite a bit of googling and I'd guess probably 80% of the password issues people were having were from mistyping it in twice.  I know it seems like it would be difficult to do, but it's way more common than I would have thought.
reaver000
Newbie
*
Offline Offline

Activity: 10


View Profile
May 22, 2013, 02:38:45 PM
 #156

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac



does this work on litecoin?

Revalin's script does. I'm running it now. Change the bitcoind lines in the script and its good to go

What kind of speed are you getting? I got a script from another user to help me out but it does 1 try a sec :/ 

I'm getting about 5-8 a second with an i7. I let it run for a couple of days with no luck. Thinking about throwing a 2gh/s mining rig at it as I haven't cracked it yet. I've got 21 7950 gpu's so I'm sure I'll get it eventually, if the price rises enough to put all my rigs on it. I read an article about a 25 gpu monster chucking out 350 billion guesses a second. Theres only 380ish LTC in it so I'm not sure its worth it yet.
cycloid
Sr. Member
****
Offline Offline

Activity: 420



View Profile WWW
May 23, 2013, 12:13:03 AM
 #157

Here's a zip with a password generator given the password you know. There's a readme inside with instructions and more info.

What it contains:
A java program that generates a bunch of possibilities > Write all the possibilities to a .txt file.
A powershell script that tries these (original by 2112).

https://dl.dropboxusercontent.com/u/43693599/BTC%20LTC%20Passphrase%20Recovery.zip

As for mac users, google: Powershell Mac



does this work on litecoin?


yeha well i am dealing with a 15,000ltc wallet ... guess i can wait till ltc hits $100 (considerring i had this wallet since ltc was 6c its not a big deal) 

 At those prices I might just hire a team to get it done if I am still unsuccessful lol
Revalin's script does. I'm running it now. Change the bitcoind lines in the script and its good to go

What kind of speed are you getting? I got a script from another user to help me out but it does 1 try a sec :/ 

I'm getting about 5-8 a second with an i7. I let it run for a couple of days with no luck. Thinking about throwing a 2gh/s mining rig at it as I haven't cracked it yet. I've got 21 7950 gpu's so I'm sure I'll get it eventually, if the price rises enough to put all my rigs on it. I read an article about a 25 gpu monster chucking out 350 billion guesses a second. Theres only 380ish LTC in it so I'm not sure its worth it yet.

reaver000
Newbie
*
Offline Offline

Activity: 10


View Profile
May 24, 2013, 02:31:24 PM
 #158

I should say you need to be running linux. Windows seems to be very slow at this. I just dropped a 7950 into the I7 rig and it doesn't seem to have made much difference to the speed. Anyone know if these scripts benefit from GPU power?

On the 25 gpu rig they use a program called Hashcat. It can run millions of guesses a second on a cpu only rig, billions with a gpu cluster. I emailed the developer to see if it could be used for wallet recovery. Haven't heard back yet. I'll keep you posted if anything develops.
cycloid
Sr. Member
****
Offline Offline

Activity: 420



View Profile WWW
May 24, 2013, 07:32:59 PM
 #159

I should say you need to be running linux. Windows seems to be very slow at this. I just dropped a 7950 into the I7 rig and it doesn't seem to have made much difference to the speed. Anyone know if these scripts benefit from GPU power?

On the 25 gpu rig they use a program called Hashcat. It can run millions of guesses a second on a cpu only rig, billions with a gpu cluster. I emailed the developer to see if it could be used for wallet recovery. Haven't heard back yet. I'll keep you posted if anything develops.

yeha if hash cat was adopted to this ... my god I would set up at 500LTC reward to who ever does it.
 I would provide my wallet address so every one can see the moment my coins moved (moment i finally open it lol) I would transfer 500LTC

reaver000
Newbie
*
Offline Offline

Activity: 10


View Profile
May 24, 2013, 11:43:58 PM
 #160

From what I've read on the hashcat forum the dev has just got it to crack a truecrypt and he's adding an AES cipher. As far as I know AES is what wallets use so we might not be too far from running this. I'm no expert on how this stuff works so hopefully someone with more knowledge might jump in but it looks promising. Sort of puts wallet security into question though.

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:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!