Pages:
Author

Topic: Keyhunt - development requests - bug reports - page 22. (Read 15202 times)

hero member
Activity: 862
Merit: 662
hi albert
@cixegz this user question https://bitcointalksearch.org/topic/m.58874670
its posible algebra and math tricks use to guess y odd is small or big range
                                                                           y even is small or big Roll Eyes range

No there is no way to do that...
newbie
Activity: 16
Merit: 1
Dear albertobsd,
can you develop an or is there algorithm to try to get public keys of the unsolved puzzles? example; puzzle 64, 66, 67, 68?
if we get the publickeys, the puzzles would be solved in less than minute.
Thanks in advance.

He already has that, its called pub2rmd mode its under Experimental modes

https://github.com/albertobsd/keyhunt#pub2rmd-mode

Keyhunt searches the whole range in pub2rmd mode. It searches in the range given in the link I shared above.
full member
Activity: 706
Merit: 111
Dear albertobsd,
can you develop an or is there algorithm to try to get public keys of the unsolved puzzles? example; puzzle 64, 66, 67, 68?
if we get the publickeys, the puzzles would be solved in less than minute.
Thanks in advance.

He already has that, its called pub2rmd mode its under Experimental modes

https://github.com/albertobsd/keyhunt#pub2rmd-mode
jr. member
Activity: 70
Merit: 1
hi albert
@cixegz this user question https://bitcointalksearch.org/topic/m.58874670
its posible algebra and math tricks use to guess y odd is small or big range
                                                                           y even is small or big Roll Eyes range
jr. member
Activity: 37
Merit: 1
Thank you for posting your idea!

but this idea is really rare to success and to happen, and it takes a lot of time to do searching in a such huge range space. We need a better algorithm to target public keys.
newbie
Activity: 16
Merit: 1
Dear albertobsd,
can you develop an or is there algorithm to try to get public keys of the unsolved puzzles? example; puzzle 64, 66, 67, 68?
if we get the publickeys, the puzzles would be solved in less than minute.
Thanks in advance.

I just know little python and I did something like this:  https://github.com/sezginyildirim91/keysubtracter

If it is adapted to the C language, it can be very productive.
jr. member
Activity: 37
Merit: 1
Dear albertobsd,
can you develop an or is there algorithm to try to get public keys of the unsolved puzzles? example; puzzle 64, 66, 67, 68?
if we get the publickeys, the puzzles would be solved in less than minute.
Thanks in advance.
hero member
Activity: 862
Merit: 662
Alberto,
Is there any road map for the project? Do you want to focus on new features or do you prefer to focus on improving performance of the existing code?
What about splitting code to avoid unnecessary ifs/switches?
Any plans to introduce stride?

https://github.com/albertobsd/keyhunt/discussions/142

What about splitting code to avoid unnecessary ifs/switches?

Yes that will be nice, the problem for that is that if I change some behavior in the main cycle of the process i will need to edit all those separate functions.

Any plans to introduce stride?

There are already stride, but it is not working properly i need to fix it.
BTW there are not stride for BSGS.



legendary
Activity: 952
Merit: 1386
Alberto,
Is there any road map for the project? Do you want to focus on new features or do you prefer to focus on improving performance of the existing code?
What about splitting code to avoid unnecessary ifs/switches?
Any plans to introduce stride?
member
Activity: 93
Merit: 10
Hello albertobsd i have a Questions outside and inside this awesome program that you have made.
i've been looking for correct answers for weeks, but everyone says differently so your the one who to ask, because you're a bitcoin expert here. Smiley
Questions:


So total  possible public keys are 2^256 and are mapped to a set of 2^160 (160 bits) addresses. Since there are more public keys and private keys than addresses, but every public key can be mapped to an 160 bits address, there must be then in average 2^256 / 2^160 = 2^96 keys to each address. so if there are 2^96 addresses for each bitcoin address, so does all that 2^96 addresses that one Address have, share ALL the same public key? because that's what you need  in order to have the same RIPEMD-160 hash. so only private key which changes, not public key with the 2^96 key possible keys per Address right?

==========

Another Question related:

So if all my thoughts are right, then from what i understood, All addresses of bitcoin exists only 1 TIME from the range ( 160 bits ) 0 - ( FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ), and the rest 2^96 addresses per address start to exists after the range of 2^160, so starting from 2^161. Is that also correct?


==========


Last Question.

Then if bitcoin addresses have 160 bits, can't we just try to Bruteforce that 160 bits from ( 0 - FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF )  Hex-Range with  high number of  Random peta/keys checks - - using BSGS, won't we have a 1 of 2^160 chance of unlocking any addresses that have the public key? can that work using BSGS right, or with BSGS that method doesn't work? (even with low chance, i still believe in luck)

==========

if you could answer all this three Question, then i really appreciate it!
Best regards.
You keep hearing different opinions because people have different understanding of public key. If someone assumes that wallet address itself is public key he will tell you that the key space is 2^160 remaining are just collisions. But if your are talking about actual public key then you have to search in the space of 2^256 to find a private key. If you are randomly using a public key in BSGS mod then the key space is 2^256. Here is the tradeoff if your using BSGS the speeds are in typpical pkeys/sec but the range is too large and a good ram will help you. But if you are hasing the public key to ripemd-160 the typical speed is mkeys/sec a good GPU will help you. But BSGS is best for solving puzzle. And about the luck part no offense but you are not understanding the odds, if you think you are that lucky pick up a rock outside your house and it will turnout to be a meteorite in which case you will earn millions.
-- by the way this is my understanding of bitcoin if i am wrong please correct me i am eager to learn
legendary
Activity: 952
Merit: 1386
Let me ask this about keyhunt, if we are searching for public keys, how come we have to search in the whole range? For example, if we are looking for key #120 we have to search in the whole range of 2^120?

For puzzle ranges are coming one by one and each range is bigger (wider?). But you do not launch search from the beginning (key=1), but in the specific range, which is in fact result of previous ranges.
full member
Activity: 233
Merit: 253
Let me ask this about keyhunt, if we are searching for public keys, how come we have to search in the whole range? For example, if we are looking for key #120 we have to search in the whole range of 2^120?

#120: private key is between 2^119 and 2^120 - 1
...
and the last key
#160: private key is between 2^159 and 2^160 - 1
full member
Activity: 706
Merit: 111
Let me ask this about keyhunt, if we are searching for public keys, how come we have to search in the whole range? For example, if we are looking for key #120 we have to search in the whole range of 2^120?
hero member
Activity: 862
Merit: 662
Did you mean "one private key may generate two different addresses, depending which public key is used"?

No, i mean the other thing that you said after:

and that's true that it would be possible that uncompressed public key from one priv key generates the same address as compressed pubkey from another priv key.
legendary
Activity: 952
Merit: 1386

Also one address can be generated from compressed or uncompressed publickey


Did you mean "one private key may generate two different addresses, depending which public key is used"?

All we may talk about are only numbers, and that's true that using hash which may produce maximally 2^160 results limits somehow the number of addresses. BUT: nowadays we do not have power to try each of them. We know there are collisions, but we cannot USE them.
And that's true that one private key produce public key which may be used in any of two forms, and that's true that it would be possible that uncompressed public key from one priv key generates the same address as compressed pubkey from another priv key. But we have only assumptions, no tools.

If one day we would create addresses based on other transformation of public key, we would be in completely different situation.

One remark - people have problems with exponentiation, as it is not in common use in every day life. We add, multiply... But in general it is no obvious to understand what is the difference between 2^10 and 2^11 comparing to 2*10 and 2*11.
And then to realize the difference between 2^60 and 2^64...
hero member
Activity: 862
Merit: 662
So total  possible public keys are 2^256 and are mapped to a set of 2^160 (160 bits) addresses. Since there are more public keys and private keys than addresses, but every public key can be mapped to an 160 bits address, there must be then in average 2^256 / 2^160 = 2^96 keys to each address. so if there are 2^96 addresses for each bitcoin address, so does all that 2^96 addresses that one Address have, share ALL the same public key? because that's what you need  in order to have the same RIPEMD-160 hash. so only private key which changes, not public key with the 2^96 key possible keys per Address right?

In theory there are 2^96 privatekeys for each bitcoin address. Yes! that is correct. And each one of those 2^96 private keys will generate a different publickey but all those 2^96 publickeys will generate the same rmd160 hash.

Also one address can be generated from compressed or uncompressed publickey

But actually no one has ever found one example.

So if all my thoughts are right, then from what i understood, All addresses of bitcoin exists only 1 TIME from the range ( 160 bits ) 0 - ( FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ), and the rest 2^96 addresses per address start to exists after the range of 2^160, so starting from 2^161. Is that also correct?

All addresses of bitcoin exists only 1 TIME from the range... there are no proof of that "ONLY ONE TIME..." maybe yes but repeat there is no proof of that.

There are the possibility that one address have 1 or more private keys under the range of 2^0 to 2^160
If my previous sentence is correct then that means that there are ranges of 160 bits that can haven't a specific address for example the "1111111111111111111114oLvT2" hash rmd160:  0000000000000000000000000000000000000000

We haven't enough computer power to prove  or disprove that, proof of that is that the puzzle 64 is still there.

Then if bitcoin addresses have 160 bits, can't we just try to Bruteforce that 160 bits from ( 0 - FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF )  Hex-Range with  high number of  Random peta/keys checks - - using BSGS, won't we have a 1 of 2^160 chance of unlocking any addresses that have the public key? can that work using BSGS right, or with BSGS that method doesn't work? (even with low chance, i still believe in luck)

Not really because there are 2^256 publickeys different for each other so unless that publickey was under that 2^160 range, only in that case it will be found.

But we still can't solve the publickey for the puzzle 120

Times to solve the puzzle 160 at specific speeds:

Code:
Puzzle 160 @ 1 Megakeys/s  (10^6):      23171956451847141650870193314248525 years
Puzzle 160 @ 1 Gigakeys/s  (10^9):      23171956451847141650870193314248 years
Puzzle 160 @ 1 Terakeys/s  (10^12):     23171956451847141650870193314 years
Puzzle 160 @ 1 Petakeys/s  (10^15):     23171956451847141650870193 years
Puzzle 160 @ 1 Exakeys/s  (10^18):      23171956451847141650870 years
Puzzle 160 @ 1 Zettakeys/s  (10^21):    23171956451847141650 years
Puzzle 160 @ 1 Yottakeys/s  (10^24):    23171956451847141 years
jr. member
Activity: 37
Merit: 1
Hello albertobsd i have a Questions outside and inside this awesome program that you have made.
i've been looking for correct answers for weeks, but everyone says differently so your the one who to ask, because you're a bitcoin expert here. Smiley
Questions:


So total  possible public keys are 2^256 and are mapped to a set of 2^160 (160 bits) addresses. Since there are more public keys and private keys than addresses, but every public key can be mapped to an 160 bits address, there must be then in average 2^256 / 2^160 = 2^96 keys to each address. so if there are 2^96 addresses for each bitcoin address, so does all that 2^96 addresses that one Address have, share ALL the same public key? because that's what you need  in order to have the same RIPEMD-160 hash. so only private key which changes, not public key with the 2^96 key possible keys per Address right?

==========

Another Question related:

So if all my thoughts are right, then from what i understood, All addresses of bitcoin exists only 1 TIME from the range ( 160 bits ) 0 - ( FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ), and the rest 2^96 addresses per address start to exists after the range of 2^160, so starting from 2^161. Is that also correct?


==========


Last Question.

Then if bitcoin addresses have 160 bits, can't we just try to Bruteforce that 160 bits from ( 0 - FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF )  Hex-Range with  high number of  Random peta/keys checks - - using BSGS, won't we have a 1 of 2^160 chance of unlocking any addresses that have the public key? can that work using BSGS right, or with BSGS that method doesn't work? (even with low chance, i still believe in luck)

==========

if you could answer all this three Question, then i really appreciate it!
Best regards.
hero member
Activity: 862
Merit: 662
@albertobsd

iknow r s1s2  value
i need z1z2 how to calculate

please learn algebra

if you have doubt of those post, please write your doubt there NOT HERE.

jr. member
Activity: 70
Merit: 1
@albertobsd

iknow r s1s2  value
i need z1z2 how to calculate
i read this post explain testnet ,i am not understad https://bitcointalksearch.org/topic/m.56686056
https://bitcointalksearch.org/topic/m.10669517 #read 1,3page

please explain stepy by step calulate z1z2  from bitcoin mainet or write code
hero member
Activity: 862
Merit: 662
Well i try to find those keys and it only found one of the first three.

Code:
albertobsd $ cat test.txt
039c069f5b3d1e4ac53e7c93b4b9cbc2a8b520ad25b227ecd5222f5f73e7ef8c92 # 90000000000000000000f000000000
02b33f524226b0db26cb8bcb2b374100bd1b3e07900f0be5402d1277e80d392479 # 90000000000000000000000f000000
028445b96038e322d51c173b19f3def3113e228d948fbaa0d4ebe6fdf1f21f834d # 900000000000000000000f00000000
albertobsd $ ./keyhunt -m bsgs -f test.txt -r 900000000000000000000000000000:900000000000000010000000000000 -k 128 -S -q
[+] Version 0.2.211117 SSE Trick or treat ¡Beta!, developed by AlbertoBSD
[+] K factor 128
[+] Quiet thread output
[+] Mode BSGS secuential
[+] Opening file test.txt
[+] Added 3 points from file
[+] Range
[+] -- from : 0x900000000000000000000000000000
[+] -- to   : 0x900000000000000010000000000000
[+] N = 0x100000000000
[+] Bloom filter for 536870912 elements : 1840.33 MB
[+] Bloom filter for 16777216 elements : 57.51 MB
[+] Bloom filter for 524288 elements : 1.80 MB
[+] Allocating 8.00 MB for 524288 bP Points
[+] Reading bloom filter from file keyhunt_bsgs_4_536870912.blm .... Done!
[+] Reading bloom filter from file keyhunt_bsgs_6_16777216.blm .... Done!
[+] Reading bP Table from file keyhunt_bsgs_2_524288.tbl .... Done!
[+] Reading bloom filter from file keyhunt_bsgs_7_524288.blm .... Done!
[+] Thread Key found privkey 90000000000000000000000f000000
[+] Publickey 02b33f524226b0db26cb8bcb2b374100bd1b3e07900f0be5402d1277e80d392479

End

Thanks for report it


The weird thing is that if I look for the next publickeys it found all:

Code:
021fc9e584dc824cb5b566bb7125aef1e31c95fb2fbabc7c315686b3c211d69ed8 # 90000000000000000000f000000001
02df23c15df7b3ba9fdb14fd5a994d7ba4c694f172ddf3f644fb47b4b399e214bb # 90000000000000000000000f000001
03e3a37d2332821cfe5ca644b26d640a707497870298e084c443d94670b00c5552 # 900000000000000000000f00000001

Code:
albertobsd $ ./keyhunt -m bsgs -f test1.txt -r 900000000000000000000000000000:900000000000000010000000000000  -S  -k 128 -q
[+] Version 0.2.211117 SSE Trick or treat ¡Beta!, developed by AlbertoBSD
[+] K factor 128
[+] Quiet thread output
[+] Mode BSGS secuential
[+] Opening file test1.txt
[+] Added 3 points from file
[+] Range
[+] -- from : 0x900000000000000000000000000000
[+] -- to   : 0x900000000000000010000000000000
[+] N = 0x100000000000
[+] Bloom filter for 536870912 elements : 1840.33 MB
[+] Bloom filter for 16777216 elements : 57.51 MB
[+] Bloom filter for 524288 elements : 1.80 MB
[+] Allocating 8.00 MB for 524288 bP Points
[+] Reading bloom filter from file keyhunt_bsgs_4_536870912.blm .... Done!
[+] Reading bloom filter from file keyhunt_bsgs_6_16777216.blm .... Done!
[+] Reading bP Table from file keyhunt_bsgs_2_524288.tbl .... Done!
[+] Reading bloom filter from file keyhunt_bsgs_7_524288.blm .... Done!
[+] Thread Key found privkey 90000000000000000000f000000001
[+] Publickey 021fc9e584dc824cb5b566bb7125aef1e31c95fb2fbabc7c315686b3c211d69ed8
[+] Thread Key found privkey 90000000000000000000000f000001
[+] Publickey 02df23c15df7b3ba9fdb14fd5a994d7ba4c694f172ddf3f644fb47b4b399e214bb
[+] Thread Key found privkey 900000000000000000000f00000001
[+] Publickey 03e3a37d2332821cfe5ca644b26d640a707497870298e084c443d94670b00c5552
All points were found
Pages:
Jump to: