Bitcoin Forum
December 11, 2024, 04:40:58 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 [188] 189 190 191 »
  Print  
Author Topic: Vanitygen: Vanity bitcoin address generator/miner [v0.22]  (Read 1153659 times)
willi9974
Legendary
*
Offline Offline

Activity: 3640
Merit: 2905


Enjoy 500% bonus + 70 FS


View Profile
March 05, 2021, 09:07:32 AM
 #3741

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...


█████████████████████████▄▄▄
████████████████████████▐███▌
█████████████████████████▀▀▀
██▄▄██▄████████████████████████▄███▄
▐██████▐█▌████▌███▌▐███▐███▀▀████▌
▀▀███▌██▌▐████▌▐███
█████▌███▌██████▌
██▐██████████████████▐███▐██████▐███
█████▌████████▐██████████▌███▌██████▌
███▀▀████▀▀████▀▀▀█████▀▀███▀▀█████▀▀


▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
|
▄▄█████████████████▄▄
███████████████████████
██████████▀▀▀▀▀██████████
███████▀░▄█████▄░▀███████
██████░▄█▀░░▄░░▀█▄░██████
█████░██░░▄███▄░░██░█████
█████░██░███████░██░█████
█████░██░░▀▀█▀▀░░██░█████
██████░▀█▄░▀▀▀░▄█▀░██████
███████▄░▀█████▀░▄███████
██████████▄▄▄▄▄██████████
███████████████████████
▀▀█████████████████▀▀
 
LICENSED CRYPTO
CASINO & SPORTS
|
▄▄█████████████████▄▄
███████████████████████
█████████████████████████
███████████████▀▀████████
███████████▀▀█████▐█████
███████▀▀████▄▄▀█████████
█████▄▄██▄▄██▀████▐██████
███████████▀█████████████
██████████▄▄███▐███████
███████████████▄████████
█████████████████████████
███████████████████████
▀▀█████████████████▀▀
 
TELEGRAM
APP
|
..WELCOME BONUS..
500% + 70 FS
 
.
..PLAY NOW..
jennamarble
Newbie
*
Offline Offline

Activity: 20
Merit: 0


View Profile
March 08, 2021, 11:49:56 AM
 #3742

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 ?
GranRethory
Member
**
Offline Offline

Activity: 85
Merit: 13


View Profile
May 13, 2021, 03:15:29 AM
Last edit: May 13, 2021, 03:45:01 AM by GranRethory
 #3743

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



1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8
Timelord2067
Legendary
*
Offline Offline

Activity: 3878
Merit: 2253


💲🏎️💨🚓


View Profile
May 13, 2021, 03:23:00 AM
 #3744


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-----
<insert message here>
-----BEGIN SIGNATURE-----
<insert address here>
<insert signature here>
-----END BITCOIN SIGNED MESSAGE-----

Can I just ask why you chose that particular pattern?

GranRethory
Member
**
Offline Offline

Activity: 85
Merit: 13


View Profile
May 13, 2021, 03:41:40 AM
 #3745


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-----
<insert message here>
-----BEGIN SIGNATURE-----
<insert address here>
<insert signature here>
-----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

1BurnBitUSE4ja4VD5Y34hajpxiHXAVJC8
Timelord2067
Legendary
*
Offline Offline

Activity: 3878
Merit: 2253


💲🏎️💨🚓


View Profile
May 13, 2021, 05:07:58 AM
 #3746

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.

bigvito19
Full Member
***
Offline Offline

Activity: 716
Merit: 112


View Profile
May 29, 2021, 07:57:58 PM
 #3747

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
NotATether
Legendary
*
Offline Offline

Activity: 1806
Merit: 7475


Top Crypto Casino


View Profile WWW
May 30, 2021, 07:09:48 AM
 #3748

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.

███████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████

███████████████████████
.
BC.GAME
▄▄▀▀▀▀▀▀▀▄▄
▄▀▀░▄██▀░▀██▄░▀▀▄
▄▀░▐▀▄░▀░░▀░░▀░▄▀▌░▀▄
▄▀▄█▐░▀▄▀▀▀▀▀▄▀░▌█▄▀▄
▄▀░▀░░█░▄███████▄░█░░▀░▀▄
█░█░▀░█████████████░▀░█░█
█░██░▀█▀▀█▄▄█▀▀█▀░██░█
█░█▀██░█▀▀██▀▀█░██▀█░█
▀▄▀██░░░▀▀▄▌▐▄▀▀░░░██▀▄▀
▀▄▀██░░▄░▀▄█▄▀░▄░░██▀▄▀
▀▄░▀█░▄▄▄░▀░▄▄▄░█▀░▄▀
▀▄▄▀▀███▄███▀▀▄▄▀
██████▄▄▄▄▄▄▄██████
.
..CASINO....SPORTS....RACING..


▄▄████▄▄
▄███▀▀███▄
██████████
▀███▄░▄██▀
▄▄████▄▄░▀█▀▄██▀▄▄████▄▄
▄███▀▀▀████▄▄██▀▄███▀▀███▄
███████▄▄▀▀████▄▄▀▀███████
▀███▄▄███▀░░░▀▀████▄▄▄███▀
▀▀████▀▀████████▀▀████▀▀
Trancefan
Newbie
*
Offline Offline

Activity: 19
Merit: 2


View Profile
July 05, 2021, 11:09:05 PM
 #3749

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?
Kangaderoo
Member
**
Offline Offline

Activity: 89
Merit: 11


View Profile
July 06, 2021, 07:05:29 AM
 #3750

When i try to build to build the program in Win32, I get this error:
<SNIP>
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

Slow but steady Android coin mining with NeoNeonMiner
BTC:1NeoArmnGyWHKfbje9JNWqw3tquMY7jHCw
Tanagi
Newbie
*
Offline Offline

Activity: 27
Merit: 16


View Profile
September 21, 2021, 04:18:03 AM
 #3751

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.
nc50lc
Legendary
*
Offline Offline

Activity: 2618
Merit: 6508


Self-proclaimed Genius


View Profile
September 21, 2021, 04:37:56 AM
Merited by pooya87 (2)
 #3752

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.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
pooya87
Legendary
*
Offline Offline

Activity: 3654
Merit: 11099


Crypto Swap Exchange


View Profile
September 21, 2021, 05:35:08 AM
Merited by BlackHatCoiner (2)
 #3753

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).

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Kangaderoo
Member
**
Offline Offline

Activity: 89
Merit: 11


View Profile
September 21, 2021, 06:02:45 AM
Last edit: September 21, 2021, 06:14:31 AM by Kangaderoo
 #3754

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:<slashslash>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.

Slow but steady Android coin mining with NeoNeonMiner
BTC:1NeoArmnGyWHKfbje9JNWqw3tquMY7jHCw
Tanagi
Newbie
*
Offline Offline

Activity: 27
Merit: 16


View Profile
September 21, 2021, 06:57:38 AM
 #3755

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?
pooya87
Legendary
*
Offline Offline

Activity: 3654
Merit: 11099


Crypto Swap Exchange


View Profile
September 21, 2021, 07:38:56 AM
Merited by NotATether (3), nc50lc (1)
 #3756

How does it do it?
With simple math. If upper case letters (P, Q and R) are points on the curve (aka public keys) and lower case letters (p, q and r) are integers in [1,N] range and G is the generator point we have:
Code:
P = Q + R
p*G = q*G + r*G
p*G = (q+r)*G
p = q+r
User has q (the initial number they generated) and receives r (the number pool gives them) from the third party and computes q+r or his private key for that final address.

P.S. p needs to be reduced to be valid. p = (q+r) % N

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Tanagi
Newbie
*
Offline Offline

Activity: 27
Merit: 16


View Profile
September 21, 2021, 08:20:02 AM
Last edit: September 21, 2021, 09:30:28 AM by Tanagi
 #3757

Quote
You can find the basics of the agorithm here:
http:<slashslash>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.



Thanks so much.

I have used this site and it's really helpful, but unfortunately doesn't answer my questions around exactly how Vanitygen calculates the address and the PrivkeyPart. The actual nuts and bolts of it.
Tanagi
Newbie
*
Offline Offline

Activity: 27
Merit: 16


View Profile
September 21, 2021, 09:39:02 AM
 #3758

How does it do it?
With simple math. If upper case letters (P, Q and R) are points on the curve (aka public keys) and lower case letters (p, q and r) are integers in [1,N] range and G is the generator point we have:
Code:
P = Q + R
p*G = q*G + r*G
p*G = (q+r)*G
p = q+r
User has q (the initial number they generated) and receives r (the number pool gives them) from the third party and computes q+r or his private key for that final address.

P.S. p needs to be reduced to be valid. p = (q+r) % N

Thanks.

I still don't think it's any clearer in my head.

Could you break it down for me as a process that happens inside Vanitygen rather than using math?
Kangaderoo
Member
**
Offline Offline

Activity: 89
Merit: 11


View Profile
September 21, 2021, 02:25:55 PM
 #3759

Quote
You can find the basics of the agorithm here:
http:<slashslash>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.



Thanks so much.

I have used this site and it's really helpful, but unfortunately doesn't answer my questions around exactly how Vanitygen calculates the address and the PrivkeyPart. The actual nuts and bolts of it.

With regards to combining keys there is nothing more to it then can be found on the website.
The Vanitygen c-code itself just makes use of library functions to work with the generated keys.
The calls are all based on EC (Eliptic Curve) mathematics, where bitcoin just uses the specs according to SECP256k1.
https:<slashslash>en.wikipedia.org/wiki/Elliptic_curve.

Transforming a public key to a bitcoin address can be found here:
https:<slashslash>en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses.

But I guess I probably do not understand your questions.
Are you looking for more information on how Vanitygen 'searches' for the BitcoinPrefix?









Slow but steady Android coin mining with NeoNeonMiner
BTC:1NeoArmnGyWHKfbje9JNWqw3tquMY7jHCw
BlackHatCoiner
Legendary
*
Offline Offline

Activity: 1736
Merit: 8448


Fiatheist


View Profile WWW
September 21, 2021, 02:50:40 PM
 #3760

Could you break it down for me as a process that happens inside Vanitygen rather than using math?

Forget the maths mentioned above. Consider given that there's a way we can multiply a point with a number (which is the private key) and end up with another point. The new point's coordinates along with a prefix in the front consist the public key. That very public key is then hashed a bunch of times and with some extra steps we result in the Bitcoin address.

So the list of procedures, vanity implements is the following:

  • Generates a random number and multiply it with a known point (called G) to get your public key.
  • Takes that public key and hashes it to get an address. (Technical explanation)
  • Repeats the above steps until the program finds an address that starts with the defined characters you want.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Pages: « 1 ... 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 [188] 189 190 191 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!