Bitcoin Forum
June 26, 2024, 11:01:07 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 [37] 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 ... 142 »
  Print  
Author Topic: Pollard's kangaroo ECDLP solver  (Read 56666 times)
HardwareCollector
Member
**
Offline Offline

Activity: 144
Merit: 10


View Profile
June 04, 2020, 03:11:29 PM
Last edit: June 04, 2020, 03:41:24 PM by HardwareCollector
 #721

@WanderingPhilospher

Let G = secp256k1_generator_point

Edit:
Let LSB = 128 lower bits of the x-coordinate

(0x0000000024a2b6bb0000000026dd90e3)*G = 0x1bfbfb9e55b617f03ad44aabe7545c1aad8ac86776cf2b3ba9bc5d0eb1002f99

Doesn’t match the LSB of the x-coordinate from your tame line data, maybe try a few more random points from the file. I was able to validate 10,000 points from my file without any errors.

Yes, you should be able to solve the key when there is a match from the files. But you will also need the beginning range that was used to solve for the original key. We only need to find out if there’s a match of the LSB of the x-coordinates from both types of kangaroos, then we can use the distances and the beginning range to calculate the private key.
patatasfritas
Newbie
*
Offline Offline

Activity: 17
Merit: 0


View Profile
June 04, 2020, 03:40:31 PM
Last edit: June 04, 2020, 06:29:37 PM by patatasfritas
 #722

Some examples from 65bits address.
You can use https://brainwalletx.github.io/ to check G**p tame points.

Code:
TAME
01f57df72a208ecb0dff27e1836f190850728 0000000000000000c6b916f827ecc764
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000f862dc916dfc4479
01f84404e1bbaf74e5e86ddf86fa2e96f165a 0000000000000000d190f29c6c0596f6
34f64327b6e6129a2af1cc6a106f2cec5fcf0 00000000000000001f9e0d582f7942fd
34f6889b8abd66be32f13ebe2cf24d5ab6b62 00000000000000009b0984d32bf64396
34f6fdd77d4d6a532866be4fdfa5923a09ead 0000000000000000bc3de9e206c157db
--
WILD
34f44f024c8997abff6b5f1ee364c414c3016 0000000000000000344f3351ce019232
34f6889b8abd66be32f13ebe2cf24d5ab6b62 -00000000000000000d2f2c61d9bc24d1
34f738fed0a483f198a7a44d04e073c45b962 -0000000000000000602f88bbfaa6b336
01f7a2ae1656a659818a81f9a87204c29f1e8 -000000000000000048ea5f42dfb5bcc4
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000502a2b5c6849dc12
01f8143c41d86963bf9df718f9d0ba2e80cd7 00000000000000000a350d95bb55cb79

WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 04, 2020, 03:52:56 PM
 #723

@WanderingPhilospher

Let G = secp256k1_generator_point

Edit:
Let LSB = 128 lower bits of the x-coordinate

(0x0000000024a2b6bb0000000026dd90e3)*G = 0x1bfbfb9e55b617f03ad44aabe7545c1aad8ac86776cf2b3ba9bc5d0eb1002f99

Doesn’t match the LSB of the x-coordinate from your tame line data, maybe try a few more random points from the file. I was able to validate 10,000 points from my file without any errors.

Yes, you should be able to solve the key when there is a match from the files. But you will also need the beginning range that was used to solve for the original key. We only need to find out if there’s a match of the LSB of the x-coordinates from both types of kangaroos, then we can use the distances and the beginning range to calculate the private key.

So, if you have matching LSBs, then you may have a solution? In your estimate, how many times can LSBs match up but do not solve the key, guesstimate.
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 04, 2020, 04:01:20 PM
 #724

Some examples from 65bits address.
You can use https://brainwalletx.github.io/ to check G**p tame points.

Code:
TAME
01f57df72a208ecb0dff27e1836f190850728 0000000000000000c6b916f827ecc764
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000f862dc916dfc4479
01f84404e1bbaf74e5e86ddf86fa2e96f165a 0000000000000000d190f29c6c0596f6
34f64327b6e6129a2af1cc6a106f2cec5fcf0 00000000000000001f9e0d582f7942fd
f6889b8abd66be32f13ebe2cf24d5ab6b62 00000000000000009b0984d32bf64396
34f6fdd77d4d6a532866be4fdfa5923a09ead 0000000000000000bc3de9e206c157db
--
WILD
34f44f024c8997abff6b5f1ee364c414c3016 0000000000000000344f3351ce019232
34f6889b8abd66be32f13ebe2cf24d5ab6b62 -00000000000000000d2f2c61d9bc24d1
34f738fed0a483f198a7a44d04e073c45b962 -0000000000000000602f88bbfaa6b336
01f7a2ae1656a659818a81f9a87204c29f1e8 -000000000000000048ea5f42dfb5bcc4
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000502a2b5c6849dc12
01f8143c41d86963bf9df718f9d0ba2e80cd7 00000000000000000a350d95bb55cb79


Where on that page do you go, and what do you enter exactly?

I see there is a match in the LSBs:
Code:
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46
So I take it this was a solved key?
HardwareCollector
Member
**
Offline Offline

Activity: 144
Merit: 10


View Profile
June 04, 2020, 04:09:58 PM
 #725

@WanderingPhilospher

Let G = secp256k1_generator_point

Edit:
Let LSB = 128 lower bits of the x-coordinate

(0x0000000024a2b6bb0000000026dd90e3)*G = 0x1bfbfb9e55b617f03ad44aabe7545c1aad8ac86776cf2b3ba9bc5d0eb1002f99

Doesn’t match the LSB of the x-coordinate from your tame line data, maybe try a few more random points from the file. I was able to validate 10,000 points from my file without any errors.

Yes, you should be able to solve the key when there is a match from the files. But you will also need the beginning range that was used to solve for the original key. We only need to find out if there’s a match of the LSB of the x-coordinates from both types of kangaroos, then we can use the distances and the beginning range to calculate the private key.

So, if you have matching LSBs, then you may have a solution? In your estimate, how many times can LSBs match up but do not solve the key, guesstimate.

If you have 128-bit matching LSB, then with very high probability that you will find a solution. The probability for not finding a solution with 128-bit matching LSB is very small:

[number of entries in your hash table] divided by [2^128]
patatasfritas
Newbie
*
Offline Offline

Activity: 17
Merit: 0


View Profile
June 04, 2020, 06:59:29 PM
 #726


Where on that page do you go, and what do you enter exactly?

Put tame "distance" in Secret Exponent, and select compressed to view only X coord in Pubkey (after 02/03)
Code:
0000000000000000f862dc916dfc4479 -> 02:000002af00818a0d3e8923d211901f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46

I see there is a match in the LSBs:
Code:
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46
So I take it this was a solved key?


Code:
TAME: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000f862dc916dfc4479
WILD: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000502a2b5c6849dc12

SECRET_PRIV_KEY = TAME_DIST - WILD_DIST + START
0xf862dc916dfc4479 - 0x502a2b5c6849dc12 + 2**64 = 0x1a838b13505b26867
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 04, 2020, 08:53:53 PM
 #727


Where on that page do you go, and what do you enter exactly?

Put tame "distance" in Secret Exponent, and select compressed to view only X coord in Pubkey (after 02/03)
Code:
0000000000000000f862dc916dfc4479 -> 02:000002af00818a0d3e8923d211901f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46

I see there is a match in the LSBs:
Code:
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46
So I take it this was a solved key?


Code:
TAME: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000f862dc916dfc4479
WILD: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000502a2b5c6849dc12

SECRET_PRIV_KEY = TAME_DIST - WILD_DIST + START
0xf862dc916dfc4479 - 0x502a2b5c6849dc12 + 2**64 = 0x1a838b13505b26867
Thank you! Is there another way to calculate private key?
Any how, I was able to calculate, correctly, the formula you two have provided.
How do you calculate when you have to add say a 2^115? Or do you have/know of a calculator that autocalculates everything once you enter Tt - Tw + 2^x ?
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 04, 2020, 10:53:46 PM
 #728


Where on that page do you go, and what do you enter exactly?

Put tame "distance" in Secret Exponent, and select compressed to view only X coord in Pubkey (after 02/03)
Code:
0000000000000000f862dc916dfc4479 -> 02:000002af00818a0d3e8923d211901f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46

I see there is a match in the LSBs:
Code:
01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46
So I take it this was a solved key?


Code:
TAME: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000f862dc916dfc4479
WILD: 01f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46 0000000000000000502a2b5c6849dc12

SECRET_PRIV_KEY = TAME_DIST - WILD_DIST + START
0xf862dc916dfc4479 - 0x502a2b5c6849dc12 + 2**64 = 0x1a838b13505b26867
Does your export strip any information out of original DP files or are you extracting everything, minus the headers?
patatasfritas
Newbie
*
Offline Offline

Activity: 17
Merit: 0


View Profile
June 05, 2020, 07:30:08 AM
 #729

Does your export strip any information out of original DP files or are you extracting everything, minus the headers?
Only exports DP, headers can be "extracted" with -winfo

In SaveFile/HashTable, DPs are grouped by 18bits (from 0x00000 to 0x3ffff). And inside every group are stored distance and x-coord.

Distance: (1bit sign + 1bit type tame/wild + 126bits distance)
X-Coord: 128 bits

With 18bits of group + 128bits of x-coord, we have 146bits; and we "lost" 110bits (left N bits are zeroed as DP, -d option)

Example:

Code:
Distance: 0000000000000000f862dc916dfc4479
X-Coord: 000002af00818a0d3e8923d211901f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46

00000 2af00818a0d3e8923d2119 01f7f e7bfd3dc4c604b3e708c2fb4bdd2ed46
|__DP |__Lost bits (110-DP)  |     |___128 bits
                             |__18bits (first 2bits from first hex-char lost)


WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 05, 2020, 05:47:31 PM
 #730

Running a test at DP 25 for puzzle #115 with 2^27 kangaroos; 16 hours, running strong. RAM at constant 49%. RAM = 8GB
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 05, 2020, 05:48:28 PM
 #731

Does your export strip any information out of original DP files or are you extracting everything, minus the headers?
Only exports DP, headers can be "extracted" with -winfo

In SaveFile/HashTable, DPs are grouped by 18bits (from 0x00000 to 0x3ffff). And inside every group are stored distance and x-coord.

Distance: (1bit sign + 1bit type tame/wild + 126bits distance)
X-Coord: 128 bits

With 18bits of group + 128bits of x-coord, we have 146bits; and we "lost" 110bits (left N bits are zeroed as DP, -d option)

Example:

Code:
Distance: 0000000000000000f862dc916dfc4479
X-Coord: 000002af00818a0d3e8923d211901f7fe7bfd3dc4c604b3e708c2fb4bdd2ed46

00000 2af00818a0d3e8923d2119 01f7f e7bfd3dc4c604b3e708c2fb4bdd2ed46
|__DP |__Lost bits (110-DP)  |     |___128 bits
                             |__18bits (first 2bits from first hex-char lost)
Thanks for the explanation. I appreciate you taking the time to draw that up.
PietCoin97
Jr. Member
*
Offline Offline

Activity: 91
Merit: 3


View Profile
June 05, 2020, 07:03:51 PM
 #732

I let my system run on dp 26 with 2^22 kangaroos
Konstanting2
Newbie
*
Offline Offline

Activity: 27
Merit: 0


View Profile
June 05, 2020, 08:04:38 PM
 #733

he downloaded program from the site does not work.Could not compile correctly.Someone compile under Windows 7 64bit.You can upload or send by mail Konstanting266@gmail.com /I want to join the project too, thanks.
Konstanting2
Newbie
*
Offline Offline

Activity: 27
Merit: 0


View Profile
June 05, 2020, 08:20:08 PM
 #734

Intel(R) Xeon (R) CPU E5440@2.83GHZ/Manufacturer ASUTeK P5Q-PRO/RAM 7.00GB/GTX1050Ti
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 05, 2020, 08:48:01 PM
 #735

he downloaded program from the site does not work.Could not compile correctly.Someone compile under Windows 7 64bit.You can upload or send by mail Konstanting266@gmail.com /I want to join the project too, thanks.

Did you download the compiled version and it didn't work?

Link:
https://github.com/JeanLucPons/Kangaroo/releases/tag/1.8
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 05, 2020, 09:48:51 PM
 #736

Anyone else with DP 30 for #115, I have file to share.
dextronomous
Full Member
***
Offline Offline

Activity: 431
Merit: 105


View Profile
June 05, 2020, 11:56:37 PM
Last edit: June 06, 2020, 02:41:51 PM by dextronomous
 #737

Maybe someone with DP31 115 sharing is caring?

jean luc how to use the -wmdir, got error 3 180 some others
is this for the server client way or also solo on one system.
Kangaroo19latest -t 1 -gpu -gpuId 0 -o *.txt -ws -d 31 -w .work -i .work -wsplit -wmdir ? -wi 180 *.txt
thanks
Etar
Sr. Member
****
Offline Offline

Activity: 617
Merit: 312


View Profile
June 06, 2020, 03:51:41 PM
 #738

Maybe someone with DP31 115 sharing is caring?

jean luc how to use the -wmdir, got error 3 180 some others
is this for the server client way or also solo on one system.
Kangaroo19latest -t 1 -gpu -gpuId 0 -o *.txt -ws -d 31 -w .work -i .work -wsplit -wmdir ? -wi 180 *.txt
thanks
for me your example it is a garbage of commands. for what you set -i and -ws  if there -wsplit ?
the same as i know using cpu and gpu togheter slower then gpu  once.
Jean_Luc (OP)
Sr. Member
****
Offline Offline

Activity: 462
Merit: 696


View Profile
June 06, 2020, 03:57:32 PM
 #739

Hi,

1.9 is ready:

    Added -wmdir option (thanks to PatatasFritas)
    Support of kangaroo backup for client

wmdir is for merging

kangaroo -wmdir dir_name work_file_name: It merge all work files present in dir_name to work_file_name

I'm working on the README
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1078
Merit: 219

Shooters Shoot...


View Profile
June 06, 2020, 04:43:45 PM
 #740

Are the x coordinates and distances generated and saved in files by this specific program "shortened" to save RAM/storage space?
Using the "export" feature by PatatasFritas, when I look at the tame and wild files. Here is example of distance for a 57 bit :
Code:
000000000000000000000000ab6eb8e2
this is what is shown.
I tried building a comparer for the text files generated but something is off.
All the other Kangaroo programs out there, the distance for a 57 bit look like this:
Code:
00000000000000000000000000000000000000000000000001DC17735B5824F5
64 characters versus 32 characters but that is not significant. The significance is in the last digits of the distance. This program has 8 end characters and the other programs generate 15 end characters. So, does this program or the export feature "shorten" the digits for distance in order to save space or is there different ways to store kangaroo distances?
When I run the comaprer for the other programs using the text files, all solve correctly.
When I use the comparer for this program, it solves, but it's the wrong bit.

Example, when I solve using other programs with comparer I get:
Code:
1EB25C90795D61C
which is correct private key.

But when I use the comparer on this program I get:
Code:
10795d61c

Notice how the one is shorter, but it does calculate the last 8 characters correctly. Is it because distances are shorter in this program?
Many thanks to anyone who can help me learn/understand better.


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 32 33 34 35 36 [37] 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 ... 142 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!