Post
Topic
Board Development & Technical Discussion
Re: VanitySearch (Yet another address prefix finder)
by
WanderingPhilospher
on 06/04/2021, 07:53:09 UTC
Please tell me how you can change the code in VanitySearch, instead of looking for an address, I need to replace it with a search public key? That is, set the Gx point search function.

Let's say the public key is 03609747D18DB797783F8DA35BD9D95AAF717C99923D85CCF79C5396F8B897A960

Remove perfis 03

leave only Gx point and run

./VanitySearch -s "609747D18DB797783F8DA35BD9D95AAF717C99923D85CCF79C5396F8B897A960" -kp

I don't really know programming. I would be grateful for your answer!
Why do you have the -kp? That will generate one keypair and the -s is the seed.

Are you searching for a specific pub key?  Do you know the range?  Best to just search for address as minimal time is added; pubkey -> sha256 -> RIPEMD160.

Tell us more exactly what you are trying to do

I have a list of compressed public keys, in this list I know approximately that 2-3 keys are in a certain range. But the list is huge and I don't know exactly which line these keys are in. If  manually iterate over these keys using Kangaroo, it will take many years.
I made sure that VanitySearch using CUDA works very quickly, but the question is, can the VanitySearch code be fixed so that the Public key (Gx point) prefix is ​​used as a search?

I do not understand the architecture of CUDA, but if  search for the Public key as an enumeration, only 16 HEX values ​​of the [0123456789ABCDEF] format are used, I think it will be faster?

I tested the perfix for Bech32 (P2WPKH) addresses in VanitySearch many times faster than in Base58 (P2SH) addresses. I suppose this is due to the fact that in Bech32 (P2WPKH) there are much less characters than in Base58 (P2SH).

I tried to use python scripts to find public keys in the desired range using the "searchfile" function

Code:
...
...
    searchfile = open ("PubList.txt", "r")

    for line in searchfile:
        if pub in line:
               
                print ("KEY =" + priv + "- PUB =" + pub + "\ n")
...
...

But the speed in Python is very slow and besides, there is a load on the CPU. From here, I conclude that VanitySearch using CUDA works very quickly, but unfortunately I do not know the C ++  to fix it myself, and because of this I have a question for you how to fix the code so that VanitySearch looks for the "Public key (Gx point)" prefix ?

How many is "huge"?

Why not just process all the pubkeys out to their compressed address and use vanitysearch to search for the addresses? A lot easier than tinkering with code IMO.