Author

Topic: Missing 10 Characters in WIF Private Key - Can I recover them? (Read 1959 times)

member
Activity: 93
Merit: 26
Looks to me there the same and the @soferox one is legit,the other one by phrutis is a scam,my opinion only though.
member
Activity: 93
Merit: 26
@NotATether is helping @soferox
Update:

The OP has since identified two of the unknown WIF characters at the end. We managed to get Bitcrack running on his two GTX 1070's searching for the remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. Hopefully, it turns up with his lost WIF.
And then he answers, after I had said, that they are searching it there https://bitcointalksearch.org/topic/find-the-wif-challenge-5404406, where is a link to the challenge https://github.com/phrutis/wif500 and there you can see the damaged paper:
Suppose you do find the coins (which actually belong to @soferox) - how will you return them to him?
I thought that he would know it.


No, you were the first who said that two problems are connected, while they are not:
Are you sure that they are not?

@soferox
Can you give us an answer?
member
Activity: 93
Merit: 26
Yes that's the one I meant the 500 WIF by Phrutis,which one are you talking about ?
jr. member
Activity: 59
Merit: 1
Don't waste anytime on this,I found this during Covid lockdown when I was looking into my old wallets and keys I had and needed some help,I finished with them and thought this would be a cool thing to try,it's a scam,the OP put in a clearly fake picture,all burned instead of water damaged LOL,the Address is real the key is fake for that address,no one is so stupid to post the the real key,sure we can't break it now but in 10 years who knows,so the way he had it set up was you would join his group and be given a "range" and when you got 90% through the range you would contact him and then he would finish it up,this guy was on crack or something thinking people would actually do it,the range he sent you with HIS program is probably real but it was not searching for the key in the picture,only the real key is known to him and a few others maybe,garbage don't waste your time,if the OP is out there and reads this come back on here and talk,prove me wrong please others think your an idiot too,he won't.

You mean the 500 WIF? of the user Phrutis? or (something like that), this is not another Key, I remember that 500wif is 12 chars missing.
member
Activity: 93
Merit: 26
Don't waste anytime on this,I found this during Covid lockdown when I was looking into my old wallets and keys I had and needed some help,I finished with them and thought this would be a cool thing to try,it's a scam,the OP put in a clearly fake picture,all burned instead of water damaged LOL,the Address is real the key is fake for that address,no one is so stupid to post the the real key,sure we can't break it now but in 10 years who knows,so the way he had it set up was you would join his group and be given a "range" and when you got 90% through the range you would contact him and then he would finish it up,this guy was on crack or something thinking people would actually do it,the range he sent you with HIS program is probably real but it was not searching for the key in the picture,only the real key is known to him and a few others maybe,garbage don't waste your time,if the OP is out there and reads this come back on here and talk,prove me wrong please others think your an idiot too,he won't.
jr. member
Activity: 59
Merit: 1
Man really wish I'd have done at least 1 tx on this thing.
I know it's a long shot, but still: Any chance you ever signed a message to prove ownership of that address?

Thats a good idea, but ssadly this was a offline wallet from the start and never used, only ever deposited into.

Thanks tho Smiley
S.

Are you still trying?, cause I have my own programms for that, I can join to the search ASAP!  Cheesy
member
Activity: 93
Merit: 26
Or if you can confirm the @soferox partial key is this posted key that would be great,you worked with him and would know the answer to that question,I'd like to try it and would let my machine run 2 years but not without some confirmation from you or @sorerox.
member
Activity: 93
Merit: 26
It just made no sense on the Cracked site that if the key was recovered from the characters he put up that this would end up being a key that would not work that "they" would have to decode it,impossible to me,key found would be THE KEY,if I'm wrong about anything please let me know,I wouldnt waste my time on the eth key,I like to play with my program for partial keys but it's near impossible to actually find a real one.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
@NotATether is helping @soferox

~

@soferox
Can you give us an answer?

We never got anywhere near a solution, and besides, OP deleted his telegram account 3 months ago (or maybe it was autodeleted by TG) - That is where we were working from, hardly at all on Discord. Note that we were trying to recover an ETH private key from a screenshot which had some purple marker scribbles from Paint on it.
member
Activity: 93
Merit: 26
The damaged paper in the picture is burned not water damaged.
member
Activity: 196
Merit: 67
@NotATether is helping @soferox
Update:

The OP has since identified two of the unknown WIF characters at the end. We managed to get Bitcrack running on his two GTX 1070's searching for the remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. Hopefully, it turns up with his lost WIF.
And then he answers, after I had said, that they are searching it there https://bitcointalksearch.org/topic/find-the-wif-challenge-5404406, where is a link to the challenge https://github.com/phrutis/wif500 and there you can see the damaged paper:
Suppose you do find the coins (which actually belong to @soferox) - how will you return them to him?
I thought that he would know it.


No, you were the first who said that two problems are connected, while they are not:
Are you sure that they are not?

@soferox
Can you give us an answer?
legendary
Activity: 952
Merit: 1385
Suppose you do find the coins (which actually belong to @soferox) - how will you return them to him?
Some others think it too  Huh

No, you were the first who said that two problems are connected, while they are not:

member
Activity: 196
Merit: 67
It has nothing to do with original question (at least not based on what I know). OP claims he is still searching for his WIF, as he wrongly decoded some characters, and work continues. Nothing new is known.
It is true WIF500 is a very similar problem (similar combination of known characters and missing ones).
Find the WIF challenge https://github.com/phrutis/wif500
Suppose you do find the coins (which actually belong to @soferox) - how will you return them to him?
Some others think it too  Huh
legendary
Activity: 952
Merit: 1385

It has nothing to do with original question (at least not based on what I know). OP claims he is still searching for his WIF, as he wrongly decoded some characters, and work continues. Nothing new is known.
It is true WIF500 is a very similar problem (similar combination of known characters and missing ones).
jr. member
Activity: 149
Merit: 7
how this thing ended ? OP found it ?
legendary
Activity: 952
Merit: 1385
I guess so because His program can utilise Multiple GPUs where as bitcrack can only use 1 at a time. And for the guy posing the WIFsolver CUDA does it work with multiple GPUs.

You may always split the work. The same with BitCrack. There is even option to use the specified part of given range - so you may launch 8 instances with the same configuration and then specify for each device to process 1/8, 2/8, 7/8 of the range... I think I will add something like that to my program, good idea.
newbie
Activity: 6
Merit: 0
Since BitCrack already utlize GPU, do you think it's possible to achieve higher hashrate (with same device) by modifying his software?
[/quote]

I guess so because His program can utilise Multiple GPUs where as bitcrack can only use 1 at a time. And for the guy posing the WIFsolver CUDA does it work with multiple GPUs. I have 8 Tesla V100s on a 2x Xeon 256 GB ram server. Let me know if we wanna try out something before this Sunday. As i am flying out to a remote place for work and won't be available for 2 weeks unless there is network here and there sometimes.
legendary
Activity: 952
Merit: 1385

Since BitCrack already utlize GPU, do you think it's possible to achieve higher hashrate (with same device) by modifying his software?

For some cases my program is a least 2x faster than BitCrack.
https://github.com/PawelGorny/WifSolverCuda | https://bitcointalksearch.org/topic/wifsolvercuda-new-project-for-solving-wifs-on-gpu-5382190

About the subject - OP is working on the problem, but apparently the decoded characters were not correct, so there is much more work than expected.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
Hey Bro, I read through everything. I Know John Cantrell Wrote a program in Rust for seed phrases. We could tweak that and make it work for PKEYS.

Do you mean those software?
https://github.com/johncantrell97/bip39-solver-gpu
https://github.com/johncantrell97/bip39-solver-server

Let me try tweaking it and if it works Ill update you all and go from there. I have 8 Tesla V100s that may also help if need be. If anyone here is a Rust language Master please PM me as I am only Learning it.

Since BitCrack already utlize GPU, do you think it's possible to achieve higher hashrate (with same device) by modifying his software?
newbie
Activity: 6
Merit: 0
Hey Bro, I read through everything. I Know John Cantrell Wrote a program in Rust for seed phrases. We could tweak that and make it work for PKEYS. Let me try tweaking it and if it works Ill update you all and go from there. I have 8 Tesla V100s that may also help if need be. If anyone here is a Rust language Master please PM me as I am only Learning it.
jr. member
Activity: 37
Merit: 1
its more than 16 days now... I hope you could find something bro.
member
Activity: 78
Merit: 133
Check your pm for a python script

No python script...

As to everyone else who has been helping thank you so much. I will 100% give a bounty out to everyone that has added some help to this effort. I am really hoping the 2 newly identified characters are correct. Based on my estimation with a missing 8 characters and unsure if the second if its w, x, y, z it will take 3.9 days per run (w, x, y, z are the runs) so 3.9 x 4 is roughly ~16 days. I hope to come back with really good news and if not well lesson learned to get water proof paper lol...

Thank you all again,
S.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
~ remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. ~
These numbers don't look correct.
With 8 missing characters it should take less than 4 days (1/4 the reported runtime) to check all permutations.
Code:
58^8= 128,063,081,718,016 / 400,000,000 k/s = 320,157 s = 3.7 days

That's because he wasn't sure that the "w" at the beginning of "Kw" was correct so he wanted to check Kw, Kx, Ky and Kz just to be sure.
jr. member
Activity: 33
Merit: 1
Check your pm for a python script
legendary
Activity: 952
Merit: 1385
~ remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. ~
These numbers don't look correct.
With 8 missing characters it should take less than 4 days (1/4 the reported runtime) to check all permutations.
Code:
58^8= 128,063,081,718,016 / 400,000,000 k/s = 320,157 s = 3.7 days

I had different calculations... Anyway, the problem is that OP is unsure about one of known characters, so work must be multiplied *4.
legendary
Activity: 3472
Merit: 10611
~ remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. ~
These numbers don't look correct.
With 8 missing characters it should take less than 4 days (1/4 the reported runtime) to check all permutations.
Code:
58^8= 128,063,081,718,016 / 400,000,000 k/s = 320,157 s = 3.7 days
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
The OP has since identified two of the unknown WIF characters at the end.
I'm curious: how did they do this?
Was it something like mynonce's scenario?
Kw**********jcQ...

** -> paper / chemical analysis / recover characters
****** -> hole / no paper

It was through taking a hard look at the piece of paper, not any chemical analysis  Smiley
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
The OP has since identified two of the unknown WIF characters at the end.
I'm curious: how did they do this?
Was it something like mynonce's scenario?
Kw**********jcQ...

** -> paper / chemical analysis / recover characters
****** -> hole / no paper
full member
Activity: 233
Merit: 253
Update:
The OP has since identified two of the unknown WIF characters at the end.

Very good! But not that way? Do you know, how?

and for the WIF private key I'd have Kw**********jcQmKRPNTF8CU9H1thzC981DCrZgmS4m8ygXFCEk (this is just an example, no funds are here)

Is the paper missing after Kw or is there enough paper for some letters, so that the chemical analysis would help you to recover some more characters to make the calculation easier?

For example:
Kw**********jcQ...

** -> paper / chemical analysis / recover characters
****** -> hole / no paper

-> so you would have 6 missing characters
legendary
Activity: 952
Merit: 1385
Indeed. He contacted me and we have some estimations. With 10 missing characters it is really doubtful, but as he wants to risk with 2 extra characters, it is more realistic. My estimation for his cards was 400MKeys but with settings he sent me it will be a bit less. Estimation was 11 days, BUT unfortunately he said he is not sure about the beginning, so maybe it will be around 40 days total (11 days for Kz, Ky, Kx and around 7 days for Kw).
We will see…
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Update:

The OP has since identified two of the unknown WIF characters at the end. We managed to get Bitcrack running on his two GTX 1070's searching for the remaining 8 characters at a combined speed of 400Mkeys/s, over Discord.  The estimated runtime is 16 days. Hopefully, it turns up with his lost WIF.
member
Activity: 69
Merit: 53
@soferox

I have made test too 4 digit recovery take 75 to 80sec on single core CPU. 10 digit is way out of range for CPU.
but it's possible to code something for GPU just for WIF solving.
but it's depend on how much your address is holding and how much reward we are talking.

if it's worth it, hire coder who can make cuda kernel for bf WIF and its take few minutes to recover that.
but cuda coding is not cheap.
member
Activity: 78
Merit: 133
Man really wish I'd have done at least 1 tx on this thing.
I know it's a long shot, but still: Any chance you ever signed a message to prove ownership of that address?

Thats a good idea, but ssadly this was a offline wallet from the start and never used, only ever deposited into.

Thanks tho Smiley
S.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Man really wish I'd have done at least 1 tx on this thing.
I know it's a long shot, but still: Any chance you ever signed a message to prove ownership of that address?
member
Activity: 78
Merit: 133
Blah thats right. Man really wish I'd have done at least 1 tx on this thing.
full member
Activity: 233
Merit: 253
SO I may have gotten lucky and found an old screenshot of wallet that contains a Hash160 address. That is the public key right? Please tell me I just got lucky and can use the kangaroo stuff above?

No, with that Hash160 address, you calculate your Bitcoin address.
For example : 1B2Q8vPm5E5b8yxaNWUW5ZfdCR5Zu1KMJn

examples of public keys:

public key (uncompressed)
04b4632d08485ff1df2db55b9dafd23347d1c47a457072a1e87be26896549a87378ec38ff91d43e 8c2092ebda601780485263da089465619e0358a5c1be7ac91f4

public key (compressed)
02b4632d08485ff1df2db55b9dafd23347d1c47a457072a1e87be26896549a8737

or
03b4632d08485ff1df2db55b9dafd23347d1c47a457072a1e87be26896549a8737

they all start with 02, 03 or 04
length is 66 or 130 characters (0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f) letters can be upper case (A,B,C,D,E,F)
member
Activity: 78
Merit: 133
What kind of hardware did he have to solve 10 characters in 11 minutes! Thats awesome and is exactly what I need. going to look into this as well now!

You can't do it in that short time, as you don't have the public key.

1 year ago, user PawGo calculated exactly your case (10 missing WIF characters) but with the public key in less than 11 minutes.
Not bad, no?  Wink 10 missing WIF characters - Less than 11 minutes on old CPU. GPU performance - to be seen.
That's fantastic. I'll have to go back to check Pollard's kangaroo algorithm again.

SO I may have gotten lucky and found an old screenshot of wallet that contains a Hash160 address. That is the public key right? Please tell me I just got lucky and can use the kangaroo stuff above?

Thanks,
S.
member
Activity: 78
Merit: 133
What kind of hardware did he have to solve 10 characters in 11 minutes! Thats awesome and is exactly what I need. going to look into this as well now!

You can't do it in that short time, as you don't have the public key.

1 year ago, user PawGo calculated exactly your case (10 missing WIF characters) but with the public key in less than 11 minutes.
Not bad, no?  Wink 10 missing WIF characters - Less than 11 minutes on old CPU. GPU performance - to be seen.
That's fantastic. I'll have to go back to check Pollard's kangaroo algorithm again.

Ok that makes sense. Seems like bitcrack is my only hope at this point. Thank you for your continued help. Should I solve this I would love to pay everyone a bounty who has helped Smiley

Thanks,
S.
full member
Activity: 233
Merit: 253
What kind of hardware did he have to solve 10 characters in 11 minutes! Thats awesome and is exactly what I need. going to look into this as well now!

You can't do it in that short time, as you don't have the public key.

1 year ago, user PawGo calculated exactly your case (10 missing WIF characters) but with the public key in less than 11 minutes.
Not bad, no?  Wink 10 missing WIF characters - Less than 11 minutes on old CPU. GPU performance - to be seen.
That's fantastic. I'll have to go back to check Pollard's kangaroo algorithm again.
member
Activity: 78
Merit: 133
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.
Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.
So that would be very easy. ~60 missing bits, we would have the private key within minutes.

1 year ago, user PawGo calculated exactly your case (10 missing WIF characters) but with the public key in less than 11 minutes.

Not bad, no?  Wink 10 missing WIF characters - Less than 11 minutes on old CPU. GPU performance - to be seen.
That's fantastic. I'll have to go back to check Pollard's kangaroo algorithm again.

Thread: Using Kangaroo for WIF solving https://bitcointalksearch.org/topic/--5315607



Edit: PawGo posted

Hi,
1) you may check my program WifSolver to see if it helps.
https://github.com/PawelGorny/WifSolver

2) in your case I think it is possible to convert program into task for BitCrack. Using Gpu solution will be find much faster. Let me know if you need help with configuring bitcrack - how to configure range start/stop, stride etc

3) BUT! If you say that you know publickey, we may use even faster solution, Kangaroo. I have prepared a special version of it to work with custom stride, somewhere on the forum I post explanation how it works. If it works, for 10 missing characters result will be done in VERY reasonable time.

Check the post:
https://bitcointalksearch.org/topic/--5315607

What kind of hardware did he have to solve 10 characters in 11 minutes! Thats awesome and is exactly what I need. going to look into this as well now!
**EDIT** I just saw he did it with just a CPU. Thats crazy! But I don't have public key, so thats not gonna help me much right? And since this address has never sent anything I can't get it right?
member
Activity: 78
Merit: 133

Pollard's Kangaroo method also uses a start and end range. However, it does not support strides (AFAIK) because Pollard's Kangaroo algo is using it's own kind of stride while making the tame and wild kangaroos hop. There's no way to tell Kangaroo: "OK, there is a part of the private key at the end that's already known, don't search those bits". The consequence is that for this particular situation, Kangaroo will take longer to find the PK (way too long actually).



Normal Kangaroo yes, but I have already patched it for solving WIFs, custom stride is supported. Link in post above

I will check it out. I have two 1070s in a rig I can dedicate this too, so hopefully it can do some fast solving. I will message back if I need help. Thank you!

Also I should note I only have the WIF key and public address. I don't have the private address or public key. THe WIF is missing 10 character exactly due to damage of paper wallet. Does this make any difference?
legendary
Activity: 952
Merit: 1385

Pollard's Kangaroo method also uses a start and end range. However, it does not support strides (AFAIK) because Pollard's Kangaroo algo is using it's own kind of stride while making the tame and wild kangaroos hop. There's no way to tell Kangaroo: "OK, there is a part of the private key at the end that's already known, don't search those bits". The consequence is that for this particular situation, Kangaroo will take longer to find the PK (way too long actually).



Normal Kangaroo yes, but I have already patched it for solving WIFs, custom stride is supported. Link in post above
full member
Activity: 233
Merit: 253
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.
Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.
So that would be very easy. ~60 missing bits, we would have the private key within minutes.

1 year ago, user PawGo calculated exactly your case (10 missing WIF characters) but with the public key in less than 11 minutes.

Not bad, no?  Wink 10 missing WIF characters - Less than 11 minutes on old CPU. GPU performance - to be seen.
That's fantastic. I'll have to go back to check Pollard's kangaroo algorithm again.

Thread: Using Kangaroo for WIF solving https://bitcointalksearch.org/topic/--5315607



Edit: PawGo posted

Hi,
1) you may check my program WifSolver to see if it helps.
https://github.com/PawelGorny/WifSolver

2) in your case I think it is possible to convert program into task for BitCrack. Using Gpu solution will be find much faster. Let me know if you need help with configuring bitcrack - how to configure range start/stop, stride etc

3) BUT! If you say that you know publickey, we may use even faster solution, Kangaroo. I have prepared a special version of it to work with custom stride, somewhere on the forum I post explanation how it works. If it works, for 10 missing characters result will be done in VERY reasonable time.

Check the post:
https://bitcointalksearch.org/topic/--5315607
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Keep in mind that this method is significantly slower than to simply test each character permutation.
You see each character at the start of the string (from left) converts to a much bigger integer than any character from the end of the string. So even the difference between 1 char missing becomes huge.
Take the following example:
Ky**DfuvLpt8eSb8EQzhZwDCQeCaycKeAoxJMY8pfPZXmn3uB38R
Even though only 2 characters are missing the difference between Ky11Df... and KyzzDf... as integer is
Code:
13491826005831086771641399365157222283117801812915393869332949675679483454208
While the permutations are only 3364.

The program I'm using is able to skip-count so I think that can mitigate the speed penalty. So I can jump through each next value, adding the huge difference to the previous each time to get the next.
legendary
Activity: 1042
Merit: 2805
Bitcoin and C♯ Enthusiast
Do you have a faster way I can do this with GPUs? I have used your tool, but with just CPU its going to take far too long for 10 missing characters.
Unfortunately I haven't been able to add GPU support to FinderOuter yet.
member
Activity: 78
Merit: 133
And then I pasted the characters after the lost 10 chars inside the page. Before the characters, I pated the 'w' (since you know you have that), followed the 10 characters lowest possible private keys that still base-58 encode into w........JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 - replace the dots with 10 "1" (the number one) characters. Because 1 is the first digit of base8 number system. The resulting hex gives the starting range.
Keep in mind that this method is significantly slower than to simply test each character permutation.
You see each character at the start of the string (from left) converts to a much bigger integer than any character from the end of the string. So even the difference between 1 char missing becomes huge.
Take the following example:
Ky**DfuvLpt8eSb8EQzhZwDCQeCaycKeAoxJMY8pfPZXmn3uB38R
Even though only 2 characters are missing the difference between Ky11Df... and KyzzDf... as integer is
Code:
13491826005831086771641399365157222283117801812915393869332949675679483454208
While the permutations are only 3364.

Do you have a faster way I can do this with GPUs? I have used your tool, but with just CPU its going to take far too long for 10 missing characters.
legendary
Activity: 1042
Merit: 2805
Bitcoin and C♯ Enthusiast
And then I pasted the characters after the lost 10 chars inside the page. Before the characters, I pated the 'w' (since you know you have that), followed the 10 characters lowest possible private keys that still base-58 encode into w........JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 - replace the dots with 10 "1" (the number one) characters. Because 1 is the first digit of base8 number system. The resulting hex gives the starting range.
Keep in mind that this method is significantly slower than to simply test each character permutation.
You see each character at the start of the string (from left) converts to a much bigger integer than any character from the end of the string. So even the difference between 1 char missing becomes huge.
Take the following example:
Ky**DfuvLpt8eSb8EQzhZwDCQeCaycKeAoxJMY8pfPZXmn3uB38R
Even though only 2 characters are missing the difference between Ky11Df... and KyzzDf... as integer is
Code:
13491826005831086771641399365157222283117801812915393869332949675679483454208
While the permutations are only 3364.
member
Activity: 78
Merit: 133
...
This will probably not take minutes unless you have a large GPU farm, but a few weeks is a more accurate estimate. Since Bitcrack can only talk to 1 GPU as far as I know.

Without an outgoing transaction, we don't have the public key, it will take longer.

Pollard's Kangaroo method also uses a start and end range. However, it does not support strides (AFAIK) because Pollard's Kangaroo algo is using it's own kind of stride while making the tame and wild kangaroos hop. There's no way to tell Kangaroo: "OK, there is a part of the private key at the end that's already known, don't search those bits". The consequence is that for this particular situation, Kangaroo will take longer to find the PK (way too long actually).

Bitcrack, on the other hand, lets us specify an arbitrarily large stride and it converts it to a 256-bit int. Since in this case, 80% of the private key is already known, we can make the stride equal to that huge PK chunk at the end and effectively, only search keys between Kw11111111...... and Kwzzzzzzzzzz.......

so I am plugging the value into that site: w1111111111JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 and for hex I am getting:

64 B3 82 BA 7E 44 5B 0F 02 B1 26 EE 95 04 62 B9 E3 A8 8D 67 7C 5D E1 74 E6 44 88 6D 5B 20 F8 8F F0 10 E5 FF A5 C0. I feel like I am doing something wrong on the site.

Any insight? I am not getting the hex values you got in your original post.

My hex for w1111111111 came from the following input: w1111111111JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7oQX1cWCo92tAA3ihLJ7 (I accidentally duplicated the last part).

Ok, so I get how to get the range for the start and finish in hex to then use in the --keyspace. What I don't know is how did you get the decimal number that starts with 244 that goes after --stride?

Also do I plug the public address in anywhere?

Thank you,
S.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
...
This will probably not take minutes unless you have a large GPU farm, but a few weeks is a more accurate estimate. Since Bitcrack can only talk to 1 GPU as far as I know.

Without an outgoing transaction, we don't have the public key, it will take longer.

Pollard's Kangaroo method also uses a start and end range. However, it does not support strides (AFAIK) because Pollard's Kangaroo algo is using it's own kind of stride while making the tame and wild kangaroos hop. There's no way to tell Kangaroo: "OK, there is a part of the private key at the end that's already known, don't search those bits". The consequence is that for this particular situation, Kangaroo will take longer to find the PK (way too long actually).

Bitcrack, on the other hand, lets us specify an arbitrarily large stride and it converts it to a 256-bit int. Since in this case, 80% of the private key is already known, we can make the stride equal to that huge PK chunk at the end and effectively, only search keys between Kw11111111...... and Kwzzzzzzzzzz.......

so I am plugging the value into that site: w1111111111JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 and for hex I am getting:

64 B3 82 BA 7E 44 5B 0F 02 B1 26 EE 95 04 62 B9 E3 A8 8D 67 7C 5D E1 74 E6 44 88 6D 5B 20 F8 8F F0 10 E5 FF A5 C0. I feel like I am doing something wrong on the site.

Any insight? I am not getting the hex values you got in your original post.

My hex for w1111111111 came from the following input: w1111111111JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7oQX1cWCo92tAA3ihLJ7 (I accidentally duplicated the last part).
member
Activity: 78
Merit: 133
I thought WIF keys that began with K or L were compressed keys and WIF keys that began with 5 were the uncompressed ones? Also I am a bit confused how I get those big numbers with only the public address and a WIF key that is missing characters. Could you elaborate anymore? I apologize I am fairly new to learning about all this.

Yeah you're right - my memory was a bit rusty. In any case just replace the -u flag with -c.

I simply converted the base58 of the lower characters to decimal (and hex). First I went to this page: https://www.dcode.fr/base-58-cipher

And then I pasted the characters after the lost 10 chars inside the page. Before the characters, I pated the 'w' (since you know you have that), followed the 10 characters lowest possible private keys that still base-58 encode into w........JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 - replace the dots with 10 "1" (the number one) characters. Because 1 is the first digit of base8 number system. The resulting hex gives the starting range.

Then to get the end range, you repeat the process but instead of ten 1 characters, you insert 10 'z' characters (the highest character in base58 is lowercase 'z').

To get the stride, I simply converted the lower part of the base58 you had (the one after the dots).

To determine the start and end ranges and the stride, you only need part of the WIF, not the public address.

These steps will create a range and strie that is suitable to input inside Bitcrack.
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.

Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.

No problem, because Bitcrack is more efficient than Kangaroo for your problem (also, Kangaroo will only work if you have the public key, not the address).

Really? I thought with 10 missing characters that was 58^10th or a large number and it was going to take centuries to solve this. How exactly do I solve this in minutes? What tool should I use, or is there something custom? I am willing to pay a bounty for someone assisting me to set this up on machine.


58**10 is a very large number, however to estimate the difficulty, you need the equivalent power in base 2, so what we do is we take the log2 of the result: log2(58**10). Then if gives us the difficulty in bits: such that 2**bits == 58**10 (here, bits equals 58.a_fractional_part).

Difficulty can also be written as "10 base 8 characters", but its common for programs to estimate it in terms of bits as well.

This will probably not take minutes unless you have a large GPU farm, but a few weeks is a more accurate estimate. Since Bitcrack can only talk to 1 GPU as far as I know.

so I am plugging the value into that site: w1111111111JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 and for hex I am getting:

64 B3 82 BA 7E 44 5B 0F 02 B1 26 EE 95 04 62 B9 E3 A8 8D 67 7C 5D E1 74 E6 44 88 6D 5B 20 F8 8F F0 10 E5 FF A5 C0. I feel like I am doing something wrong on the site.

Any insight? I am not getting the hex values you got in your original post.
full member
Activity: 233
Merit: 253
the paper turned to mush. There is no hope of any kind of analysis.
Do you have the compressed/uncompressed public key or outgoing transactions from that address?

I thought, you have the public key too.

You said above that we could do it in minutes. Is that not possible now since we don't have any outgoing TXs?
...
This will probably not take minutes unless you have a large GPU farm, but a few weeks is a more accurate estimate. Since Bitcrack can only talk to 1 GPU as far as I know.

Without an outgoing transaction, we don't have the public key, it will take longer.

I wish you good luck.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
I thought WIF keys that began with K or L were compressed keys and WIF keys that began with 5 were the uncompressed ones? Also I am a bit confused how I get those big numbers with only the public address and a WIF key that is missing characters. Could you elaborate anymore? I apologize I am fairly new to learning about all this.

Yeah you're right - my memory was a bit rusty. In any case just replace the -u flag with -c.

I simply converted the base58 of the lower characters to decimal (and hex). First I went to this page: https://www.dcode.fr/base-58-cipher

And then I pasted the characters after the lost 10 chars inside the page. Before the characters, I pated the 'w' (since you know you have that), followed the 10 characters lowest possible private keys that still base-58 encode into w........JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7 - replace the dots with 10 "1" (the number one) characters. Because 1 is the first digit of base8 number system. The resulting hex gives the starting range.

Then to get the end range, you repeat the process but instead of ten 1 characters, you insert 10 'z' characters (the highest character in base58 is lowercase 'z').

To get the stride, I simply converted the lower part of the base58 you had (the one after the dots).

To determine the start and end ranges and the stride, you only need part of the WIF, not the public address.

These steps will create a range and strie that is suitable to input inside Bitcrack.
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.

Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.

No problem, because Bitcrack is more efficient than Kangaroo for your problem (also, Kangaroo will only work if you have the public key, not the address).

Really? I thought with 10 missing characters that was 58^10th or a large number and it was going to take centuries to solve this. How exactly do I solve this in minutes? What tool should I use, or is there something custom? I am willing to pay a bounty for someone assisting me to set this up on machine.


58**10 is a very large number, however to estimate the difficulty, you need the equivalent power in base 2, so what we do is we take the log2 of the result: log2(58**10). Then if gives us the difficulty in bits: such that 2**bits == 58**10 (here, bits equals 58.a_fractional_part).

Difficulty can also be written as "10 base 8 characters", but its common for programs to estimate it in terms of bits as well.

This will probably not take minutes unless you have a large GPU farm, but a few weeks is a more accurate estimate. Since Bitcrack can only talk to 1 GPU as far as I know.
member
Activity: 78
Merit: 133
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.
Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.
So that would be very easy. ~60 missing bits, we would have the private key within minutes.
Really? I thought with 10 missing characters that was 58^10th or a large number and it was going to take centuries to solve this. How exactly do I solve this in minutes? What tool should I use, or is there something custom? I am willing to pay a bounty for someone assisting me to set this up on machine.

We don't have an outgoing transaction, so we can't do it with pollard or kangaroo.

You said above that we could do it in minutes. Is that not possible now since we don't have any outgoing TXs?

Thanks,
S.
full member
Activity: 233
Merit: 253
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.
Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.
So that would be very easy. ~60 missing bits, we would have the private key within minutes.
Really? I thought with 10 missing characters that was 58^10th or a large number and it was going to take centuries to solve this. How exactly do I solve this in minutes? What tool should I use, or is there something custom? I am willing to pay a bounty for someone assisting me to set this up on machine.

We don't have an outgoing transaction, so we can't do it with pollard or kangaroo.
member
Activity: 78
Merit: 133
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.

Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.

So that would be very easy. ~60 missing bits, we would have the private key within minutes.

Really? I thought with 10 missing characters that was 58^10th or a large number and it was going to take centuries to solve this. How exactly do I solve this in minutes? What tool should I use, or is there something custom? I am willing to pay a bounty for someone assisting me to set this up on machine.
full member
Activity: 233
Merit: 253
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.

Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.

So that would be very easy. ~60 missing bits, we would have the private key within minutes.
member
Activity: 78
Merit: 133
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.

Sadly this was an offline wallet, so it only ever had incoming transaction. It has never sent out.
member
Activity: 78
Merit: 133
See my answer on Jean Luc's Kangaroo thread:

I have a question. Recently there was a flood and a notebook containing a offline wallet was damage and it destroyed part of a WIF private key, so now I basically have:

Kw**********(I have the next 40 characters, just not posting for obvious reasons), so I am missing 10 characters in all.

I also have the public key. Is it possible to use this software to start a search at Kw... and iterate over the missing 10 characters with the known 40 characters also in the key.

For example : 1GuqEWwH5iRZ89oo5xw26FqmyZFMWZrtPi - is the public address

and for the WIF private key I'd have Kw**********JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7

basically I want to always have search for private key start at 'Kw', then search for missing 10, and end with 'JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7'

Any advice is appreciated and examples are even more appreciated

Thank you,
S.

The "K" at the beginning stands for an uncompressed private key so effectively one character is ruled out.

You should probably use bitcrack with a stride of "244 62 8 66 47 124 80 157 248 14 101 42 20 166 75 38 90 171 48 143 193 217 43 86 127 213 68 99 176 225 142 231 221 232 209 1 232 119 87 59 159 250 92" (these are grouped in three digits - where there's less than three digits then put zeros at the beginning).

Then you set the start range to "62 15 48 27 224 252 140 123 196 154 246 145 249 147 190 242 245 119 253 137 57 120 87 229 177 249 235 57 188 105 162 106 16 38 232 62 226 68 207 61 60 159 137 16 30 135 117 115 185 255 165 192" (3E 0F 30 1B E0 FC 8C 7B C4 9A F6 91 F9 93 BE F2 F5 77 FD 89 39 78 57 E5 B1 F9 EB 39 BC 69 A2 6A 10 26 E8 3E E2 44 CF 3D 3C 9F 89 10 1E 87 75 73 B9 FF A5 C0, or: w1111111111JzXa.....)

and the end range to "63 53 101 37 224 105 133 154 79 164 116 14 184 245 198 239 210 247 218 39 60 17 143 67 53 249 245 92 6 253 234 184 11 67 248 114 161 110 81 101 39 66 237 125 158 135 117 115 185 255 165 192" (3F 35 65 25 E0 69 85 9A 4F A4 74 0E B8 F5 C6 EF D2 F7 DA 27 3C 11 8F 43 35 F9 F5 5C 06 FD EA B8 0B 43 F8 72 A1 6E 51 65 27 42 ED 7D 9E 87 75 73 B9 FF A5 C0, or: wzzzzzzzzzzJzXa....).

Make sure you only search for uncompressed keys to speed things up.

In one command:

./bitcrack -u --keyspace 0x3E0F301BE0FC8C7BC49AF691F993BEF2F577FD89397857E5B1F9EB39BC69A26A1026E83EE244C F3D3C9F89101E877573B9FFA5C0:0x3F356525E069859A4FA4740EB8F5C6EFD2F7DA273C118F4335F9F55C06FDEAB80B43F872A16E5 1652742ED7D9E877573B9FFA5C0 --stride 2440620080660471240801572480141010420201660750380901710481431932170430861272130 68099176225142231221232209001232119087059159250092

It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.

Note: it's important to place your public address at the end of the command (after the stride), although I did not write that in the other post.
'

I thought WIF keys that began with K or L were compressed keys and WIF keys that began with 5 were the uncompressed ones? Also I am a bit confused how I get those big numbers with only the public address and a WIF key that is missing characters. Could you elaborate anymore? I apologize I am fairly new to learning about all this.
full member
Activity: 233
Merit: 253
It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.
If there is an outgoing transaction, then with the un/compressed public key and kangaroo or pollard, also possible.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
See my answer on Jean Luc's Kangaroo thread:

I have a question. Recently there was a flood and a notebook containing a offline wallet was damage and it destroyed part of a WIF private key, so now I basically have:

Kw**********(I have the next 40 characters, just not posting for obvious reasons), so I am missing 10 characters in all.

I also have the public key. Is it possible to use this software to start a search at Kw... and iterate over the missing 10 characters with the known 40 characters also in the key.

For example : 1GuqEWwH5iRZ89oo5xw26FqmyZFMWZrtPi - is the public address

and for the WIF private key I'd have Kw**********JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7

basically I want to always have search for private key start at 'Kw', then search for missing 10, and end with 'JzXaqU2rcFSoaLaehAQHqoQX1cWCo92tAA3ihLJ7'

Any advice is appreciated and examples are even more appreciated

Thank you,
S.

The "K" at the beginning stands for an uncompressed private key so effectively one character is ruled out.

You should probably use bitcrack with a stride of "244 62 8 66 47 124 80 157 248 14 101 42 20 166 75 38 90 171 48 143 193 217 43 86 127 213 68 99 176 225 142 231 221 232 209 1 232 119 87 59 159 250 92" (these are grouped in three digits - where there's less than three digits then put zeros at the beginning).

Then you set the start range to "62 15 48 27 224 252 140 123 196 154 246 145 249 147 190 242 245 119 253 137 57 120 87 229 177 249 235 57 188 105 162 106 16 38 232 62 226 68 207 61 60 159 137 16 30 135 117 115 185 255 165 192" (3E 0F 30 1B E0 FC 8C 7B C4 9A F6 91 F9 93 BE F2 F5 77 FD 89 39 78 57 E5 B1 F9 EB 39 BC 69 A2 6A 10 26 E8 3E E2 44 CF 3D 3C 9F 89 10 1E 87 75 73 B9 FF A5 C0, or: w1111111111JzXa.....)

and the end range to "63 53 101 37 224 105 133 154 79 164 116 14 184 245 198 239 210 247 218 39 60 17 143 67 53 249 245 92 6 253 234 184 11 67 248 114 161 110 81 101 39 66 237 125 158 135 117 115 185 255 165 192" (3F 35 65 25 E0 69 85 9A 4F A4 74 0E B8 F5 C6 EF D2 F7 DA 27 3C 11 8F 43 35 F9 F5 5C 06 FD EA B8 0B 43 F8 72 A1 6E 51 65 27 42 ED 7D 9E 87 75 73 B9 FF A5 C0, or: wzzzzzzzzzzJzXa....).

Make sure you only search for uncompressed keys to speed things up.

In one command:

./bitcrack -u --keyspace 0x3E0F301BE0FC8C7BC49AF691F993BEF2F577FD89397857E5B1F9EB39BC69A26A1026E83EE244C F3D3C9F89101E877573B9FFA5C0:0x3F356525E069859A4FA4740EB8F5C6EFD2F7DA273C118F4335F9F55C06FDEAB80B43F872A16E5 1652742ED7D9E877573B9FFA5C0 --stride 2440620080660471240801572480141010420201660750380901710481431932170430861272130 68099176225142231221232209001232119087059159250092

It has a difficulty of log2(58**10) = 58.5798 bits, this is doable if you have a few GPUs.

Note: it's important to place your public address at the end of the command (after the stride), although I did not write that in the other post.
member
Activity: 78
Merit: 133
the paper turned to mush. There is no hope of any kind of analysis.

Do you have the compressed/uncompressed public key or outgoing transactions from that address?

I have the public address which will have transactions on it yes. Does that help any?
I basically only have the damage WIF key and the public address like in the example in original post.
full member
Activity: 233
Merit: 253
the paper turned to mush. There is no hope of any kind of analysis.

Do you have the compressed/uncompressed public key or outgoing transactions from that address?
member
Activity: 78
Merit: 133
and for the WIF private key I'd have Kw**********jcQmKRPNTF8CU9H1thzC981DCrZgmS4m8ygXFCEk (this is just an example, no funds are here)

Is the paper missing after Kw or is there enough paper for some letters, so that the chemical analysis would help you to recover some more characters to make the calculation easier?

For example:
Kw**********jcQ...

** -> paper / chemical analysis / recover characters
****** -> hole / no paper

-> so you would have 6 missing characters

the paper turned to mush. There is no hope of any kind of analysis.
member
Activity: 78
Merit: 133
I have a question. Recently there was a flood and a notebook containing a offline wallet was damage and it destroyed part of a WIF private key, so now I basically have:

do you have the seed phrase or only saved the PK?

Its just a PK from many many years ago.
full member
Activity: 233
Merit: 253
and for the WIF private key I'd have Kw**********jcQmKRPNTF8CU9H1thzC981DCrZgmS4m8ygXFCEk (this is just an example, no funds are here)

Is the paper missing after Kw or is there enough paper for some letters, so that the chemical analysis would help you to recover some more characters to make the calculation easier?

For example:
Kw**********jcQ...

** -> paper / chemical analysis / recover characters
****** -> hole / no paper

-> so you would have 6 missing characters
newbie
Activity: 1
Merit: 0
I have a question. Recently there was a flood and a notebook containing a offline wallet was damage and it destroyed part of a WIF private key, so now I basically have:

do you have the seed phrase or only saved the PK?
member
Activity: 78
Merit: 133
It was a paper wallet...
Chemical analysis of the paper  Smiley

There is nothing left. It mushed up the paper and ink. basically it has a big chunk missing out of the top left of it. Sad
full member
Activity: 233
Merit: 253
It was a paper wallet...
Chemical analysis of the paper  Smiley
member
Activity: 78
Merit: 133
What do you mean "it destroyed part of a WIF private key"?
Is the private key you talking about is on a piece of paper? I think I misunderstood the notebook is it the laptop?

That's too many missing characters actually some tools out there can only recover if the private key has missing 1 up to 5 characters.

However, would you mind to try the tool developed by Coding Enthusiast
Let's hope his tool will work to find the missing character you can find the tool from this thread below

- https://bitcointalksearch.org/topic/the-finderouter-a-bitcoin-recovery-tool-v0160-2022-09-19-5214021

Or go directly on Github https://github.com/Coding-Enthusiast/FinderOuter

It was a paper wallet, so yes the water destroyed the ink on the paper. I have already done a CPU based search and it was going to take like 2.5 centuries or something to solve it, so I am wanting to attempt with GPUs to see if I can solve this any faster. I know how FinderOuter works and with an i7 it can do around 74 million combos a second, but I am going to need something in the billions to solve this soon, and I know GPUs can definitely reach that height.

Thank you though for your answer Smiley

Thanks,
S.
legendary
Activity: 3374
Merit: 3095
Playbet.io - Crypto Casino and Sportsbook
What do you mean "it destroyed part of a WIF private key"?
Is the private key you talking about is on a piece of paper? I think I misunderstood the notebook is it the laptop?

That's too many missing characters actually some tools out there can only recover if the private key has missing 1 up to 5 characters.

However, would you mind to try the tool developed by Coding Enthusiast
Let's hope his tool will work to find the missing character you can find the tool from this thread below

- https://bitcointalksearch.org/topic/the-finderouter-a-bitcoin-recovery-tool-v0160-2022-09-19-5214021

Or go directly on Github https://github.com/Coding-Enthusiast/FinderOuter
member
Activity: 78
Merit: 133
I have a question. Recently there was a flood and a notebook containing a offline wallet was damage and it destroyed part of a WIF private key, so now I basically have:

Kw**********(I have the next 40 characters, just not posting for obvious reasons), so I am missing 10 characters in all.

I also have the public key. Is it possible to use this software to start a search at Kw... and iterate over the missing 10 characters with the known 40 characters also in the key.

For example : 1B2Q8vPm5E5b8yxaNWUW5ZfdCR5Zu1KMJn - is the public address

and for the WIF private key I'd have Kw**********jcQmKRPNTF8CU9H1thzC981DCrZgmS4m8ygXFCEk (this is just an example, no funds are here)

basically I want to always have search for private key start at 'Kw', then search for missing 10, and end with 'jcQmKRPNTF8CU9H1thzC981DCrZgmS4m8ygXFCEk'

Any advice is appreciated and examples are even more appreciated. I do have a programming background, but I don't have much experience programming to use GPUs, which I imagine I am going to need, so I am open to any and all suggestions, other than just giving the key over to someone. I will offer a reward to anyone who successfully helps me with this too.

Or is 10 characters just too many possible combos. All advice is much appreciated!

Thank you,
S.
Jump to: