Pages:
Author

Topic: keysubtracter - test - development requests - bug reports (Read 1788 times)

newbie
Activity: 6
Merit: 0
Ahhh, I see what you mean, for some reason I wasn't considering that as an option... could end up a fair depth deep in order to get a reasonable working range to scan.

Thanks for your insight.



full member
Activity: 1050
Merit: 219
Shooters Shoot...

Oh, so that means n is limited to 2^32 keys for each run...you could do as many runs as needed to reach desired number of generated keys.


Not sure how running a second or third time will help.... That will only create more at roughly the same distance apart as the previous run(s). Optimally, you'd want them closer together for a shorter search time.
Lol, I know you say you are new to this tool, but I do not understand what you are saying/wanting to do.

Let me break it down. Let's say you want to space all keys out at every 100; can be as close or as far apart as you want them.

So you run your first 2^32 keys as such; public key = 1, n = 2^32, range = 1:2^32*100 = n 4294967296 range = 1:429496729600, now keys will be spread out every 100 keys (429496729600 / 2^32 = 100). You follow so far?

Now let's say you want more than 2^32 keys, you want 2^33 keys. So on your next run, you would do the same, just change the public key: public key = 429496729600, n = 2^32, range = 1:2^32*100 = n 4294967296 range = 1:429496729600

SO yeah, I do not follow what you mean by "Optimally, you'd want them closer together for a shorter search time." it really makes no sense, because you can change your 2nd and 3rd runs to whatever you want, in relation to the first run, same distance, shorter distance, longer distance, etc. however, that's not the point, the point is/was, you can generate more than 2^32 keys, you just have to make multiple runs.

Quote
"Not sure how running a second or third time will help"

It helps if one wants more than 2^32 generated keys, not sure how else to explain it.
newbie
Activity: 6
Merit: 0

Oh, so that means n is limited to 2^32 keys for each run...you could do as many runs as needed to reach desired number of generated keys.


Not sure how running a second or third time will help.... That will only create more at roughly the same distance apart as the previous run(s). Optimally, you'd want them closer together for a shorter search time.

EDIT:

I am search for puzzle #130 in the range 200000000000000000000000000000000:3ffffffffffffffffffffffffffffffff

Created 2,000,000,000 subtracted pk's. Each should be 340,282,366,920,938,484,656,701,964,288 apart. That's quite a distance  - 7573948.693931144 years of searching for EACH at 10 Pkeys/s  (that is, if my math is correct). 15147897387862288 years of searching that range without the added pk's.

That is an impressive reduction of time, but alas, I don't think I have 7 and a half million years to spare haha

Absolutely great idea, still not in the feasibility category yet though for the higher ranges.
full member
Activity: 1050
Merit: 219
Shooters Shoot...
Is 'n' 32bit limited?

sadly yes, but are you going to do a list of more of 2 billion address?



The number of pubs that can be generated?

Oh, so that means n is limited to 2^32 keys for each run...you could do as many runs as needed to reach desired number of generated keys.
newbie
Activity: 6
Merit: 0
Is 'n' 32bit limited?

sadly yes, but are you going to do a list of more of 2 billion address?



The number of pubs that can be generated?
full member
Activity: 1050
Merit: 219
Shooters Shoot...
Ok, so I think I understand how this works... certainly has some interesting potential.

If I am searching a higher range, the most this will script will give me is a distance of 2^32 from the unknown pk - Am I understanding this correctly? or is it the number of additions/subtractions that is 2^32 limited?

What range values should I enter in the script? Should I start from 0 to upper range limit, or only the actual range I'm searching?

It's been decades since I've thought about any advanced math topics, so it may take a bit to wrap my head around this type of stuff. Definitely interesting though!

Is there any way to know if a subtracted public key reaches out of bounds? For example if the subtracted public key goes below 0? From my understanding it would simply just loop around... so, would it be an idea to check the generated public keys to see when the subtraction hits that loop around point, then backtrace to see how many steps it took to reach that point....(which should give a closer point to start scanning from)?

Thanks



The distance is based on how many keys you want to generate.

The program takes the range you provide (always rounds up to an even number), subtracts the start range from the end range, and then divides that by how many keys you want generated.

Sticking with numbers, if your range is 1:2,000,000; and the number of keys you want generated is 1,000,000; then the distance between generated keys will be 2; 2,000,000 divided by 1,000,000.

I do not know where the 32 bit limit is implied or came from. Can you explain more?
newbie
Activity: 6
Merit: 0
Ok, so I think I understand how this works... certainly has some interesting potential.

If I am searching a higher range, the most this will script will give me is a distance of 2^32 from the unknown pk - Am I understanding this correctly? or is it the number of additions/subtractions that is 2^32 limited?

What range values should I enter in the script? Should I start from 0 to upper range limit, or only the actual range I'm searching?

It's been decades since I've thought about any advanced math topics, so it may take a bit to wrap my head around this type of stuff. Definitely interesting though!

Is there any way to know if a subtracted public key reaches out of bounds? For example if the subtracted public key goes below 0? From my understanding it would simply just loop around... so, would it be an idea to check the generated public keys to see when the subtraction hits that loop around point, then backtrace to see how many steps it took to reach that point....(which should give a closer point to start scanning from)?

Thanks

full member
Activity: 1050
Merit: 219
Shooters Shoot...
I've made this simple Python script to process the resulting file from Keysubtractor, removing all the information beyond the pubkeys/hash160/addresses.

The original file will be kept intact as the script creates a new out file, this way you won't lose all the valuable information.


with open('pbks_in.txt', 'r') as file, open('pbks_out.txt', 'w') as outfile:
    for line in file:
        cleaned_line = line.split('#')[0].strip()
        outfile.write(cleaned_line + '\n')



Just have it in the same folder your Keysubtractor file is in, and don't forget to change the names of the in and out files to match yours.

I know this is simple stuff, but I hope this can be of help!
Just as a note, if people are not familiar with the program:

You only need the above python script if you are running in Random mode, -R.

If not running in Random mode, you can simply run the keysubtracter again without the -x flag.

newbie
Activity: 19
Merit: 5
I've made this simple Python script to process the resulting file from Keysubtractor, removing all the information beyond the pubkeys/hash160/addresses.

The original file will be kept intact as the script creates a new out file, this way you won't lose all the valuable information.


with open('pbks_in.txt', 'r') as file, open('pbks_out.txt', 'w') as outfile:
    for line in file:
        cleaned_line = line.split('#')[0].strip()
        outfile.write(cleaned_line + '\n')



Just have it in the same folder your Keysubtractor file is in, and don't forget to change the names of the in and out files to match yours.

I know this is simple stuff, but I hope this can be of help!
member
Activity: 177
Merit: 14
No, the program is actually very ok, i like it, it doesn't need any improvment. It does what it supposed to do. But sadly it's limited to 32 bits.

ps> and goodluck too!
copper member
Activity: 1330
Merit: 899
🖤😏
Thanks for answer.

I am not doing that special thing, just some testing with pzzle 125 Smiley
Yw.
By special thing you mean my suggestion to improve this tool? Well to be able to do that we need the code written and developed, and alberto is MIA for some time now!

Good luck with your test, I haven't left the testing grounds yet, so welcome on board, and keep grinding.

member
Activity: 177
Merit: 14
Thanks for answer.

I am not doing that special thing, just some testing with pzzle 125 Smiley
copper member
Activity: 1330
Merit: 899
🖤😏
Thanks Alberto and WanderingPhilospher for this useful program.

I understood most of it's functions however; I have problem understanding the X point function. What does it do exactly? Is it like adding/subtracting?

I need an example if possible  Grin

Sofar i've been using only -s and -a. but not X point. Do you recommend X point for puzzle #125 more? Even though i don't know how it can be useful haha

Thanks

GR Sasa
By X point you mean -z argument? That just excludes 02 and 03 from output keys, it is useful if you don't want to include both 02 and 03 x coordinates, that way you just add one with no 02, 03, it saves space and increases speed.

Show me you command line, lets see what you are doing.😉

You know I have been thinking about a feature addition, we could generate for example 10 M known private keys and only keeping the last 8 characters of their public keys while the private keys are completely saved, then we could run addition and subtraction operations while the program automatically checks all the result against those 10M known keys.

One time I had the public key for 0xb, which is key number 11 in decimal, now imagine how many easy and known keys are in our output files but we never notice them, but having the ability to check all on the fly would be a great addition and improvement IMHO.
member
Activity: 177
Merit: 14
Thanks Alberto and WanderingPhilospher for this useful program.

I understood most of it's functions however; I have problem understanding the X point function. What does it do exactly? Is it like adding/subtracting?

I need an example if possible  Grin

Sofar i've been using only -s and -a. but not X point. Do you recommend X point for puzzle #125 more? Even though i don't know how it can be useful haha

Thanks

GR Sasa
member
Activity: 177
Merit: 14
They are desktop developers. I assume noone here are Android developers.
copper member
Activity: 1330
Merit: 899
🖤😏
Hi dev,so I was wondering, is it possible to run key sub on android? Since it doesn't require any computing that much, it should be no problem to run it on a phone, have you ever done such a thing or is it too hard to do?
hero member
Activity: 828
Merit: 657
Uhh! hey there team mates! I was wondering what is the reason to select an even -n to add and subtract, if I set -n 5, what happens? Also selecting an even number which is a combination of 2 odd numbers will add/subtract odd numbers.  Or is it OK to do that?

The program create the same amount of keys In both sides of your target example:

Code:
+Key M
+Key ...
+Key 3
+Key 2
+Key 1
Target
-Key 1
-Key 2
-Key 3
-Key ...
-Key M

That is why N should be Even:

Code:
M = N /2

if you want some subtract some odd numbers you need to play a little with the size of the range  -r from:to divided bewteen the number N example:

Range 25 (19 Hex) divided bewteen 10

Code:
./keysubtracter -p 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 -n 10 -r 0:19
02231c58426010a60de22090bf73cc0ea14f1040273d5be74bc425cf7a82bb9c00 # - 5
033cdd67ebf89b79c953c8ca9b248a859aff02ebd69a4f17a850fa037cde0723b2 # + 5
023e40191ed19ba1c82d3948ffad7d11efc7352e8a071b09750fc0a62cba295f15 # - 10
02ad82cfd538d8f9a98ea7d2393a958962d3dd783456284353084ad74e459ca98c # + 10
02fca272f04368cc4e00cf283e075f1e6cace4754a4319c34258867f73c479f883 # - 15
0210bc32a1bcb978121653cfb6eba088969c3a7271cef1000e355da9785c74cf57 # + 15
029649575661e11d5c7c277d008c7a6d6a56c14824e31673a5a49809f94777858e # - 20
02a1c7e1fffa740388689234491047208e0f7c23a9bee61b61ef035a6d016a709c # + 20
020cbbd8790c965eab7f5ea396fe65e1ca3eb2e41febcc1a372159277adb8f8dd6 # - 25
033d21a2c11b8b32afeac80d3f1b391d98b388dd4ab78ca3926571114d7cc28ad8 # + 25
02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 # target

Odd numbers every ending 5

Range 15 (F Hex) divided bewteen 10

Code:
./keysubtracter -p 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 -n 10 -r 0:F
0379c92f7fca55ac0710de44e86e31cf50742e63206af99e19d69a2fb9a179b82e # - 3
035738dc2e02ce16ab3d169ecd252154c763e5c9daaa8497ac3f0b8636ced8e6bd # + 3
02c88af07db06461a231177c827e43c8fe3d8aa5a19ba067b76d5ef41c8a29e4e0 # - 6
03b7d0c69eb53fa7008224d802e6bc2e56e9e11d00c575b91a9bde5f44556d3469 # + 6
03f3d29f5ec05cff300fc951e6e85b4707998473707d0a3e27f3ec0b3f5aab41e6 # - 9
03bc31bb00836f096f24cf8b8382e68011e71081919360dace116701074aa64684 # + 9
03d132cb27b0d70ee54c853eb4373b993847dca55ee66a1bb6f5b95a63db7eed8e # - 12
02e3ebf6a1ebf608fd9c70127d4f1f9da9adba02a3a3f1dee38d6396d2f0ac3aa4 # + 12
02fca272f04368cc4e00cf283e075f1e6cace4754a4319c34258867f73c479f883 # - 15
0210bc32a1bcb978121653cfb6eba088969c3a7271cef1000e355da9785c74cf57 # + 15
02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 # target

Odd numbers 3,9,15

I hope this examples help you
copper member
Activity: 1330
Merit: 899
🖤😏
Uhh! hey there team mates! I was wondering what is the reason to select an even -n to add and subtract, if I set -n 5, what happens? Also selecting an even number which is a combination of 2 odd numbers will add/subtract odd numbers.  Or is it OK to do that?
jr. member
Activity: 50
Merit: 1
./keysubtracter -p 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630-n 100 -b 120

Note the bolded part above, no space therefore it starts to produce invalid keys.

Code:
03f1d41da8acf0506f3bf7140b5629dd33a5cf546133479530cd8065e335a97666 # - 13292279957849158729038070602803446
02000000000000000000000000000000000000000000000000000000000000000 # + 13292279957849158729038070602803446
02b70ae2dcb442548570313f652b91ca093a3acac3a2441cb64614e8195505b6b8 # - 26584559915698317458076141205606892
0367dabeef20a6a8b7b5555b162cc8c8489e3134dcec624fe028573c34dbbf20f6 # + 26584559915698317458076141205606892
02a1d21298779f888cd8169f9ed59e4383219cdadbdb342ba886034ef9013b89be # - 39876839873547476187114211808410338
02ae015703cbaee9570dc648d7bce78ac7cb438630e09d69eef4f1208655e1027d # + 39876839873547476187114211808410338

Note one of the public keys above is the 0 public key aka k(0) public key, it shows up if you subtract your k from your p, basically point at infinity.

Now our actual target's k is 13292279957849158729038070602803446 because we subtracted it from our target.

Showing examples for newbies to understand, not that a few posts above I wasn't a total noob, now I act as if I know things, go figure.😅



work on any puzzle public key puzzle 100 or 105, you will understand how it work, and put the range like this Keysubstracter -s -------  0:fffffffffffffffffffffffff -o puzzle100.txt

do only -s dont add -a, you will have all public key from   0 to range 100

put this range always
0 to : end range

and when you create the file.txt, just go and do the maths with https://www.boxentriq.com/code-breaking/big-number-calculator
just do this privatekey of the puzzle 100 - number that you get,, in any line ,exemple af55fc59c335c8ec67ed24826 + .....
you will get the privatekey of the public key that you generate with keysubs,,,, do that with more that 20 lines randomly,,, you wil have smaller and bigger ranges pk,,, you will understand how you will search for puzzle 120 or 125 by this methode,

because your work range with  rangepuzzle120:rangepuzzle120 and -a and -s
you only generate public keys between 800000000000000000000000000000 and ffffffffffffffffffffffffffffff,
but the methode above and i wanna you to try it

you will get all addresses txt file from 0 to puzzle,,, you can find any address in smaller range 10 or in 66 like 13zb1hQ did you get it ? you will now know  how to search and work with this programme. its easy, you can substract 125 puzzle to 80 and 100 but you will have millions in this txt file, you can do bsgs on that file but its slow because it devide your speed to millions that you generated, so you can generate with addresses and search manually, and there is a lot of tricks how can you search , but sir your methode is totally wrong, in one case,, you generate and search with bsgs in that range already, but its the same this if you search for 1 public key 125 puzzle or a file contain 100 million public key substracted from 125 and speed is devided to 100 million, same thing already,, but you must work again on that program to learn how to use it its simple and try my methode you will get it simple, just do an exemple or old puzzle you will find how it works





hero member
Activity: 828
Merit: 657
./keysubtracter -p 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630-n 100 -b 120

yes basically if you add two publickeys with same X but different Y value (Negative key of each other) exaple:

02f3fad2f7b0f7f5ba634a0618479694b5744091fc7ed53177b5578dba06ee4b77 - 03f3fad2f7b0f7f5ba634a0618479694b5744091fc7ed53177b5578dba06ee4b77

you always get the point at the infinity, so in that case you the value of One of those you can get the value of the other.
Pages:
Jump to: