Pages:
Author

Topic: VanitySearch (Yet another address prefix finder) - page 19. (Read 33086 times)

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Also some benchmark results for my K520 in lieu of DaveF's list:

Number of CPU thread: 8 <--- Xeon 2650 8 threads
GPU: GPU #0 GRID K520 (8x192 cores) Grid(64x128) 
128.80 Mkey/s (GPU 117.41 Mkey/s)

So Volta is already 10x faster than equivalent Kepler datacenter GPUs  Shocked

I got a good deal for a Tesla T4 that's better than a V100 so I'm eagerly awaiting for that to come and I'll post benchmarks of that too.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
I have a large list of uncompressed addresses. Total number of 70 million addresses.
I have divided this list into 7 files. I expect VanitySearch to find a key to at least one address from the list. Of course, this is a cosmic sum in terms of chance! But theoretical is it possible? Or won't it work? That is, in terms of selecting a perfix for the full value consisting of 33-34 characters "Base58 (P2SH)".

List: "10 000 addr (P2SH)":
Code:
1LAqmtxdjfsM2xsVVthsMUPsZ4Lw2X2sen
1JaS1LCj7m8BfJyexEqMVmSYs8RJhcRasy
1PTyMf9Z2TagnkMJVFNBEzR95QFqH99NQf
1NGL7KxXiYDcxxxhapukprgm2xm3D4MSL4
...
...
...
e.t.c

To increase the speed, maybe I need to cut addresses, leaving, for example, 10-12 characters for search?

Something like this:
Code:
1LAqmtxdjf
1JaS1LCj7m
1PTyMf9Z2T
1NGL7KxXiY
...
...
...
e.t.c

It's not as much as the type of address you're searching for (bech32 does slightly more operations than the other two) or the length of your prefixes, the program stores all of the prefixes in an std::vector, so ignoring memory requirements (70,000,000*34 characters makes 238 megabytes to store the data itself so it's doable) it iterates over all of those addresses, vector is not exactly a fast container type for iteration so you'll be spending too much time waiting for a key to be tried for all 70 million addresses to have a realistic chance of finding a match.

This can be fixed by storing all the prefixes in a bloom filter instead of a vector, but then again, that's not exactly the purpose of VanitySearch.

Quote
What do you mean? VanitySearch can't take a list of addresses, only a list of prefixes, and adding more of those will slow the program down.
It does and will take a list of full addresses. I think Jean Luc said it was better to put in full, if you were looking for a full address.

There are special codepaths taken when VanitySearch detects a full address that check the ripemd160 hash for a match instead of a lengthy strncmp.
full member
Activity: 1232
Merit: 242
Shooters Shoot...
Quote
What do you mean? VanitySearch can't take a list of addresses, only a list of prefixes, and adding more of those will slow the program down.
It does and will take a list of full addresses. I think Jean Luc said it was better to put in full, if you were looking for a full address.
newbie
Activity: 30
Merit: 0

What do you mean? VanitySearch can't take a list of addresses, only a list of prefixes, and adding more of those will slow the program down.

I have a large list of uncompressed addresses. Total number of 70 million addresses.
I have divided this list into 7 files. I expect VanitySearch to find a key to at least one address from the list. Of course, this is a cosmic sum in terms of chance! But theoretical is it possible? Or won't it work? That is, in terms of selecting a perfix for the full value consisting of 33-34 characters "Base58 (P2SH)".

List: "10 000 addr (P2SH)":
Code:
1LAqmtxdjfsM2xsVVthsMUPsZ4Lw2X2sen
1JaS1LCj7m8BfJyexEqMVmSYs8RJhcRasy
1PTyMf9Z2TagnkMJVFNBEzR95QFqH99NQf
1NGL7KxXiYDcxxxhapukprgm2xm3D4MSL4
...
...
...
e.t.c

To increase the speed, maybe I need to cut addresses, leaving, for example, 10-12 characters for search?

Something like this:
Code:
1LAqmtxdjf
1JaS1LCj7m
1PTyMf9Z2T
1NGL7KxXiY
...
...
...
e.t.c

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
@NotATether I want to see how many keys are generated when I run from the CPU and when I run from the GPU? I would like to see their difference on the speed of key generation?

In the interactive display it shows you the number of MKeys/s it is searching at for GPU and combined CPU/GPU use, like this:

Code:
$ ./VanitySearch -gpu 1notatether
VanitySearch v1.19
Difficulty: 10054102514374868992
Search: 1notatether [Compressed]
Start Mon Mar  1 06:53:26 2021
Base Key: 2A1422BAED92CCEAC4B23F7DF4CB207FAA88DC1D550D86EA3C6FE7D0881F08E5
Number of CPU thread: 1
GPU: GPU #0 GRID K520 (8x192 cores) Grid(64x128)
[123.15 Mkey/s][GPU 121.60 Mkey/s][Total 2^30.46][Prob 0.0%][50% in 1794.37y][Found 0]

The GPU speed is listed in the [GPU] bracket and the combined GPU+CPU speed is in the first bracket. There is no separate listing for CPU only.

(Yes, I mistakenly got a K520 so I'm stuck with compute cap 30 and CUDA Toolkit 10.2. I don't know the status of my other Tesla server yet. I guess on the flip side this makes it easier for me to run Bitcrack through a debugger even though it's non-reproducible there? Huh)

@NotATether and another question, does it affect the key generation speed if I add a large list   (70 million Bitcoin Addresses (P2SH) in uncompressed format)?

What do you mean? VanitySearch can't take a list of addresses, only a list of prefixes, and adding more of those will slow the program down.
newbie
Activity: 30
Merit: 0
I run VanitySearch on Ubuntu using several files to check:

Code:
@root> ./VanitySearch -u -i List01.txt -u -i List02.txt -u -i List03.txt -u -i List04.txt -u -i List05.txt -u -i List06.txt -u -i List07.txt -o result.txt -r 1


But unfortunately I cannot see in the terminal how many keys are generated and checked during the process. Is there a way to check this process through logs?

It prints the same text in the file for each private key found:

Quote
Pub Addr:
Priv (WIF):
Priv (HEX):

So you can try searching for all the lines that have Pub Addr in them and then tally them up using:

grep "Pub Addr" result.txt | wc -l

@NotATether I want to see how many keys are generated when I run from the CPU and when I run from the GPU? I would like to see their difference on the speed of key generation?

@NotATether and another question, does it affect the key generation speed if I add a large list   (70 million Bitcoin Addresses (P2SH) in uncompressed format)?


legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
I run VanitySearch on Ubuntu using several files to check:

Code:
@root> ./VanitySearch -u -i List01.txt -u -i List02.txt -u -i List03.txt -u -i List04.txt -u -i List05.txt -u -i List06.txt -u -i List07.txt -o result.txt -r 1


But unfortunately I cannot see in the terminal how many keys are generated and checked during the process. Is there a way to check this process through logs?

It prints the same text in the file for each private key found:

Quote
Pub Addr:
Priv (WIF):
Priv (HEX):

So you can try searching for all the lines that have Pub Addr in them and then tally them up using:

grep "Pub Addr" result.txt | wc -l
newbie
Activity: 30
Merit: 0
I run VanitySearch on Ubuntu using several files to check:

Code:
@root> ./VanitySearch -u -i List01.txt -u -i List02.txt -u -i List03.txt -u -i List04.txt -u -i List05.txt -u -i List06.txt -u -i List07.txt -o result.txt -r 1


But unfortunately I cannot see in the terminal how many keys are generated and checked during the process. Is there a way to check this process through logs?
member
Activity: 158
Merit: 39
now clear Smiley
Thnx

There is a way to get custom middle? (or end / but its cheksum)
1*custom*(middle) or 1*custom(end)
Hm, not working.
Works just fine; your input should be like this:

1*23*Bama
Would produce 1xxxxxx23xxxxBama

1*23
Would produce 1xxxxxxxxxxxxxxx23

1*Bama*
Would produce 1xxxxBamaxxxxxxxx
full member
Activity: 1232
Merit: 242
Shooters Shoot...
There is a way to get custom middle? (or end / but its cheksum)
1*custom*(middle) or 1*custom(end)
Hm, not working.
Works just fine; your input should be like this:

1*23*Bama
Would produce 1xxxxxx23xxxxBama

1*23
Would produce 1xxxxxxxxxxxxxxx23

1*Bama*
Would produce 1xxxxBamaxxxxxxxx
legendary
Activity: 3808
Merit: 7912
There is a way to get custom middle? (or end / but its cheksum)
1*custom*(middle) or 1*custom(end)
Hm, not working.
That's too vague.  No one can help you if you don't describe the problem.
member
Activity: 158
Merit: 39
There is a way to get custom middle? (or end / but its cheksum)
1*custom*(middle) or 1*custom(end)
Hm, not working.
hero member
Activity: 1443
Merit: 513
There is a way to get custom middle? (or end / but its cheksum)
1*custom*(middle) or 1*custom(end)
newbie
Activity: 30
Merit: 0
Can I specify the desired search range for private keys in "VanitySearch"? I've seen BitCrack has --keyspace but I'm most interested in "VanitySearch" from @Jean_Luc.
Not without tweaking the existing code
Please tell me how to make "VanitySearch" generate random private keys in the range of no more than 2 ^ 180 keys. I'm not good at C ++ programming, but what needs to be changed in the "Random.cpp" code to get this result?
It requires more than Random.cpp changes.  Especially if you are wanting to remove the endo and symmetry keys.
Of all the "VanitySearch" GitHub has very high quality and works well only "@Jean_Luc". How to make it so that "VanitySearch" generates random private keys in the range of no more than 2 ^ 180 keys?
full member
Activity: 1232
Merit: 242
Shooters Shoot...
Can I specify the desired search range for private keys in "VanitySearch"? I've seen BitCrack has --keyspace but I'm most interested in "VanitySearch" from @Jean_Luc.
Not without tweaking the existing code
Please tell me how to make "VanitySearch" generate random private keys in the range of no more than 2 ^ 180 keys. I'm not good at C ++ programming, but what needs to be changed in the "Random.cpp" code to get this result?
It requires more than Random.cpp changes.  Especially if you are wanting to remove the endo and symmetry keys.
newbie
Activity: 30
Merit: 0
Can I specify the desired search range for private keys in "VanitySearch"? I've seen BitCrack has --keyspace but I'm most interested in "VanitySearch" from @Jean_Luc.
Not without tweaking the existing code
Please tell me how to make "VanitySearch" generate random private keys in the range of no more than 2 ^ 180 keys. I'm not good at C ++ programming, but what needs to be changed in the "Random.cpp" code to get this result?
full member
Activity: 1232
Merit: 242
Shooters Shoot...
Can I specify the desired search range for private keys in "VanitySearch"? I've seen BitCrack has --keyspace but I'm most interested in "VanitySearch" from @Jean_Luc.
Not without tweaking the existing code
newbie
Activity: 30
Merit: 0
Can I specify the desired search range for private keys in "VanitySearch"? I've seen BitCrack has --keyspace but I'm most interested in "VanitySearch" from @Jean_Luc.
newbie
Activity: 7
Merit: 1
And since I understood if I add a key -r 10 the algorithm begins to generate keys in a random 10Mkey/s and check with a list of existing addresses.
it turns into a game who is more successful in this version of the universe  Smiley
Quote
VanitySearch.exe -t 0 -gpu -gpuId 0 -g 24,128 -r 10 -i btc.txt -o output.txt
[Loading input file 100.0%]
VanitySearch v1.19
[Building lookup16 100.0%]
[Building lookup32 100.0%]
Search: 24381246 addresses (Lookup size 65536,[287,3141]) [Compressed]
Start Wed Feb 17 17:57:44 2021
Base Key: Randomly changed every 10 Mkeys
Number of CPU thread: 0
GPU: GPU #0 GeForce GT 1030 (3x128 cores) Grid(24x128)

Warning, 41264 items lost
Hint: Search with less prefixes, less threads (-g) or increase maxFound (-m)
[9.28 Mkey/s][GPU 9.28 Mkey/s][Total 2^31.77][Prob 0.0%][50% in 3.46183e+33y][Found 0]
I think this is better than generating one key and searching nearby in a small range of matches.


my benchmark on GPU GeForce GT 1030

Quote
C:\Users\adaris\Desktop\btc\VanitySearch>VanitySearch.exe -check
GetBase10() Results OK
Add() Results OK : 427.350 MegaAdd/sec
Mult() Results OK : 31.716 MegaMult/sec
Div() Results OK : 4.322 MegaDiv/sec
R1=1000003D1
R2=1000007A2000E90A1
Field characteristic size: 256bits
ModInv()/ModExp() Results OK
ModInv() Edge cases Results OK
.Avg = 6.13
ModInv() Results OK : 445.968 KiloInv/sec
ModInv() cycles : 6503.24
ModSqrt() Results OK !
IntGroup.ModInv() Results OK : 5.641 MegaInv/sec
ModMulK1() Results OK : 27.392 MegaMult/sec
ModSquareK1() Results OK : 31.616 MegaSqr/sec
ModInv() Cost : 141.8 S
ModMulK1order() Results OK : 3.785 MegaMult/sec
Check Generator :OK
Check Double :OK
Check Add :OK
Check GenKey :OK
Adress : 15t3Nt1zyMETkHbjJTTshxLnqPzQvAtdCe OK!
Adress : 1BoatSLRHtKNngkdXEeobR76b53LETtpyT OK!
Adress : 1Test6BNjSJC5qwYXsjwKVLvz7DpfLehy OK!
Adress : 16S5PAsGZ8VFM1CRGGLqm37XHrp46f6CTn OK!
Adress : 1Tst2RwMxZn9cYY5mQhCdJic3JJrK7Fq7 OK!
Adress : 3CyQYcByvcWK8BkYJabBS82yDLNWt6rWSx OK!
Adress : 31to1KQe67YjoDfYnwFJThsGeQcFhVDM5Q OK!
Adress : bc1q6tqytpg06uhmtnhn9s4f35gkt8yya5a24dptmn OK!
Check Calc PubKey (full) 1ViViGLEawN27xRzGrEhhYPQrZiTKvKLo :OK
Check Calc PubKey (even) 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP:OK
Check Calc PubKey (odd) 18aPiLmTow7Xgu96msrDYvSSWweCvB9oBA:OK
GPU: GPU #0 GeForce GT 1030 (3x128 cores) Grid(24x128)
Seed: 1613577059
61.751 MegaKey/sec
ComputeKeys() found 611 items , CPU check...
GPU/CPU check OK
member
Activity: 158
Merit: 39
There is a way to get custom middle? (or end / but its cheksum)
Pages:
Jump to: