Bitcoin Forum
September 25, 2017, 06:22:58 AM *
News: Latest stable version of Bitcoin Core: 0.15.0.1  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 [3]  All
  Print  
Author Topic: Private Key lost one character  (Read 4824 times)
j55rrt
Newbie
*
Offline Offline

Activity: 16


View Profile
June 16, 2016, 07:35:19 AM
 #41


yes, it is from bitaddress.org.
My private key start with 5KALGPT****.

Based on bitaddress, private key with 52 characters base58, starts with a 'K' or 'L

Indeed, default they'll give you a WIF Compressed private key, starting with K or L, so i wonder what happened since you ended up with 50 letters starting with a 5.
The two things popping to mind:

1) you used the wallet details to get a private key in WIF format, written it down and forgot 1 letter... Maybe even switched some other letters or couldn't read your handwriting
2) you've written down the WIF compressed PK, but forgot the initial K or L AND one extra letter... The odds of the second letter in the WIF compressed pk being 5 is pretty small tough...

I have to ask: is there any chance you might have printed out the page from bitaddress... Chances of mixing up letters and bad handwriting are pretty small on a printed piece of paper.... I know, it's a longshot, but it's certainly worth your effort to try and remember this

you are right.

Nothing loss to add extra K or L in front and run the script again, although the odds pretty small thought.
I used to tried to replace some character from my writing key, like "o" to zero, "f" to capital F.....perhaps i should spend much effort to try again and again with the script.

1506320578
Hero Member
*
Offline Offline

Posts: 1506320578

View Profile Personal Message (Offline)

Ignore
1506320578
Reply with quote  #2

1506320578
Report to moderator
Even if you use Bitcoin through Tor, the way transactions are handled by the network makes anonymity difficult to achieve. Do not expect your transactions to be anonymous unless you really know what you're doing.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1506320578
Hero Member
*
Offline Offline

Posts: 1506320578

View Profile Personal Message (Offline)

Ignore
1506320578
Reply with quote  #2

1506320578
Report to moderator
1506320578
Hero Member
*
Offline Offline

Posts: 1506320578

View Profile Personal Message (Offline)

Ignore
1506320578
Reply with quote  #2

1506320578
Report to moderator
mocacinno
Legendary
*
Offline Offline

Activity: 980


http://www.mocacinno.com


View Profile WWW
June 16, 2016, 08:30:46 AM
 #42

you are right.

Nothing loss to add extra K or L in front and run the script again, although the odds pretty small thought.
I used to tried to replace some character from my writing key, like "o" to zero, "f" to capital F.....perhaps i should spend much effort to try again and again with the script.



>10BTC is worth >$7k at current preev rate. If i were you, i'd try everything to get that money back. $7k is not the end of the world, but i'd have to work for a really long time in order to put $7k in my savings account...

You can try to interpolate all letters you're unsure about, generate addresses starting with K or L,.... Maye you'll get lucky Smiley
The other option is to offer a 10 or 20% finders fee and let some REALLY, REALLY, REALLY trusted member try to solve your problem. It's certainly something you shouldn't do very lightly, since it'll involve sending this person everything you know (including the written pk). If you take this path, defenately chose somebody who has been around for a long time, did business worth at least 100BTC on this forum, has a lot of green trust, didn't change his/her password recently, and can sign a message with a really old staked address. Sending over the private key should be a "last resort", but if it's chosing between forfeiting 10BTC or giving 2BTC finders fee and recuperating 8BTC with a reasonable risk, i'd chose the latter.

jackjack
Legendary
*
Offline Offline

Activity: 1106


May Bitcoin be touched by his Noodly Appendage


View Profile
June 21, 2016, 01:25:57 PM
 #43

Nearly everything has been said I think Sad

You can also try to generate many empty WIF private keys, write them down and then compare your writings with the original ones
With much luck you may find what errors you tend to make: mixing one letter with another, mixing two consecutive letters, capitalizing downcase letters, etc

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.
miguelmorales85
Sr. Member
****
Offline Offline

Activity: 328


Enjin Coin - Smart Cryptocurrency for Gaming.


View Profile
June 25, 2016, 10:25:34 AM
 #44


yes, it is from bitaddress.org.
My private key start with 5KALGPT****.

Based on bitaddress, private key with 52 characters base58, starts with a 'K' or 'L

Indeed, default they'll give you a WIF Compressed private key, starting with K or L, so i wonder what happened since you ended up with 50 letters starting with a 5.
The two things popping to mind:

1) you used the wallet details to get a private key in WIF format, written it down and forgot 1 letter... Maybe even switched some other letters or couldn't read your handwriting
2) you've written down the WIF compressed PK, but forgot the initial K or L AND one extra letter... The odds of the second letter in the WIF compressed pk being 5 is pretty small tough...

I have to ask: is there any chance you might have printed out the page from bitaddress... Chances of mixing up letters and bad handwriting are pretty small on a printed piece of paper.... I know, it's a longshot, but it's certainly worth your effort to try and remember this

you are right.

Nothing loss to add extra K or L in front and run the script again, although the odds pretty small thought.
I used to tried to replace some character from my writing key, like "o" to zero, "f" to capital F.....perhaps i should spend much effort to try again and again with the script.



I wonder if you could recover your key. update us please

kn_b_y
Newbie
*
Offline Offline

Activity: 28


View Profile
September 29, 2016, 10:37:10 PM
 #45

I missed the recent activity in this thread.

Here's another script that substitutes replacements from the base58 character set for each character in the bad wif, and then inserts all base58 chars at each position in the string.

So it should deal with all private keys that have one missing character plus one mistranscribed character.

It takes about 15 minutes to run on my old, slow laptop, but I've included progress output so that you can tell something is at least happening.

Code:
import bitcoin.base58
from bitcoin.core import b2x, x
from bitcoin.core import Hash
import sys

def replace_char(string, char, i):
    return string[:i]+char+string[i+1:]

def insert_char(string, char, i):
    return string[:i+1]+char+string[i+1:]

def verify_wif_checksum(wif):
    byte_string = b2x(bitcoin.base58.decode(wif))
    private = byte_string[:-8]
    checksum = byte_string[-8:]
    return checksum == b2x(Hash(x(private)))[:8]

def candidate_wifs(corrupted_wif):
    candidates = set()
    for i in range(len(corrupted_wif)):
        #print("%i of %i" % (i, len(corrupted_wif)),)
        sys.stdout.write("%3i of %3i : " % (i, len(corrupted_wif)))
        for char in bitcoin.base58.B58_DIGITS:
            sys.stdout.write(char)
            candidate_wif = replace_char(corrupted_wif, char, i)
            for c in insertion_candidates(candidate_wif):
                candidates.add(c)
        print()
    return candidates

def insertion_candidates(corrupted_wif):
    candidates = []
    for i in range(len(corrupted_wif)):
        for char in bitcoin.base58.B58_DIGITS:
            candidate_wif = insert_char(corrupted_wif, char, i)
            if verify_wif_checksum(candidate_wif):
                print("\nFound: %s" % candidate_wif)
                candidates.append(candidate_wif)
    return candidates

# Provide a WIF private key with a single missing character.
# Wrong Char              v
corrupted_wif = '5HueCGU8rkjxEXxiPuD5BDku4kFqeZyd4dZ1jvhTVqvbTLvyTJ'
#  Should be:   '5HueCGU8rMjxEXxiPuD5BDku4MkFqeZyd4dZ1jvhTVqvbTLvyTJ'
#  Missing Char                           ^
for candidate_wif in candidate_wifs(corrupted_wif):
    print(candidate_wif)
Pages: « 1 2 [3]  All
  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!