Pages:
Author

Topic: Vanitygen: Vanity bitcoin address generator/miner [v0.22] - page 4. (Read 1153511 times)

newbie
Activity: 27
Merit: 16
This old post may be the one you're looking for and I believe it's the process used by most vanity address generator including Vanitygen for split-key generation: Re: custom bitcoin address wanted.
There are a couple of "wrong terms" used in that post that needs to be pointed out.

3) "less than the SECP256k1 generator" it should be less than secp256k1 order.

4) "reduce it modulo the SECP256k1 generator" again same mistake as above (it should be reduce modulo N).

"In ECDSA, you convert a private key to a public key by multiplying by the generator. Division is impossible." They mean reversing the process is impossible, not division. You can divide an EC point by an integer (ie. G/A = A-1*G).


Thank you so much guys for your help.

I do "get" the overall split key process, but where I'm getting stuck is exactly how Vanitygen generates the address? The SAME address that is ultimately created by combining the base private key and the privkeypart together. How does it do it?
member
Activity: 89
Merit: 11
Hi,

I am fascinated by Bitcoin and found Vanitygen particularly interesting.

I think I understand most of how it works except for the split key generation.

I get how the process works, but I cannot understand exactly how the PrivkeyPart and the address are calculated as the PrivkeyPart is not the private key for the Address. So how are they calculated seperately?

If anyone could provide an answer it would be much appreciated.

Thanks in advance.

You can find the basics of the agorithm here:
http:gobittest.appspot.com/VanityAll

On this site your can combine both private and public key to generate new results.
It show you raw private/public keys as well as the generated bitcoin addresses.
It supports both addition and multiplication of the private keys.
Vanitygen only uses the additions methode because public keys can only be added.
legendary
Activity: 3472
Merit: 10611
This old post may be the one you're looking for and I believe it's the process used by most vanity address generator including Vanitygen for split-key generation: Re: custom bitcoin address wanted.
There are a couple of "wrong terms" used in that post that needs to be pointed out.

3) "less than the SECP256k1 generator" it should be less than secp256k1 order.

4) "reduce it modulo the SECP256k1 generator" again same mistake as above (it should be reduce modulo N).

"In ECDSA, you convert a private key to a public key by multiplying by the generator. Division is impossible." They mean reversing the process is impossible, not division. You can divide an EC point by an integer (ie. G/A = A-1*G).
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
This old post may be the one you're looking for and I believe it's the process used by most vanity address generator including Vanitygen for split-key generation: Re: custom bitcoin address wanted.
newbie
Activity: 27
Merit: 16
Hi,

I am fascinated by Bitcoin and found Vanitygen particularly interesting.

I think I understand most of how it works except for the split key generation.

I get how the process works, but I cannot understand exactly how the PrivkeyPart and the address are calculated as the PrivkeyPart is not the private key for the Address. So how are they calculated seperately?

If anyone could provide an answer it would be much appreciated.

Thanks in advance.
member
Activity: 89
Merit: 11
When i try to build to build the program in Win32, I get this error:

I haven't change anything in the code. How do I fix the errors?

The SSL library was updated, changing the way the BigNumber stuff works.
you could check this commit in my repo to see the changes I made to get it to work again.
https://github.com/kangaderoo/vanitygen/commit/312c32d13dde534f0968397f4dd5fd42ef4898fc
newbie
Activity: 19
Merit: 2
When i try to build to build the program in Win32, I get this error:

vanitygen.c(66): error C2057: expected constant expression
vanitygen.c(66): error c2466: cannot allocate an array of constant size 0
vanitygen.c(66): error c2133: 'ppnt': unknown size

The code is from:

vg_thread_loop(void *arg)
{
unsigned char hash_buf[128];
unsigned char *eckey_buf;
unsigned char hash1[32];

int i, c, len, output_interval;
int hash_len;

const BN_ULONG rekey_max = 10000000;
BN_ULONG npoints, rekey_at, nbatch;

vg_context_t *vcp = (vg_context_t *) arg;
EC_KEY *pkey = NULL;
const EC_GROUP *pgroup;
const EC_POINT *pgen;
const int ptarraysize = 256;
EC_POINT *ppnt[ptarraysize];

I haven't change anything in the code. How do I fix the errors?
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Actually i think especially in regards to the cuda version of bitcrack, the number of cuda cores for the specific card is really important, and there is actually a bunch of older cards with some great numbers here, for ex. the GTX 680 have 1536 cuda cores, which also happends to be the number of cuda cores for the GTX 770.

Provided that programs allocate memory with the full grid size. The grid's Y axis has been pegged to 128 for a long time until some newer cards introduced a 256-card Y axis. And some programs still assume a 128-core axis and have it hardcoded so clearly those aren't making use of the entire grid.
full member
Activity: 706
Merit: 111
Has anyone put together (or started to put together) a list of CPUs / Video Cards & the speed you can get out of them.
I know it's a newer project and Jean_Luc is working VERY VERY hard on it so getting accurate numbers is going to be a moving target. But for now all we can do is look through the thread and see who is running what to get a general idea.
So far I have pulled from this thread:

GPU: GPU #0 GeForce GTX 1080 Ti (28x128 cores) Grid(224x128)
914.418 MK/s (GPU 896.216 MK/s)

GPU: GPU #0 GeForce GTX 1050 Ti (6x128 cores) Grid(48x128)
220.180 MK/s (GPU 220.180 MK/s)

GPU: GPU #0 GeForce GT 520M (1x48 cores) Grid(8x128)
10.233 MK/s (GPU 7.026 MK/s)

GPU: GPU #0 GeForce RTX 2070 (36x64 cores) Grid(288x128)
1535.880 MK/s (GPU 1470.257 MK/s)

Added 30-April-2019

GPU: GPU #0 GeForce GTX 1060 3GB (9x128 cores) Grid(72x128)
321.929 MK/s (GPU 321.929 MK/s)

GPU: GPU #0 GeForce GTX 1080 (20x128 cores) Grid(160x128)
672.062 MK/s (GPU 672.062 MK/s)

Added 1-May-2019

GPU: GPU #0 Tesla V100-SXM2-16GB (80x64 cores) Grid(640x128)
GPU: GPU #3 Tesla V100-SXM2-16GB (80x64 cores) Grid(640x128)
GPU: GPU #2 Tesla V100-SXM2-16GB (80x64 cores) Grid(640x128)
GPU: GPU #1 Tesla V100-SXM2-16GB (80x64 cores) Grid(640x128)
7260.449 MK/s (GPU 7212.931 MK/s)
So 7260 / 4 = 1815 MK/s

GPU: GPU #0 GeForce GTX 750 (4x128 cores) Grid(32x128)
104.960 MK/s (GPU 94.405 MK/s) (2^32.12)

Added 3-May-2019
i7-7700K CPU Number of CPU thread: 8
22.092 MK/s (GPU 0.000 MK/s)

With -t 7
Number of CPU thread: 7
21.609 MK/s

Added 8-May-2019

EVGA RTX 2080 XC ULTRA
1427.967 MK/s (GPU 1424.946 MK/s)

Added 23-May-2019

GPU: GPU #0 GeForce GTX 1660 Ti
961.319 MK/s (GPU 961.319 MK/s)

GPU: GPU #0 GeForce RTX 2080 Ti (68x64 cores) Grid(544x128)
GPU: GPU #1 GeForce RTX 2080 Ti (68x64 cores) Grid(544x128)
5128.213 MK/s (GPU 5128.213 MK/s)
So 5128 / 2  = 2564 MK/s


Added 8-June-2019

GPU: GPU #0 GeForce GTX 960M (5x128 cores) Grid(40x128)
117.802 MK/s (GPU 117.802 MK/s)

Added 23-July-2019

GPU: GPU #0 GeForce GTX 1660 (22x64 cores) Grid(176x128)
839.061 MK/s (GPU 839.061 MK/s)

Added 25-July-2019

GPU: GPU #0 GeForce GTX 1650 (14x64 cores) Grid(112x128)
511.906 MK/s (GPU 511.906 MK/s) (2^36.97)


Added 21-Nov-2019

GPU: GPU #0 GeForce GTX 970 (13x128 cores) Grid(104x128)
360.322 MK/s (GPU 331.442 MK/s) (2^32.77)

Added 25-Nov-2019

GPU: GPU #0 GeForce GTX 980 (16x128 cores) Grid(128x128)
375.384 MK/s (GPU 375.384 MK/s)

GPU: GPU #0 GeForce RTX 2060 SUPER (34x64 cores) Grid(272x256)
[1361.71 Mkey/s][GPU 1361.71 Mkey/s]

GPU: GPU #0 GeForce RTX 2080 SUPER (48x64 cores) Grid(384x256)
[2001.52 Mkey/s][GPU 2001.52 Mkey/s]

Anything else?

-Dave

Last updated 25-Nov-2019.

Actually i think especially in regards to the cuda version of bitcrack, the number of cuda cores for the specific card is really important, and there is actually a bunch of older cards with some great numbers here, for ex. the GTX 680 have 1536 cuda cores, which also happends to be the number of cuda cores for the GTX 770.

For comparison other cards cuda cores:
RTX 2080 TI - 4352
GTX 1080 TI - 3583
RTX 2080 Super - 3072
RTX 2080 Gaming - 2944
GTX 780 TI - 2880
GTX 980 TI - 2816
GTX 2070 TI - 2560
GTX 1080 - 2560
RTX 2070 Gaming - 2304
GTX 780 - 2304
RTX 2060 Super - 2176
GTX 980 - 2048
RTX 2060 - 1920
GTX 1070 - 1920
GTX 1060 1708
GTX 1660 TI - 1536
GTX 770 - 1536
GTX 680 - 1536
GTX 1660 Dual OC - 1408
GTX 670 - 1344
GTX 1660 Armor - 1280
GTX 1060 - 1152
GTX 760 - 1152
GTX 1650 - 896
GTX 1050 TI - 768
GTX 1050 - 640
GTX 580 - 512
legendary
Activity: 3696
Merit: 2219
💲🏎️💨🚓
Code:
-----BEGIN BITCOIN SIGNED MESSAGE-----
The person who owns the bitcointalk account "GranRethory" controls bitcoin address "1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8"
-----BEGIN SIGNATURE-----
1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8
HDvBXxvFVv/yDRlM13eSLmqIXfYoExfg75wjeo49rszwKeEEeCR4gQwgxs+uOFemGlEDiZHZqoXA6MHYcWBn5Qk=
-----END BITCOIN SIGNED MESSAGE-----

Quote
May I ask why you chose that particular pattern?

I chose it because I read a lot about burning bitcoin and how it got stuck in my brain

Please tell me if this is correct

If you can sign a message via a wallet address then the chances for using that wallet address are slim at best - unless of course you were to dispose of the privkey and had never installed a wallet address into a bitcoin wallet ever.  There are more resilient wallet addresses that you can burn your crypto - another way to burn them is to donate them to a registered charity.
member
Activity: 85
Merit: 13

Well done - do you know How to sign a message?! and can you post that signed message here using the template:

Code:
-----BEGIN BITCOIN SIGNED MESSAGE-----

-----BEGIN SIGNATURE-----


-----END BITCOIN SIGNED MESSAGE-----

Can I just ask why you chose that particular pattern?



Code:
-----BEGIN BITCOIN SIGNED MESSAGE-----
The person who owns the bitcointalk account "GranRethory" controls bitcoin address "1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8"
-----BEGIN SIGNATURE-----
1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8
HDvBXxvFVv/yDRlM13eSLmqIXfYoExfg75wjeo49rszwKeEEeCR4gQwgxs+uOFemGlEDiZHZqoXA6MHYcWBn5Qk=
-----END BITCOIN SIGNED MESSAGE-----





May I ask why you chose that particular pattern?


I chose it because I read a lot about burning bitcoin and how it got stuck in my brain


Please tell me if this is correct
legendary
Activity: 3696
Merit: 2219
💲🏎️💨🚓

Well done - do you know How to sign a message?! and can you post that signed message here using the template:

Code:
-----BEGIN BITCOIN SIGNED MESSAGE-----

-----BEGIN SIGNATURE-----


-----END BITCOIN SIGNED MESSAGE-----

Can I just ask why you chose that particular pattern?
member
Activity: 85
Merit: 13
I find

1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8


Code:
-----BEGIN BITCOIN SIGNED MESSAGE-----
The person who owns the bitcointalk account "GranRethory" controls bitcoin address "1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8"
-----BEGIN SIGNATURE-----
1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8
HDvBXxvFVv/yDRlM13eSLmqIXfYoExfg75wjeo49rszwKeEEeCR4gQwgxs+uOFemGlEDiZHZqoXA6MHYcWBn5Qk=
-----END BITCOIN SIGNED MESSAGE-----



https://www.blockchain.com/btc/address/1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8


newbie
Activity: 20
Merit: 0
vanitygen -seed option update:

instead of using seed plus random numbers have option to concatenate seed+n where n is a number that starts 1 to n times n has no upper limit such as seed1 seed2 etc.. and hash it using sha256(to_string(seed+n)) and convert that sha256 to address compressed and uncompressed format can you add such functionality ?
legendary
Activity: 3500
Merit: 2792
Escrow Service
Is it possible to put complete BTC adresses in the Präfix list and Not only a Part of a BTC adress?
But why? You'll never find it, and you can easily prove this to yourself by searching for only half the address:
Code:
./oclvanitygen 1P5ZEDWTKTFGxQjZ
Difficulty: 111848783584334965704335428
[8.59 Mkey/s][total 144703488][Prob 0.0%][50% in 2.861728e+11y]
If, after a couple billion years, you find a match for the first 15 characters, it only takes you (give or take) 1287559351899699065881753621004568 times longer to find the private key for the correct address.

But if you really want to try to brute force a funded Bitcoin address, you'll be much more likely to find one if you search for a long list of addresses at once.
yes i know that this is hopeless / practically impossible, but a technician wants to test something like this, just to play around...
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Is it possible to put complete BTC adresses in the Präfix list and Not only a Part of a BTC adress?
But why? You'll never find it, and you can easily prove this to yourself by searching for only half the address:
Code:
./oclvanitygen 1P5ZEDWTKTFGxQjZ
Difficulty: 111848783584334965704335428
[8.59 Mkey/s][total 144703488][Prob 0.0%][50% in 2.861728e+11y]
If, after a couple billion years, you find a match for the first 15 characters, it only takes you (give or take) 1287559351899699065881753621004568 times longer to find the private key for the correct address.

But if you really want to try to brute force a funded Bitcoin address, you'll be much more likely to find one if you search for a long list of addresses at once.
legendary
Activity: 3500
Merit: 2792
Escrow Service
Is it possible to put complete BTC adresses in the Präfix list and Not only a Part of a BTC adress?

Error message: Prefix xxx is too long

With this one you can put the whole address in

https://github.com/JeanLucPons/VanitySearch

https://bitcointalksearch.org/topic/vanitysearch-yet-another-address-prefix-finder-5112311
Yes i know but i have a AMD RX580 GPU and this software support only NVIDIA GPU and CUDA driver
full member
Activity: 706
Merit: 111
Is it possible to put complete BTC adresses in the Präfix list and Not only a Part of a BTC adress?

Error message: Prefix xxx is too long

With this one you can put the whole address in

https://github.com/JeanLucPons/VanitySearch

https://bitcointalksearch.org/topic/vanitysearch-yet-another-address-prefix-finder-5112311
legendary
Activity: 3500
Merit: 2792
Escrow Service
Is it possible to put complete BTC adresses in the Präfix list and Not only a Part of a BTC adress?

Error message: Prefix xxx is too long
legendary
Activity: 3416
Merit: 1912
The Concierge of Crypto
I don't even have a GPU to do this, I just use the CPU versions. Of course, that limits me to 4 or 5 characters, maybe longer if I can wait.

For most purposes though, I simply recommend to most people, don't bother and use normal segwit addresses. Now, if only there were a vanity generator for native segwit multi-sig addresses, that would be something.

Code:
1 sig    = bc1qxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2-of-3   = bc1qxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
15-of-15 = bc1qxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

The longer ones are multi-sig.
Pages:
Jump to: