Pages:
Author

Topic: Pollard's kangaroo ECDLP solver - page 50. (Read 60381 times)

jr. member
Activity: 76
Merit: 4
July 04, 2021, 02:25:05 PM
Just FYI, for my 2 cents, if you know the range a key lies in, or want to gamble and take a chance where you think the key may lie, then I think subtraction is better.

Like I said a few posts back; we will take #120 puzzle for example. The private key can only start with 1 of 8 possibilities: 8, 9, A, B, C, D, E, F

Let's say you think it starts with C. You can then take the pubkey and subtract by C00000000000000000000000000000. Let us now say for example purposes the private key is:
C23BD97E765A75F0D6D4A6C6B67221.

So for your search range, after subtracting the C000....would be 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF

By subtracting, you went from a search range of 2^120 to 2^116; 16 times smaller the original search range. BUT if you guessed wrong and the key does not start with C, then you will not find the key.

Staying with the same example, if you thought it started with C, D, E, or F and you subtracted by C000....then you could search the range of:
0:3FFFFFFFFFFFFFFFFFFFFFFFFFFFFF, and now you've went from 2^120 down to 2^117, 8 times smaller. BUT again, if the key does not start with C, D, E, or F, you won't find the key.

Dividing is fascinating because in your mind you see a much smaller search range, BUT the amount of pubkeys you have to search GROWS the smaller you cut the search range.

So I understand you subtract C00000000000000000000000000000 from 02CEB6CBBCDBDF5EF7150682150F4CE2C6F4807B349827DCDBDD1F2EFA885A2630 the public key for 120 and for example if you wanted to search F then you would subtract F00000000000000000000000000000 from 120 public key? and then search the same range 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Correct.
i was thinking last night that we treat each keyspace as if they were  separated by a wall but they are not so i measured the distance between 115 and the center of 60 then reduced the public key of 115 by that amount. i hit the 115 public key ( i scanned a thru f on 60 and about one hour later I got a hit. Key found privkey fc07a1825367bbc
Publickey 0242257a130fe109c25c2ca6c60af60e5849305f77370401299b63da2094ec0297 and the addition  + 31464123230573851029232324144930570 . Trying it on 120 but so far no luck. i wish I had this kind of luck on 120 or the powerball lol. I have a image of the hit but don't think I can post it. The addition goes to the private key found
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 04, 2021, 12:26:51 PM
Just FYI, for my 2 cents, if you know the range a key lies in, or want to gamble and take a chance where you think the key may lie, then I think subtraction is better.

Like I said a few posts back; we will take #120 puzzle for example. The private key can only start with 1 of 8 possibilities: 8, 9, A, B, C, D, E, F

Let's say you think it starts with C. You can then take the pubkey and subtract by C00000000000000000000000000000. Let us now say for example purposes the private key is:
C23BD97E765A75F0D6D4A6C6B67221.

So for your search range, after subtracting the C000....would be 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF

By subtracting, you went from a search range of 2^120 to 2^116; 16 times smaller the original search range. BUT if you guessed wrong and the key does not start with C, then you will not find the key.

Staying with the same example, if you thought it started with C, D, E, or F and you subtracted by C000....then you could search the range of:
0:3FFFFFFFFFFFFFFFFFFFFFFFFFFFFF, and now you've went from 2^120 down to 2^117, 8 times smaller. BUT again, if the key does not start with C, D, E, or F, you won't find the key.

Dividing is fascinating because in your mind you see a much smaller search range, BUT the amount of pubkeys you have to search GROWS the smaller you cut the search range.

So I understand you subtract C00000000000000000000000000000 from 02CEB6CBBCDBDF5EF7150682150F4CE2C6F4807B349827DCDBDD1F2EFA885A2630 the public key for 120 and for example if you wanted to search F then you would subtract F00000000000000000000000000000 from 120 public key? and then search the same range 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Correct.
jr. member
Activity: 76
Merit: 4
July 04, 2021, 11:09:35 AM
Just FYI, for my 2 cents, if you know the range a key lies in, or want to gamble and take a chance where you think the key may lie, then I think subtraction is better.

Like I said a few posts back; we will take #120 puzzle for example. The private key can only start with 1 of 8 possibilities: 8, 9, A, B, C, D, E, F

Let's say you think it starts with C. You can then take the pubkey and subtract by C00000000000000000000000000000. Let us now say for example purposes the private key is:
C23BD97E765A75F0D6D4A6C6B67221.

So for your search range, after subtracting the C000....would be 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF

By subtracting, you went from a search range of 2^120 to 2^116; 16 times smaller the original search range. BUT if you guessed wrong and the key does not start with C, then you will not find the key.

Staying with the same example, if you thought it started with C, D, E, or F and you subtracted by C000....then you could search the range of:
0:3FFFFFFFFFFFFFFFFFFFFFFFFFFFFF, and now you've went from 2^120 down to 2^117, 8 times smaller. BUT again, if the key does not start with C, D, E, or F, you won't find the key.

Dividing is fascinating because in your mind you see a much smaller search range, BUT the amount of pubkeys you have to search GROWS the smaller you cut the search range.

So I understand you subtract C00000000000000000000000000000 from 02CEB6CBBCDBDF5EF7150682150F4CE2C6F4807B349827DCDBDD1F2EFA885A2630 the public key for 120 and for example if you wanted to search F then you would subtract F00000000000000000000000000000 from 120 public key? and then search the same range 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 04, 2021, 09:50:43 AM
Quote
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist.
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Haha! Got it!

Ok, so what are you working on NOW? I know you are always doing some kind of pubkey manipulation/tinkering. Any newly found secrets or tips you have found?


If i post 260 pubkeys in 110 bit rang. Maybe zieler with his gpu bank could find in a year.
If i print 720 pubkeys in 90 bitrange. How much days need to find ?
Probably 1.5 to 2 hours per pubkey; but all Tames would be players, which may speed it up, especially the latter pubkeys.  Would probably go with a little higher DP to try and cut down on tame and wild file size.

How many pubs would be in the 2^90 range?
1/720. 90bit
16/260 110bit
The above was an estimate using my hardware. I ran tests in the 92 bit range, with high DP (32) and it took around 1.5 hours.
If you are asking about Zielar's hardware, I would imagine he could run each pubkey, combine and check for solve, in around 33 days total. Maybe faster with 90 bit.
member
Activity: 348
Merit: 34
July 04, 2021, 09:28:12 AM
Quote
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist.
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Haha! Got it!

Ok, so what are you working on NOW? I know you are always doing some kind of pubkey manipulation/tinkering. Any newly found secrets or tips you have found?


If i post 260 pubkeys in 110 bit rang. Maybe zieler with his gpu bank could find in a year.
If i print 720 pubkeys in 90 bitrange. How much days need to find ?
Probably 1.5 to 2 hours per pubkey; but all Tames would be players, which may speed it up, especially the latter pubkeys.  Would probably go with a little higher DP to try and cut down on tame and wild file size.

How many pubs would be in the 2^90 range?
1/720. 90bit
16/260 110bit
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 04, 2021, 09:10:54 AM
Quote
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist.
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Haha! Got it!

Ok, so what are you working on NOW? I know you are always doing some kind of pubkey manipulation/tinkering. Any newly found secrets or tips you have found?


If i post 260 pubkeys in 110 bit rang. Maybe zieler with his gpu bank could find in a year.
If i print 720 pubkeys in 90 bitrange. How much days need to find ?
Probably 1.5 to 2 hours per pubkey; but all Tames would be players, which may speed it up, especially the latter pubkeys.  Would probably go with a little higher DP to try and cut down on tame and wild file size.

How many pubs would be in the 2^90 range?
member
Activity: 348
Merit: 34
July 04, 2021, 08:18:53 AM
Quote
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist.
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Haha! Got it!

Ok, so what are you working on NOW? I know you are always doing some kind of pubkey manipulation/tinkering. Any newly found secrets or tips you have found?


If i post 260 pubkeys in 110 bit rang. Maybe zieler with his gpu bank could find in a year.
If i print 720 pubkeys in 90 bitrange. How much days need to find ?
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
July 04, 2021, 07:55:24 AM
This was previously posted in this thread but deleted for some reason, it's a snippet from iceland2k14's Github that divides a pubkey by an arbitrary number and returning all the parts in between. I polished it a bit to print the compressed and uncompressed keys: https://gist.github.com/ZenulAbidin/286a652b160086b3b0f184a886ba68ca

Here's the script output when called with a random (uninteresting - with no balance) pubkey, divided by 48. The keys divided by 0, 1, 2, 3 and so on are printed in order:

Code:
>>> shiftdown("0267830f83723fa565ccb8677c14d13f7d47bf1008fea826833359f27f866632ab", 48)
023f81e98df59d891264d3fca9bca16552feaf1c7dba1bebd9a774c5fd6041f248 043f81e98df59d891264d3fca9bca16552feaf1c7dba1bebd9a774c5fd6041f24873afd6e4fe6e2e93db77f96f04428dc8f66831960a6122c81e8a6095428f8b94
03b7d16572d1c71e629645c311078ca3cfbdd15b752de69ac606d9b0076f8373ca 04b7d16572d1c71e629645c311078ca3cfbdd15b752de69ac606d9b0076f8373ca90d73ee0e478d1f9440ce9ae6a08d65d35a7f0c3b1b34d14e7d1bce7f51b3fc1
0227216fdb90bd046064c3b93d10270a047233d17073ec6dae0ece6fe5d5f3942c 0427216fdb90bd046064c3b93d10270a047233d17073ec6dae0ece6fe5d5f3942c4813f1e70df2d6222bc3c5fd822cd750ed63bc899651f89fe39d6630999360e4
033b9934491df1cd5308886498dcc2be62a7a38093a372dd9355d45625a50c5407 043b9934491df1cd5308886498dcc2be62a7a38093a372dd9355d45625a50c54075b2d3d5e12b0c892016f9d30e44f98fad0e9bf35ee6897b9278fabad3eb6f9ab
0236bd119cd3471b5dab8599b0963fafa39972139a9c0cf11d57ff88e4449c15ce 0436bd119cd3471b5dab8599b0963fafa39972139a9c0cf11d57ff88e4449c15ceecea8c7018281b1b7efe9571623a1656e929999064a8a38288e743158645b638
03dfacf1392ee2a08655897f64563cdbbc9f8d700425f5d47a789fdbab028061db 04dfacf1392ee2a08655897f64563cdbbc9f8d700425f5d47a789fdbab028061dbd5c479f1e6fc35d3db8088791a740b52d0324a034e76789b01f813d75aac184d
0375bb11d9936856d2a081847bf121cf6ba4b687ca1ed890e46662ec26d626514b 0475bb11d9936856d2a081847bf121cf6ba4b687ca1ed890e46662ec26d626514b8f517daf3b05802849bfd51d23b60104c185be840bd481289800b957aa1bbc3d
02d4524b803c225a177449263b024bb6b2b7196fed3cb6905dbe02f9a54b4cfa53 04d4524b803c225a177449263b024bb6b2b7196fed3cb6905dbe02f9a54b4cfa53529f8e7328cdf85fca6727e4d44e45402d43480e65c11117ae0041aa8978a1c4
03d71a03b483720655d327983a64dbedf6f3d4b29a0545907e8894a9d575d5e004 04d71a03b483720655d327983a64dbedf6f3d4b29a0545907e8894a9d575d5e0046c7bfc0f84767f43ddc51015469aa09108ca1b1369305c3430f6651b245c415d
0284ef6b14ba3accb84d467c5f39c3d6bee2b1b972f260283ef29a3391ff44cc92 0484ef6b14ba3accb84d467c5f39c3d6bee2b1b972f260283ef29a3391ff44cc92e191dd65da677a85c858795c6995a164a2c4c35ccd27dfdd7f14af515e679b4a
02afb52737d6ffc033455fcd93aac81b7f9744fdcb6393553a8c1ab5f0c7540f2e 04afb52737d6ffc033455fcd93aac81b7f9744fdcb6393553a8c1ab5f0c7540f2ec78c5e51b4eb89dab380cc62912d861084ad587b7530f6276a37ad206adfea4e
03e872311ae7200f33bff94d33159596e716a5d149547d4c8b5cc0319e69272006 04e872311ae7200f33bff94d33159596e716a5d149547d4c8b5cc0319e69272006fdf7c325e3e06e9fd666afb0af6e280d461a608e04614a2921a6d5ab41fc2491
0204f555a02d8e439e216f6f906ecb3f18a3156ac27a52b8be50241e94a4ad1b5b 0404f555a02d8e439e216f6f906ecb3f18a3156ac27a52b8be50241e94a4ad1b5be4f1c6ca003b968f1c34d055d4fb2d7bbdc152f2632dde308b0c08ba64e1636e
02f38ef3d039a01f254dfea5c526cd7fbac66ba4f119f4f079b023b358c966c88f 04f38ef3d039a01f254dfea5c526cd7fbac66ba4f119f4f079b023b358c966c88fc67031c67a9698df456693055b1e7f5905180f6d4f1ac050dd599d87614acd72
03e68a481b261229bc326522334573acedc08def4e27156625b67fc3618ab37865 04e68a481b261229bc326522334573acedc08def4e27156625b67fc3618ab37865fc00b314a85033f24e610fce633d3f0034dc07ced7bab805ddd4882ba385a411
037edc3ad44ab06b71a8c15cce4cf366411cd24d4017b4195a757aadf71b2bf79e 047edc3ad44ab06b71a8c15cce4cf366411cd24d4017b4195a757aadf71b2bf79e0ce8524931e85be88aef99081775e20140c19d8b62075e6216f211c5d977c3eb
029c864308910b3ac3856e71c1261018fff180f0340c19addfb62d277ccb6ae730 049c864308910b3ac3856e71c1261018fff180f0340c19addfb62d277ccb6ae73073625826e7e8cae06cbed7384ae158c584f7ce49e65f859da5ed3b8fada338de
02d7ca55e58d070e78126bb3bd2ed75825627775c9fddd032d35082c15131deebd 04d7ca55e58d070e78126bb3bd2ed75825627775c9fddd032d35082c15131deebd419621117f642ebdebf3d284ddaf8b10bbf601759ea6943032981b0240001f00
02ef9af103205ed92432df2a7d07241615a6566f80743fb5673bb6d6dee5d8b4f1 04ef9af103205ed92432df2a7d07241615a6566f80743fb5673bb6d6dee5d8b4f1e0e321db29fa0c9d550fcb08aed871ee6d9d25f670f5bbfad973048033db6cea
03ad7aaf4595b3afbf432cded4e394583d093b6c25049e5f3134c95358e3588745 04ad7aaf4595b3afbf432cded4e394583d093b6c25049e5f3134c95358e35887458a6dae6d5614abd980f56245ee45975ad72957bd800b6e0335382c2a59ed91c9
03ddb8447d948936dd4760cec2dd6cd273c7cf50ca4d5d381044b36ec8741b22c5 04ddb8447d948936dd4760cec2dd6cd273c7cf50ca4d5d381044b36ec8741b22c5a008a1b0cb8e41a1a376db4cf750bdd93b5dabb1458b58555c22de3d11693321
02a510ab53586dd366388ce5e83dd566dfa036fa5cea5b2ac50c0470ec39d952d5 04a510ab53586dd366388ce5e83dd566dfa036fa5cea5b2ac50c0470ec39d952d5715d568b37ecc1f1d2073482cb6fe48d5e44b03ac7340fcd04d8e0785461d20e
03f76ffb506b5757398a43d41ab98d2613b0df0e4637e3d266278395a7b578d09c 04f76ffb506b5757398a43d41ab98d2613b0df0e4637e3d266278395a7b578d09c0be238cfd2b54079d47ab5db419bba96c44ea0f7fce5a01a79da2c432c398597
02ca39a54157c35b04b1fee81710a867ed862fa279e2302662a720c8f46c5b4d7b 04ca39a54157c35b04b1fee81710a867ed862fa279e2302662a720c8f46c5b4d7b6bc7d7f2d980e86cac28bb5b63076a0dd0aa5fae87fa302d9fd4ad1e7c15269a
02ede8c8e81369cfeb0abb53de9511896d2d7c9e8e5ed40928bd356d7287c5d9b8 04ede8c8e81369cfeb0abb53de9511896d2d7c9e8e5ed40928bd356d7287c5d9b8bd74498e1cfb9b6d96bfe31c13179af6d92b84700353351d372939fe0c7eb41e
03920a3695485fd70304b37ebb7d8ee72c27d9052bdc1c59e1224cd9fa6124fc44 04920a3695485fd70304b37ebb7d8ee72c27d9052bdc1c59e1224cd9fa6124fc443281843227790e8f3ba432d58b32d0a156e6547f8b41ffa747b922abb709be55
0347d1765f1a5627a8c16041bbdf14d88abfbefed90aa8672ead83a6eff3b9f2e7 0447d1765f1a5627a8c16041bbdf14d88abfbefed90aa8672ead83a6eff3b9f2e7db8669de83cfb8c20454dc2197875c5bcfb499c47bd227c28a61d569bc02bf7f
0215f893d55929a8a101be21c6071f706d1be874af95a33eea23b7fc7a283d6f75 0415f893d55929a8a101be21c6071f706d1be874af95a33eea23b7fc7a283d6f759f1cf84d6b9bbd6bc97c41256b1f12a12ffacd00a1f915a92567318260ee3b38
027bd4d04d02759b7cddb134d6eb88b9ef54ea950c42b929b050e431e32dcc4276 047bd4d04d02759b7cddb134d6eb88b9ef54ea950c42b929b050e431e32dcc42768569e2c75663956d932c9ab6af8e33dd1b5922100ccd86b74065ca187da18e4a
022c5062793956267056d8420aff1e7628533cf9d0e4d30416aea06c8ffa57075a 042c5062793956267056d8420aff1e7628533cf9d0e4d30416aea06c8ffa57075ae55c7e00e8d3502960abc07df0462bac678d50fa0283423b6501c5cf384b4292
03d9e8fdea0f739a5a67585c801e24b8ae5f528e64ca9268ac2703dd96ef9640f3 04d9e8fdea0f739a5a67585c801e24b8ae5f528e64ca9268ac2703dd96ef9640f32f4e6e1c4780e7ee0e24b03edb514a1eb42b9311ae69f15c2933ea4bf1993e5b
02fa1e16af956474cdb52eb069012813ebfe508ac50e16bb7bef6c2233605c3709 04fa1e16af956474cdb52eb069012813ebfe508ac50e16bb7bef6c2233605c37093780172eeb613c2c19836f63bba7d7ac164420130c7d71dd06bd11e00f465db4
0361b28c079e403ec070efe4247ca22c652f4feee414cc361b1a70b6c8bd753f48 0461b28c079e403ec070efe4247ca22c652f4feee414cc361b1a70b6c8bd753f4890e76066c3a07d6514dab89784b7847d3967ea77e70322373cb485313c13f009
0347cbf63b2849c894f9c22660c766034226ac6c61ae76b220b5df7831cc9b9e0b 0447cbf63b2849c894f9c22660c766034226ac6c61ae76b220b5df7831cc9b9e0b91a3017cb6a8ed5744bbb30af37d984209a489f94c4c85629cfa1ef7ff3f5131
03a452116d43720f3fd28243e2a114ff145f8475016b34a378af021946e2a3f87b 04a452116d43720f3fd28243e2a114ff145f8475016b34a378af021946e2a3f87b28649a7d5a2559a5092d52c697c66aa04beb7f5d1ddc171003e50dea58b6674d
032a9c89f590aba176ef0d1a69dab1121fdf4d925900d3fa58676267b02c538567 042a9c89f590aba176ef0d1a69dab1121fdf4d925900d3fa58676267b02c5385672974e58f4b1073c60c89e2e7d1a1d39494cbe10e3fcfa2ed07843c078cc1af07
03385b50a489bebc64d8b989c55756ab8db18cbc9bedb3119d020de02ea728b8f0 04385b50a489bebc64d8b989c55756ab8db18cbc9bedb3119d020de02ea728b8f03dd3d75614a806a8aa9e691bfcb8e407e3b60713d2dea8209e577647ce502bb3
036b54187fd9bbbfa4839f0a8cd22117bb25c32d0488005efd2932748ca6b170b4 046b54187fd9bbbfa4839f0a8cd22117bb25c32d0488005efd2932748ca6b170b42776916233d8ebb1e7f8ced8ed49dded5c5431891f4cada816bd09f77ab965b1
03b02a39d64581de4644a9dabf7b82d39e56ab3451325be2d6297ef04bd41ae8d4 04b02a39d64581de4644a9dabf7b82d39e56ab3451325be2d6297ef04bd41ae8d4a35e244188dbf0bf733089259d4806eb6e6c7e9b623af719e6aec28a23e18301
0301df71ddf8bffee835dcaf0c8d40625b297b972fc65c9fc528bde11782f78056 0401df71ddf8bffee835dcaf0c8d40625b297b972fc65c9fc528bde11782f780569ec37a656613d99f2a5b828def9e7d9997766077f6dc734802e99e6458ba211f
03719a27faa6d659cbb05a19f8e194ee393b19ad2be8975a459afa67ff1e83f60f 04719a27faa6d659cbb05a19f8e194ee393b19ad2be8975a459afa67ff1e83f60fee4cb7b2dc564a9bf1646fe947d7f0a03b5e86a8824211d0ff81e092928612af
02c59315d3c212c3f5fac3c543f123e01a84968700563387838093b713255bc719 04c59315d3c212c3f5fac3c543f123e01a84968700563387838093b713255bc719ed2cdb661626657ed5dd4952a740ec3479c0f8c0c002c554b064ec61bc2d229e
036f7a6354b572e5d916977036a05080e8f1b4d4b9318ff01e2d34d1c2d23d74a8 046f7a6354b572e5d916977036a05080e8f1b4d4b9318ff01e2d34d1c2d23d74a80becc560cd7e25710dba8b091629bfd187baafcdfefedf85d571411ac00e0073
03171895c9e5014231367bcc5a4dfa7a627130766c8ee156be591f08406aad0559 04171895c9e5014231367bcc5a4dfa7a627130766c8ee156be591f08406aad05598dc268607c44ae9d4b778e33ae1c4a9df1b4e861c62007c3521f2973f3321ef7
027cea24324d9a75b087b0e4edfe9010e4344b82d031ea5aada98b76d8e3be195d 047cea24324d9a75b087b0e4edfe9010e4344b82d031ea5aada98b76d8e3be195d16eb15dc757870c79b18bc0ed6a73957ff1b0c0c0b453d92e37a950c1747fc26
02242dda2b724f4d591656be1385e1fa12b0f14058f018bfec4d43ff381de4fa71 04242dda2b724f4d591656be1385e1fa12b0f14058f018bfec4d43ff381de4fa712552b2a971ca452b757c9b50bb21c79d3cccfeb5b6959adf2d03c7007d4e630c
03c2966edf6fbc5d4fac3374bb2efa742866b172f7615e0bd344da40802e8d5f19 04c2966edf6fbc5d4fac3374bb2efa742866b172f7615e0bd344da40802e8d5f192e50a8745d87bcbd60d5f4e66615bb5f73399eea3aa831e510c91a614e7c0bb7
03762c522915bbf095256a81d5e4f727e5de10adeefae46a29aa145245cdfeb1aa 04762c522915bbf095256a81d5e4f727e5de10adeefae46a29aa145245cdfeb1aaf38fe17a77bea18c35f8597a58e3b5581c35ccfe07cd66b61c20b1858c21c905
03eae5e964c71aad0103e47ad1c51dfd176dc79d7723065809b9030898ced99138 04eae5e964c71aad0103e47ad1c51dfd176dc79d7723065809b9030898ced99138c34a46c6f2585b6760b04516323d89e01d7a3af1df27e84df18dfa58973c823d

*edit: some text was cut off*
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 04, 2021, 01:59:25 AM
Quote
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist.
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Haha! Got it!

Ok, so what are you working on NOW? I know you are always doing some kind of pubkey manipulation/tinkering. Any newly found secrets or tips you have found?

member
Activity: 348
Merit: 34
July 04, 2021, 01:41:07 AM
Also, I have accomplished what brainless has done now/in the past, but with a twist. 

I created 57 million pubkeys that all link to #120's pubkey but they all lie within the 2^120 range (the original search range 80000...FFFFF) They are all proportionately spaced out. I basically created a certain length "jump" if you will.

I first started the process to see how long it would take to create that many pubkeys, and after 20 million I just let it keep going and finally stopped it around 57 million.

I have the pubkeys and the applicable compressed addresses to each pubkey.  I secondly was going to run a test and search for all 57 million addresses with my modified VanBitcracken (one could do it with bitcrack as well, I think. When I once tried loading an input file of over 25 million addresses, bitcrack wouldn't start/run) and see how much of an impact it had on GPU speed.  I have yet to run that test.  Funny thing is, I can run python on 1 CPU thread and check 2,000 keys per second no matter how many addresses I search, 1 or 57 million.  Your only limitation is the amount of RAM you have.
Good job
just correct one line
Also, I have accomplished what brainless has done now/in the past, but with a twist. 
now/in the past >>  in the past
remove "now", as no one know whats NOW
and in the past aprox a year ago
Smiley
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 04, 2021, 12:08:38 AM
Also, I have accomplished what brainless has done now/in the past, but with a twist. 

I created 57 million pubkeys that all link to #120's pubkey but they all lie within the 2^120 range (the original search range 80000...FFFFF) They are all proportionately spaced out. I basically created a certain length "jump" if you will.

I first started the process to see how long it would take to create that many pubkeys, and after 20 million I just let it keep going and finally stopped it around 57 million.

I have the pubkeys and the applicable compressed addresses to each pubkey.  I secondly was going to run a test and search for all 57 million addresses with my modified VanBitcracken (one could do it with bitcrack as well, I think. When I once tried loading an input file of over 25 million addresses, bitcrack wouldn't start/run) and see how much of an impact it had on GPU speed.  I have yet to run that test.  Funny thing is, I can run python on 1 CPU thread and check 2,000 keys per second no matter how many addresses I search, 1 or 57 million.  Your only limitation is the amount of RAM you have.
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 03, 2021, 11:59:57 PM
Just FYI, for my 2 cents, if you know the range a key lies in, or want to gamble and take a chance where you think the key may lie, then I think subtraction is better.

Like I said a few posts back; we will take #120 puzzle for example. The private key can only start with 1 of 8 possibilities: 8, 9, A, B, C, D, E, F

Let's say you think it starts with C. You can then take the pubkey and subtract by C00000000000000000000000000000. Let us now say for example purposes the private key is:
C23BD97E765A75F0D6D4A6C6B67221.

So for your search range, after subtracting the C000....would be 0:FFFFFFFFFFFFFFFFFFFFFFFFFFFFF

By subtracting, you went from a search range of 2^120 to 2^116; 16 times smaller the original search range. BUT if you guessed wrong and the key does not start with C, then you will not find the key.

Staying with the same example, if you thought it started with C, D, E, or F and you subtracted by C000....then you could search the range of:
0:3FFFFFFFFFFFFFFFFFFFFFFFFFFFFF, and now you've went from 2^120 down to 2^117, 8 times smaller. BUT again, if the key does not start with C, D, E, or F, you won't find the key.

Dividing is fascinating because in your mind you see a much smaller search range, BUT the amount of pubkeys you have to search GROWS the smaller you cut the search range.
full member
Activity: 1232
Merit: 242
Shooters Shoot...
July 03, 2021, 11:11:59 AM
Quote
@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?

I'm not sure I understand your question 100% but,

dividing doesn't necessarily equal probability.  It just shrinks the search range BUT adds more pubkeys you have to search for in that smaller range.

With Pollard's Kangaroo, starting from scratch (meaning no previous tames and tamed wilds) I think it will take you longer to solve; unless you get lucky and pubkey is towards the beginning.

With BSGS, you save a little time searching say 100 pubkeys versus 1 pubkey, from not having to generate baby steps 100 times (most time consuming in BSGS)

With brute force like bitcrack, it would save time but since the more pubkeys you have in your input file, impacts the overall speed, then there is very little speed up, if any. But also, bitcrack is exponentially slower than Kangaroo or BSGS, just searching for 1 pubkey/address, so this would not be an option for me, at all.

But the biggest thing to remember is, can you write to file, the amount of pubkeys you wish to shrink the range by. If you want to shrink the range by more than 2^26, then it starts to take awhile/unfeasible to write all of those pubkeys to an input file. Just my 2 cents.
newbie
Activity: 30
Merit: 0
July 03, 2021, 03:46:59 AM
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?
member
Activity: 348
Merit: 34
July 03, 2021, 12:05:54 AM
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   
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
July 02, 2021, 02:24:10 AM
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.
newbie
Activity: 11
Merit: 0
July 01, 2021, 08:22:37 AM
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
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
June 28, 2021, 12:28:13 PM
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.
full member
Activity: 1232
Merit: 242
Shooters Shoot...
June 28, 2021, 11:57:28 AM
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.

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
June 28, 2021, 01:34:39 AM
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.
Pages:
Jump to: