Bitcoin Forum
May 21, 2024, 09:21:16 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 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 88 89 90 91 92 93 94 [95] 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 »
  Print  
Author Topic: Pollard's kangaroo ECDLP solver  (Read 56253 times)
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1064
Merit: 219

Shooters Shoot...


View Profile
June 23, 2021, 11:26:31 PM
 #1881

The problem is if you were to shift #120 down to 2^70 range, that means you'd have to check 2^50 targets (120 - 70 = 50); which obviously makes it impossible to check that many targets.  How did you come up with 2 million targets?

I thought you could choose any number of targets to check, at the expense of the likelihood of you finding a match when searching for less targets.
No. If you are shifting a pubkey down, you can either subtract or divide.  Simple explanation (for those who have asked as well):

Subtraction only gets you so far, if you know what range the key is in, it can help you speed things up by dropping down a few ranges.  
Let's say our key is:
CF36F0

If I know the key lies in the 2^24 range of 800000:FFFFFF, then I know I can be safe and at least subtract 800000. Now the range shifts to 0:7FFFFF
Well let's say I know it is somewhere in the C00000:FFFFFF range. I can safely subtract C00000. Now the range shifts to 0:3FFFFF
But let's say I don't know where the key is but I am 80% sure it starts with a D. So I subtract D00000.  Well, now the key is back around the wheel in no man's land because it won't lie between 0:2FFFFF. D00000-CF36F0 = some negative key.

Now, you can also divide a key.  If we know our key lies in the 2^24 range and want to drop it down to the 2^14 range, we can divide by 1024 (2^10) 2^24 - 2^10 = 2^14
But now we have 1024 pubkeys that we have to search for but 2^1000% one of those 1024 pubkeys is in the 2^14 range.

So if one wanted to drop from 2^120 down to 2^70 range, well....that's a lot of pubkeys to search for.


to be clear to me you are saying divide the uncompressed public key (converted to decimal)  by 2 to the power of the number of steps down or can you use the compressed key converted to decimal divided by 1024 if 10 steps then the amount back to hex as the new public key for the lower keyspace?
No, it's not regular division, it's a lot of mod p this mod p that.
But when done, you must use uncompressed because you use the x and y coord.

Brainless may be able to explain it better. He may have some tips or tricks as well. 
NotATether
Legendary
*
Online Online

Activity: 1610
Merit: 6752


bitcoincleanup.com / bitmixlist.org


View Profile WWW
June 24, 2021, 05:55:42 AM
 #1882

Now, you can also divide a key.  If we know our key lies in the 2^24 range and want to drop it down to the 2^14 range, we can divide by 1024 (2^10) 2^24 - 2^10 = 2^14
But now we have 1024 pubkeys that we have to search for but 2^1000% one of those 1024 pubkeys is in the 2^14 range.

So if one wanted to drop from 2^120 down to 2^70 range, well....that's a lot of pubkeys to search for.

Subtraction is clear to me, and so is division somewhat, but why the need to search 1024 pubkeys after dividing by that number? What will all their values be set to, apart from the one pubkey which is still its original value?

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
_Counselor
Member
**
Offline Offline

Activity: 107
Merit: 61


View Profile
June 24, 2021, 09:41:38 AM
Merited by NotATether (2)
 #1883

Now, you can also divide a key.  If we know our key lies in the 2^24 range and want to drop it down to the 2^14 range, we can divide by 1024 (2^10) 2^24 - 2^10 = 2^14
But now we have 1024 pubkeys that we have to search for but 2^1000% one of those 1024 pubkeys is in the 2^14 range.

So if one wanted to drop from 2^120 down to 2^70 range, well....that's a lot of pubkeys to search for.

Subtraction is clear to me, and so is division somewhat, but why the need to search 1024 pubkeys after dividing by that number? What will all their values be set to, apart from the one pubkey which is still its original value?

Because you dont know whether the secret key is divisible without remainder by 1024. If not divisible, result will be lie somewhere on an unknown segment of elliptic curve.

Therefore, to reduce key in such a way you have to divide by 1024 not only secret key, but also key+1 key+2 ... key+1023, one of which will be divisible by 1024 and lie in the correct reduced range.
COBRAS
Member
**
Offline Offline

Activity: 861
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
June 26, 2021, 08:16:03 AM
 #1884

Now, you can also divide a key.  If we know our key lies in the 2^24 range and want to drop it down to the 2^14 range, we can divide by 1024 (2^10) 2^24 - 2^10 = 2^14
But now we have 1024 pubkeys that we have to search for but 2^1000% one of those 1024 pubkeys is in the 2^14 range.

So if one wanted to drop from 2^120 down to 2^70 range, well....that's a lot of pubkeys to search for.

Subtraction is clear to me, and so is division somewhat, but why the need to search 1024 pubkeys after dividing by that number? What will all their values be set to, apart from the one pubkey which is still its original value?

This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

Substarct from pubkey simple numder is real SHIT !!! Ths not worked and waste MANY MONEY,NERVOUS AND TIME. Agree ?

$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
COBRAS
Member
**
Offline Offline

Activity: 861
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
June 26, 2021, 08:37:28 AM
 #1885

Quote
(2^10) 2^24 - 2^10 = 2^14

And respected looser's !!! Yeas, THIS IS FUCKIND SHIT AGAIN !!! Brainless guru thant fuck us again !!!


( 2^24 - 2^10) = fffc00

2^14 = 4000(in hex)


This is magic ? No, fuck, this no magic.No, this mean I apologise what Something is try fuck us again. Grin

Agree with me my friends ?  Smiley


$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
NotATether
Legendary
*
Online Online

Activity: 1610
Merit: 6752


bitcoincleanup.com / bitmixlist.org


View Profile WWW
June 26, 2021, 10:57:09 AM
 #1886

This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

Erm no, read WanderingPhilosipher's reply above. Subtraction is good for clearing out values within a keyspace exponent, but for actually reducing the magnitude of the keyspace, division does the job.


Division deletes values on the number line. E.g something divided by 8 lets you use 8 or 16 or 24... from the original number line, (given a new number line of 1, 2, 3, ... as quotients) the 9-15 integers become "inaccessible", so it's possible the private key might be unreadable (because of impossible decimal remainder), meaning when you divide the keyspace by x number, not only do you have to find pubkey/x, you must also search (pubkey+1)/x, (pubkey+2)/x, ..., (pubkey+x-1)/x, because only one of these will hit the original private key.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
unclevito
Jr. Member
*
Offline Offline

Activity: 74
Merit: 4


View Profile WWW
June 26, 2021, 12:57:41 PM
Last edit: June 26, 2021, 01:11:43 PM by unclevito
 #1887

Now, you can also divide a key.  If we know our key lies in the 2^24 range and want to drop it down to the 2^14 range, we can divide by 1024 (2^10) 2^24 - 2^10 = 2^14
But now we have 1024 pubkeys that we have to search for but 2^1000% one of those 1024 pubkeys is in the 2^14 range.

So if one wanted to drop from 2^120 down to 2^70 range, well....that's a lot of pubkeys to search for.

Subtraction is clear to me, and so is division somewhat, but why the need to search 1024 pubkeys after dividing by that number? What will all their values be set to, apart from the one pubkey which is still its original value?

This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

Substarct from pubkey simple numder is real SHIT !!! Ths not worked and waste MANY MONEY,NERVOUS AND TIME. Agree ?
if it was that easy all would have been found 2 years ago.  This is a board of ideas so if it makes  sense to you you try it if it does not then don't try it, that is why I come to this board for ideas and advice. As far as I know no one is charging for their ideas so where is the Scam?  Bad choice of words.
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1064
Merit: 219

Shooters Shoot...


View Profile
June 26, 2021, 03:56:13 PM
 #1888

Quote
This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

No magic Cobras, just math on the curve. Come on man.

If you have a pubkey in the 2^255 range, and subtracted a pubkey that on its own is in the 2^128 range, the 2^255 range pubkey would
still be in the 2^255 range because 2^255 is massively larger than 2^128.  It's easier to visualize this in hex format for the private key.

2^255 private key:

3e2e2ae352cf04aa1bd62491af51349b559f52cdbd2140a7a8c072a1fae6ffd5

2^128 private key:

0000000000000000000000000000000038376ad83f26a0bc5e8a8b62e826a267

If you subtract the two, which by the way, this is straight hex math and works, just subtract the two; equals:
3e2e2ae352cf04aa1bd62491af51349b1d67e7f57dfa9feb4a35e73f12c05d6e

But when you shift/divide a public key, then basic math goes away and you have to mod p this and mod p that.

If someone will generate a random private key in the range of (let's keep it small to show it works and can be checked quickly):

8000000000:FFFFFFFFFF

and post the PUBLIC KEY of that random private key, I will shift it down 1 range and also divide it by 2^5 (keep this small so we
only generate 32 public keys to check).

Then if anybody wants to, they can check to see that it works and it's not BS or magic.
COBRAS
Member
**
Offline Offline

Activity: 861
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
June 26, 2021, 11:07:59 PM
 #1889

Quote
This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

No magic Cobras, just math on the curve. Come on man.


If someone will generate a random private key in the range of (let's keep it small to show it works and can be checked quickly):



WanderingPhilospher, can you show on this yor example:

2^255 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5

shift to 2^100

this is a public keys of 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5 :

0419f1854552de8509c438288726e45f049b1ebc2a7b573630437af7c443b2729070528c6d01b16 114e3a9ab033405ff2799fdb61473755073f7ca689b2ae2ef44 - 13zwUCryqSn7LPdWCKArj4UCRExpg7UYJz

0219F1854552DE8509C438288726E45F049B1EBC2A7B573630437AF7C443B27290 - 1A692apD3nn1NqNZSWCd1oyfEhxM7J7F1Q

?

I now not really understand and trust this method(dividing of pubkey what can be worked...) and I hope you can help understand me more

Thank you

Regard




$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1064
Merit: 219

Shooters Shoot...


View Profile
June 26, 2021, 11:36:39 PM
 #1890

Quote
This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

No magic Cobras, just math on the curve. Come on man.


If someone will generate a random private key in the range of (let's keep it small to show it works and can be checked quickly):



WanderingPhilospher, can you show on this yor example:

2^255 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5

shift to 2^100

this is a public keys of 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5 :

0419f1854552de8509c438288726e45f049b1ebc2a7b573630437af7c443b2729070528c6d01b16 114e3a9ab033405ff2799fdb61473755073f7ca689b2ae2ef44 - 13zwUCryqSn7LPdWCKArj4UCRExpg7UYJz

0219F1854552DE8509C438288726E45F049B1EBC2A7B573630437AF7C443B27290 - 1A692apD3nn1NqNZSWCd1oyfEhxM7J7F1Q

?

I now not really understand and trust this method(dividing of pubkey what can be worked...) and I hope you can help understand me more

Thank you

Regard


The only way to get a key down from 2^255 to 2^100 is to divide by 2^155.  Meaning you would take that pubkey and divide it by 0, 1, 2, 3, 4, 5, ... all the way to 2^155 (which is a HUGE number) even if your computer could divide and write to file a trillion pubkeys a second, and start a new file once the current file got up to say 1 GB, there is still no way to capture from 0 to 2^155 pubkeys. It would take an eternity. But let us say you did manage to capture those 2^155 pubkeys...now you would have to search each and every pubkey in the 2^100 range to find the one that will give you the private key of the original 2^255 pubkey that you were searching for.

If you would have done like I asked and gave me a random pub key in a smaller range, like 2^40 range, I could show you with examples. 2^255 is to big man, for explanation purposes.
COBRAS
Member
**
Offline Offline

Activity: 861
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
June 26, 2021, 11:46:13 PM
 #1891

Quote
This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

No magic Cobras, just math on the curve. Come on man.


If someone will generate a random private key in the range of (let's keep it small to show it works and can be checked quickly):



WanderingPhilospher, can you show on this yor example:

2^255 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5

shift to 2^100

this is a public keys of 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5 :

0419f1854552de8509c438288726e45f049b1ebc2a7b573630437af7c443b2729070528c6d01b16 114e3a9ab033405ff2799fdb61473755073f7ca689b2ae2ef44 - 13zwUCryqSn7LPdWCKArj4UCRExpg7UYJz

0219F1854552DE8509C438288726E45F049B1EBC2A7B573630437AF7C443B27290 - 1A692apD3nn1NqNZSWCd1oyfEhxM7J7F1Q

?

I now not really understand and trust this method(dividing of pubkey what can be worked...) and I hope you can help understand me more

Thank you

Regard


The only way to get a key down from 2^255 to 2^100 is to divide by 2^155.  Meaning you would take that pubkey and divide it by 0, 1, 2, 3, 4, 5, ... all the way to 2^155 (which is a HUGE number) even if your computer could divide and write to file a trillion pubkeys a second, and start a new file once the current file got up to say 1 GB, there is still no way to capture from 0 to 2^155 pubkeys. It would take an eternity. But let us say you did manage to capture those 2^155 pubkeys...now you would have to search each and every pubkey in the 2^100 range to find the one that will give you the private key of the original 2^255 pubkey that you were searching for.

If you would have done like I asked and gave me a random pub key in a smaller range, like 2^40 range, I could show you with examples. 2^255 is to big man, for explanation purposes.

ok

this is 2^40

privkey 0000000000000000000000000000000000000000000000000000010000000000

pubkey

04feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696de57c6b6c97dce 1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088 - 1PekQwtiw6ut2nooaGobnPye6X8rDdoaW9

02FEEA6CAE46D55B530AC2839F143BD7EC5CF8B266A41D6AF52D5E688D9094696D - 1JSKV3Y8HxBCKPA5fo6mGurfaHHq79kA3Z

??


Regard !


$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1064
Merit: 219

Shooters Shoot...


View Profile
June 27, 2021, 12:12:17 AM
 #1892

Cobras, haha, since you wouldn't do as I asked, I'll just use #40 from the puzzle/challenge.

Adddress (not important):
1EeAxcprB2PpCnr34VfZdFrkUWuxyiNEFv

Pub key:
03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4

Now, it's range is 8000000000:FFFFFFFFFF

I will divide by 2^5 (32, which will actually be 33 because you also divide by 0)
Here are those 33 pubkeys:
Code:
02f0c386f6714fe5940ec7e622d8ba2e5204c58cd71a9c73ca95fb0e4ec0e76d72
03f7f61f6fc40c3df9696ab839727b1dc1391a9da275ea6d42d17302cdccbdc09a
02c19b2db68679148bd96635d08fe824ba9bd20daab2873840aaabcfceec484a96
0209e65b3fe12c22728d87fcca8b984084b2f9b646fbabe2f5981024fb95eba4e1
038f479f61a73435ba2f038b1a54f1f54adb0508be58bd880b9174bea3aa7e86d5
039e894d63c7153c69f87868d9c63b02a8a011d942f4886d91bd5d8f58bb6b5afc
0381d7a33f05ade886db9bbcf96f8e1759fbffd2df33532753bab3433d281dc87f
02d25985c166a0ca3bf3f41e0d183df2f0a2cce1cf90caf79165b42cb12c1105db
032061e0311088d0d98131adf4a38b0bfbdcea1c23a732c3113169ddebb905a267
0242f66a0c1fa8c6b4ab00172b99e8bf92227570b2fb980e08f45a0db5bf617dd7
0239703514939aec42c3103e8a02c712b4f26903d559e92403ecd0511523ddedc9
0221a766fd4041d03ad65681684bde68db01dc9bdf09b3dcbb7fe513f71b81ae24
03d21e878ab0aeac492a88c1f5430e823a05201f50b2b6dda1af05e62c69d332ef
03642173b68ffd55b79ae59e8504e726285a5d916b8cf2224cf9dd3b6ab5550427
02124482f38119b78ced6d4cfdbb1f527538eea8158f7e7ca14507e70640e6f6ec
033df51c60c3e0cee9317eea3d97125a76aea5e9087a332df6fb47f5a7e78ac935
0249d150e04bf39f36c85499af2d56c285f93f647d563a8d644b03109a905d3ad8
03d999d94ebe5a16b8d473c4d00d325f0874926c8dea8a22aeb60b1a35f5543100
0380ede2c7f5cc251e1ecd52773e3dcebb3bc5fceab4ce89d62018b45ddc4ee3aa
024b97c8d72f48320211b5e67131799004be48250dce123c56e3fb89d68d9396e5
02a20ce9ba321bf7a13b45af5645a49eae0870dd0aee64ce48eec46904982e09f5
03248efe604a9bf36e86f2257d1af410565bab4ea237493c34b5b86a144a6470eb
02133205bad04b511da446fe2e4777d15b1aaaa7e99b084e67a2968daa7c1eb946
03d05d0862f0d677b838af72763982be68850d9b222081289dd191283e68c75058
02152bd00d55a9f82eef113d4e2b8c26e2c280b8c713154515fea807ff07e00fad
02f5f38191a6afbb8efda92c199626dc54362aeb4ec7df55adb0d3076af6251e71
03de0ae872279680997511720b05d197bd164955688bb27d1b8747a6b4b071322e
03ec224492baa0bfc9d3fe7388384aa74a0397d66acf9736434044981febfd4679
02ba62c3d3e7c6c782113d45d3426e222adefcef36f0241746340153dcc51c218c
02aec4e228a8bfea725af79be641788b0b7743b620cae1426d6f052bf4f1e451ed
022fdbce7c0ed6ff7f6461fad0b0361209db556c6668b63c62ec2d6ab5c1be53dc
03a16d65d082d8c4e655d20eac7b2d216b2e22ab2b6ed5133df4394669ec9d10a4
03858ecab60490237bf8053a7354223cdbfdc76634623800a8e64deb4aa0adc0c0


And if you want to search by compressed addresses that match the above pubkeys:
Code:
14zJF8CnG4hYZnPk4PYfc8gLU31Puqfgsv
1NRNqBzcGrhVPwcAG3mQtuVJk8LzbJbzJq
1JcJGT8ezp8EHsVDcDyPNa3Ar2zbhiy4ax
1HaCnLU7wssvrTUpEGDcBPebX4mmR21MWN
14Xuu5dGxwZpHf4mr1r4ziYDXdgMrFbDbP
19YPjv6E1642SPve4toMZkpo8TMvYvhin3
1Bdx4r4xx9UFRoVoR4QtgSjrcgEfpehia
1FJzTav9h59pi81yGXmgQAWu6ZergWEFZo
1GCzqPsWNN52M5oViktLdawZYMb912PXyZ
1GfWXSJ1eA14ap8enpUsVm2HTQV2cRBPZD
17e1To7mLCJzusa7sbs8habEzsMiF5jKej
1JPaPJpYUCsFn25ECZTZxU62mdrHTwYUkM
1JixzUPVmoeU25a84pUXf6xNfHBmoT8FXy
1EHUpUsHeLFNhLeivmkqZp4rYqivaq2Ghe
1CGAuzs7MRyXFpMnNTVsSvEknt2AxDPaLK
1JuaDBFmHFhV6ozKJbsnR9k3Mnv3PWB9GZ
1KRHnqXQyfLZuYVqPmfKSpZPNE4j2vCnRn
1JwHmAFSgrDsUV6ow9CvuYz4YKhiFHtdLm
1N7Vbc9bsYy6B4Qmf3Vr3wKjJJLf7xR4sk
1JkKmLkmuUg9g8UpzoJvrfz38bzYKKaA85
1GV5w1kvsybCiTk8EJ6JcwtioabaxPTF96
1M23DScXBhi1imqVqmTTvndrDQjACYpATp
1Kc3gPy54e68BsHVJreSqSHgm3fLeXnj2g
19PS9jCNYaQ4LnhJ3Yt8K9hcH6swBQi9pV
1CAxJ3uDxnAza79NfPbJXRoznYkA6w865Y
1DePnGTmKV8it1XQjXM9Y4cW7PhLQerFRY
14j7AZVuGMvTUavj1DRFE4Wp6dWGPrBeAc
165Echz8WdXjXdBZ8eAp6sUCPsWw8n62xg
1LEvqW3x8eF2jQeYLrjANAZWaFqvU3Xw7L
12AD1vSr1QcW2e2LZvMSHv63RXKT8eJUXo
15RTpbp2AfHp8d7Xgq8DbyNsT4rKDfxQCo
1BvJV9vp7Yg38rycEFtHxFYx9Aid2aD3RL
14UUWCMpLB6doUuTkUjsBAFXwpvCnADt9N

Now since we divided by 2^5, you will find at least one of those pubkeys/addresses in a new range (35 bit range; 40-5=35):
400000000:7FFFFFFFFF

So use kangaroo or BSGS to find pubkey in that new range or bitcrack to find addresses in that new range.
rkvishvam
Newbie
*
Offline Offline

Activity: 2
Merit: 1


View Profile
June 28, 2021, 05:48:20 AM
 #1893

Cobras, haha, since you wouldn't do as I asked, I'll just use #40 from the puzzle/challenge.

Adddress (not important):
1EeAxcprB2PpCnr34VfZdFrkUWuxyiNEFv

Pub key:
03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4

Now, it's range is 8000000000:FFFFFFFFFF

I will divide by 2^5 (32, which will actually be 33 because you also divide by 0)
Here are those 33 pubkeys:
Code:
02f0c386f6714fe5940ec7e622d8ba2e5204c58cd71a9c73ca95fb0e4ec0e76d72
03f7f61f6fc40c3df9696ab839727b1dc1391a9da275ea6d42d17302cdccbdc09a
02c19b2db68679148bd96635d08fe824ba9bd20daab2873840aaabcfceec484a96
0209e65b3fe12c22728d87fcca8b984084b2f9b646fbabe2f5981024fb95eba4e1
038f479f61a73435ba2f038b1a54f1f54adb0508be58bd880b9174bea3aa7e86d5
039e894d63c7153c69f87868d9c63b02a8a011d942f4886d91bd5d8f58bb6b5afc
0381d7a33f05ade886db9bbcf96f8e1759fbffd2df33532753bab3433d281dc87f
02d25985c166a0ca3bf3f41e0d183df2f0a2cce1cf90caf79165b42cb12c1105db
032061e0311088d0d98131adf4a38b0bfbdcea1c23a732c3113169ddebb905a267
0242f66a0c1fa8c6b4ab00172b99e8bf92227570b2fb980e08f45a0db5bf617dd7
0239703514939aec42c3103e8a02c712b4f26903d559e92403ecd0511523ddedc9
0221a766fd4041d03ad65681684bde68db01dc9bdf09b3dcbb7fe513f71b81ae24
03d21e878ab0aeac492a88c1f5430e823a05201f50b2b6dda1af05e62c69d332ef
03642173b68ffd55b79ae59e8504e726285a5d916b8cf2224cf9dd3b6ab5550427
02124482f38119b78ced6d4cfdbb1f527538eea8158f7e7ca14507e70640e6f6ec
033df51c60c3e0cee9317eea3d97125a76aea5e9087a332df6fb47f5a7e78ac935
0249d150e04bf39f36c85499af2d56c285f93f647d563a8d644b03109a905d3ad8
03d999d94ebe5a16b8d473c4d00d325f0874926c8dea8a22aeb60b1a35f5543100
0380ede2c7f5cc251e1ecd52773e3dcebb3bc5fceab4ce89d62018b45ddc4ee3aa
024b97c8d72f48320211b5e67131799004be48250dce123c56e3fb89d68d9396e5
02a20ce9ba321bf7a13b45af5645a49eae0870dd0aee64ce48eec46904982e09f5
03248efe604a9bf36e86f2257d1af410565bab4ea237493c34b5b86a144a6470eb
02133205bad04b511da446fe2e4777d15b1aaaa7e99b084e67a2968daa7c1eb946
03d05d0862f0d677b838af72763982be68850d9b222081289dd191283e68c75058
02152bd00d55a9f82eef113d4e2b8c26e2c280b8c713154515fea807ff07e00fad
02f5f38191a6afbb8efda92c199626dc54362aeb4ec7df55adb0d3076af6251e71
03de0ae872279680997511720b05d197bd164955688bb27d1b8747a6b4b071322e
03ec224492baa0bfc9d3fe7388384aa74a0397d66acf9736434044981febfd4679
02ba62c3d3e7c6c782113d45d3426e222adefcef36f0241746340153dcc51c218c
02aec4e228a8bfea725af79be641788b0b7743b620cae1426d6f052bf4f1e451ed
022fdbce7c0ed6ff7f6461fad0b0361209db556c6668b63c62ec2d6ab5c1be53dc
03a16d65d082d8c4e655d20eac7b2d216b2e22ab2b6ed5133df4394669ec9d10a4
03858ecab60490237bf8053a7354223cdbfdc76634623800a8e64deb4aa0adc0c0


And if you want to search by compressed addresses that match the above pubkeys:
Code:
14zJF8CnG4hYZnPk4PYfc8gLU31Puqfgsv
1NRNqBzcGrhVPwcAG3mQtuVJk8LzbJbzJq
1JcJGT8ezp8EHsVDcDyPNa3Ar2zbhiy4ax
1HaCnLU7wssvrTUpEGDcBPebX4mmR21MWN
14Xuu5dGxwZpHf4mr1r4ziYDXdgMrFbDbP
19YPjv6E1642SPve4toMZkpo8TMvYvhin3
1Bdx4r4xx9UFRoVoR4QtgSjrcgEfpehia
1FJzTav9h59pi81yGXmgQAWu6ZergWEFZo
1GCzqPsWNN52M5oViktLdawZYMb912PXyZ
1GfWXSJ1eA14ap8enpUsVm2HTQV2cRBPZD
17e1To7mLCJzusa7sbs8habEzsMiF5jKej
1JPaPJpYUCsFn25ECZTZxU62mdrHTwYUkM
1JixzUPVmoeU25a84pUXf6xNfHBmoT8FXy
1EHUpUsHeLFNhLeivmkqZp4rYqivaq2Ghe
1CGAuzs7MRyXFpMnNTVsSvEknt2AxDPaLK
1JuaDBFmHFhV6ozKJbsnR9k3Mnv3PWB9GZ
1KRHnqXQyfLZuYVqPmfKSpZPNE4j2vCnRn
1JwHmAFSgrDsUV6ow9CvuYz4YKhiFHtdLm
1N7Vbc9bsYy6B4Qmf3Vr3wKjJJLf7xR4sk
1JkKmLkmuUg9g8UpzoJvrfz38bzYKKaA85
1GV5w1kvsybCiTk8EJ6JcwtioabaxPTF96
1M23DScXBhi1imqVqmTTvndrDQjACYpATp
1Kc3gPy54e68BsHVJreSqSHgm3fLeXnj2g
19PS9jCNYaQ4LnhJ3Yt8K9hcH6swBQi9pV
1CAxJ3uDxnAza79NfPbJXRoznYkA6w865Y
1DePnGTmKV8it1XQjXM9Y4cW7PhLQerFRY
14j7AZVuGMvTUavj1DRFE4Wp6dWGPrBeAc
165Echz8WdXjXdBZ8eAp6sUCPsWw8n62xg
1LEvqW3x8eF2jQeYLrjANAZWaFqvU3Xw7L
12AD1vSr1QcW2e2LZvMSHv63RXKT8eJUXo
15RTpbp2AfHp8d7Xgq8DbyNsT4rKDfxQCo
1BvJV9vp7Yg38rycEFtHxFYx9Aid2aD3RL
14UUWCMpLB6doUuTkUjsBAFXwpvCnADt9N

Now since we divided by 2^5, you will find at least one of those pubkeys/addresses in a new range (35 bit range; 40-5=35):
400000000:7FFFFFFFFF

So use kangaroo or BSGS to find pubkey in that new range or bitcrack to find addresses in that new range.



Wow, I just checked and found this match:

address: 1Kc3gPy54e68BsHVJreSqSHgm3fLeXnj2g
pubkey : 02133205BAD04B511DA446FE2E4777D15B1AAAA7E99B084E67A2968DAA7C1EB946
privkey : 74D72499E (35 bit)

I want to ask how you did get these 33 pubkeys?, I have read your previous messages but not getting it completely.
If we divide range 400000000:7FFFFFFFFF which is 7FFFFFFFFF (39 bit) by 2^5 then the result will be in decimal point, its not a perfect division.

So how do you do this? And how to derive those 33 pubkeys, Need little explanation.


Regards!!



NotATether
Legendary
*
Online Online

Activity: 1610
Merit: 6752


bitcoincleanup.com / bitmixlist.org


View Profile WWW
June 28, 2021, 06:34:39 AM
 #1894

Wow, I just checked and found this match:

address: 1Kc3gPy54e68BsHVJreSqSHgm3fLeXnj2g
pubkey : 02133205BAD04B511DA446FE2E4777D15B1AAAA7E99B084E67A2968DAA7C1EB946
privkey : 74D72499E (35 bit)

I want to ask how you did get these 33 pubkeys?, I have read your previous messages but not getting it completely.
If we divide range 400000000:7FFFFFFFFF which is 7FFFFFFFFF (39 bit) by 2^5 then the result will be in decimal point, its not a perfect division.

So how do you do this? And how to derive those 33 pubkeys, Need little explanation.


Regards!!

Well you would duplicate the public key to have 33 copy and add a different number like 0, 1, 2, 3, ... up to 32 to each pubkey and then divide them all by 2^5. Because each pubkey has a slightly different number added to it, the division will make wildly different smaller pubkeys like those ones above.

Division is done mod curve order to my understanding, but what I don't get is why both a division (which can I just say I think addition-then-division is a better term to call this since otherwise division by 0 sounds... weird) by 0 and 32 is necessary when the divisor is 32.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1064
Merit: 219

Shooters Shoot...


View Profile
June 28, 2021, 04:57:28 PM
 #1895

Quote
Wow, I just checked and found this match:

address: 1Kc3gPy54e68BsHVJreSqSHgm3fLeXnj2g
pubkey : 02133205BAD04B511DA446FE2E4777D15B1AAAA7E99B084E67A2968DAA7C1EB946
privkey : 74D72499E (35 bit)

I want to ask how you did get these 33 pubkeys?, I have read your previous messages but not getting it completely.
If we divide range 400000000:7FFFFFFFFF which is 7FFFFFFFFF (39 bit) by 2^5 then the result will be in decimal point, its not a perfect division.

So how do you do this? And how to derive those 33 pubkeys, Need little explanation.


Regards!!
Like I said, it's mod p this and mod p that.

Some smarter people may be able to explain it better...I get the gist and know it works.

Now to get the private key for the original pubkey we were searching for:

Code:
divisor = 32
keyfoundinposition=22
privkeyfound=0x74D72499E
solvedkey = int(privkeyfound*divisor+keyfoundinposition)
print(">%x"%solvedkey)
#E9AE4933D6

You take the divisor, which position the private key found is in (in this case it was 22; if you count down from the lines of the pubkeys I posted, or the addresses, you will find the one you found on line 23, but the first line is 0, so line 23 = line 22 and then multiply the hex priv key found by the divisor number and then add the key found in position. And now you have the actual private key we were looking for.

NotATether
Legendary
*
Online Online

Activity: 1610
Merit: 6752


bitcoincleanup.com / bitmixlist.org


View Profile WWW
June 28, 2021, 05:28:13 PM
 #1896

Code:
divisor = 32
keyfoundinposition=22
privkeyfound=0x74D72499E
solvedkey = int(privkeyfound*divisor+keyfoundinposition)
print(">%x"%solvedkey)
#E9AE4933D6

OK now this makes sense, thanks for producing the code. So apparently this dividing by 0,1,2,3... to shrink the size of the pubkey really is just ((pubkey-keyfoundinposition)*divisor)-1

So for example ((pubkey-0)*32)-1 or ((pubkey-1)*32)-1, etc.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
Siberian047
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
July 01, 2021, 01:22:37 PM
 #1897

I don't understand how the search is calculated in this particular range.
Explain in a nutshell.


Here's an example-

#135 ( 16RGFo6hjq9ym6Pj7N5H7L1NR1rVPJyw2v )
4000000000000000000000000000000000
7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
02145D2611C823A396EF6712CE0F712F09B9B4F3135E3E0AA3230FB9B6D08D1E16
NotATether
Legendary
*
Online Online

Activity: 1610
Merit: 6752


bitcoincleanup.com / bitmixlist.org


View Profile WWW
July 02, 2021, 07:24:10 AM
Last edit: July 03, 2021, 07:01:34 AM by NotATether
 #1898

I don't understand how the search is calculated in this particular range.
Explain in a nutshell.

Start range is subtracted from End range to make a new range between 0 and end-start, which is searched instead.

Then we make a batch, or herd, of 1024 starting points, with tames and wild points overlapping each other like this: Tame Wild Tame Wild Tame... The tame random points between 0 and end-start=range, and the wild points will have them between -range/2 and range/2. These are the starting points


We take some random numbers, the same amount as herd points, between 0 and range/2 as "jump points" and subtract them from our herd points. Resulting numbers are then placed in an Group (which in Kangaroo is just defined as a collection of numbers) and ModInv is applied to all of them.

For iteration we compute:

Rx = (Py - JumpPointY [mod n]
    * Group [mod n])
  ^2 [mod n]
  - JumpPointX [mod n]
  - Py [mod n]

Ry = Px - Rx [mod n]
  * (Py - JumpPointY [mod n]
    * Group [mod n])
  - Py [mod n]

For each g in CPU_GRP_SIZE (2014 1024 [really bad typo])


And the search points P are replaced with the ones in R.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
brainless
Member
**
Offline Offline

Activity: 316
Merit: 34


View Profile
July 03, 2021, 05:05:54 AM
 #1899

I don't understand how the search is calculated in this particular range.
Explain in a nutshell.

Start range is subtracted from End range to make a new range between 0 and end-start, which is searched instead.

Then we make a batch, or herd, of 1024 starting points, with tames and wild points overlapping each other like this: Tame Wild Tame Wild Tame... The tame random points between 0 and end-start=range, and the wild points will have them between -range/2 and range/2. These are the starting points


We take some random numbers, the same amount as herd points, between 0 and range/2 as "jump points" and subtract them from our herd points. Resulting numbers are then placed in an Group (which in Kangaroo is just defined as a collection of numbers) and ModInv is applied to all of them.

For iteration we compute:

Rx = (Py - JumpPointY [mod n]
    * Group [mod n])
  ^2 [mod n]
  - JumpPointX [mod n]
  - Py [mod n]

Ry = Px - Rx [mod n]
  * (Py - JumpPointY [mod n]
    * Group [mod n])
  - Py [mod n]

For each g in CPU_GRP_SIZE (2014)


And the search points P are replaced with the ones in R.
Guys fyi 1024 is not div point in ecc, posting here, divideable magic digits for ecc, these will help you to decide bitrange to divide, use these magic ecc div numbers, for pollard kanagroo or other manual div

2   447   7572   564114
3   596   9536   752152
4   631   10096   1128228
6   894   14304   1504304
8   1192   15144   2256456
12   1262   20192   3008608
16   1788   28608   4512912
24   1893   30288   6017216
32   2384   40384   9025824
48   2524   60576   18051648
64   3576   94019   
96   3786   121152   
149   4768   188038   
192   5048   282057   
298   7152   376076   

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
MisterCooper
Newbie
*
Offline Offline

Activity: 30
Merit: 0


View Profile
July 03, 2021, 08:46:59 AM
Last edit: July 03, 2021, 01:57:40 PM by MisterCooper
 #1900

Quote
This is realy woked ? for ex, If I substract 128 pubkey from 255 pubkey, I will get 128 pubkey ?

No magic Cobras, just math on the curve. Come on man.


If someone will generate a random private key in the range of (let's keep it small to show it works and can be checked quickly):



WanderingPhilospher, can you show on this yor example:

2^255 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5

shift to 2^100

this is a public keys of 3E2E2AE352CF04AA1BD62491AF51349B559F52CDBD2140A7A8C072A1FAE6FFD5 :

0419f1854552de8509c438288726e45f049b1ebc2a7b573630437af7c443b2729070528c6d01b16 114e3a9ab033405ff2799fdb61473755073f7ca689b2ae2ef44 - 13zwUCryqSn7LPdWCKArj4UCRExpg7UYJz

0219F1854552DE8509C438288726E45F049B1EBC2A7B573630437AF7C443B27290 - 1A692apD3nn1NqNZSWCd1oyfEhxM7J7F1Q

?

I now not really understand and trust this method(dividing of pubkey what can be worked...) and I hope you can help understand me more

Thank you

Regard


The only way to get a key down from 2^255 to 2^100 is to divide by 2^155.  Meaning you would take that pubkey and divide it by 0, 1, 2, 3, 4, 5, ... all the way to 2^155 (which is a HUGE number) even if your computer could divide and write to file a trillion pubkeys a second, and start a new file once the current file got up to say 1 GB, there is still no way to capture from 0 to 2^155 pubkeys. It would take an eternity. But let us say you did manage to capture those 2^155 pubkeys...now you would have to search each and every pubkey in the 2^100 range to find the one that will give you the private key of the original 2^255 pubkey that you were searching for.

If you would have done like I asked and gave me a random pub key in a smaller range, like 2^40 range, I could show you with examples. 2^255 is to big man, for explanation purposes.

@WanderingPhilospher Please explain if I divide a public key with a range of 2 ^ 255 by 0, 1, 2, 3, 4, 5, ... up to 2 ^ 155 the probability is much more likely to get 2 ^ 100 than, for example, to split public key with a range of 2 ^ 255 by 2 ^ 235 to end up with the smallest 5 times range of 2 ^ 20 ?
I don't really understand number theory. Does all this have to do with modular multiplication? That is, getting 2 ^ 100 is more efficient and expected in theory the probability due to the fact that the module is 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141?
Pages: « 1 ... 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 88 89 90 91 92 93 94 [95] 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 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!