Bitcoin Forum
December 12, 2024, 10:01:20 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [44] 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 ... 191 »
  Print  
Author Topic: Vanitygen: Vanity bitcoin address generator/miner [v0.22]  (Read 1153661 times)
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
December 03, 2012, 04:15:53 PM
 #861

I have a bug


Device: Intel(R) HD Graphics 4000
Vendor: Intel(R) Corporation (8086)
Driver: 9.17.10.2875
Profile: FULL_PROFILE
Version: OpenCL 1.1
Max compute units: 16
Max workgroup size: 512
Global memory: 1568669696
Max allocation: 392167424
OpenCL compiler flags: -DDEEP_PREPROC_UNROLL
Compiling kernel, can take minutes...vg_ocl_context_callback error: Build progra
m failure.
failure.
clBuildProgram: CL_BUILD_PROGRAM_FAILURE
Build log:
:173:19: error: __constant variables are required to be initialized
__constant bignum bn_zero;
                  ^
1 diagnostic generated.

error: front end compiler failed build.
Available OpenCL platforms:
0: [Intel(R) Corporation] Intel(R) OpenCL
  0: [Intel(R) Corporation] Intel(R) HD Graphics 4000

fizzisist
Hero Member
*****
Offline Offline

Activity: 720
Merit: 528



View Profile WWW
December 03, 2012, 05:38:37 PM
 #862

Something might be wrong in vanitygen, the following (namecoin) combinations don't work:
Na, Nb, Nc, Nd, Ne, Nf, Ng, Nh, Ni, Nj, Nk, Nm, Nn, No, Np, Nq, Nr, Ns, Nt, Nu, Nv, Nw, Nx, Ny, Nz, NL, NM, NN, NP, NQ, NR, NS, NT, NU, NV, NW, NX, NY, NZ

but the rest do - this is probably a bug in vanitygen, i'll report it


Is there any update on this bug? Vanitygen won't generate addresses that start with the combinations listed above.

I don't know that it's a bug, more likely that there are no possible values of raw binary Namecoin addresses that will convert into a Base58 address that starts with these characters. The underlying data of a Namecoin address must start with a network ID of 00110100 (binary) + hash. This means that the range of inputs to the Base58 converter can only go from 0011010000000000... to 0011010011111111...

You can search or explore the namecoin block explorer and likely see that there are no examples of these "nonworking" addresses, a less lazy person than me could actually do the math and describe the possible Base58 address ranges.

Apparently these are valid namecoin addresses, but with a leading byte of 53 (see here). Furthermore, there are a bunch of second characters that require the leading byte to be 54. The wiki page shows that namecoin addresses that start with N can have a leading byte of 52, 53, or 54. Does anyone know the math to figure out which one to use? Is it actually valid to have a namecoin address with a leading byte other than 52?

EDIT: No, it's not valid:
Code:
$ namecoind validateaddress NPhauxDmxGJfKSAJmAnZBLH9mhrKY5BALv
{
    "isvalid" : false
}
Does that apply to any address with a leading byte not equal to 52?

deepceleron
Legendary
*
Offline Offline

Activity: 1512
Merit: 1036



View Profile WWW
December 03, 2012, 06:20:53 PM
Last edit: December 05, 2012, 03:24:25 AM by deepceleron
 #863

[The wiki page shows that namecoin addresses that start with N can have a leading byte of 52, 53, or 54. Does anyone know the math to figure out which one to use? Is it actually valid to have a namecoin address with a leading byte other than 52?

You are reading the table wrong. The network ID byte value of Namecoin is 52, and only 52. Another ID would indicate another alt-coin. The "NPhaux" address example would only be a valid address on some yet-uncreated bitcoin-like currency.

Does that apply to any address with a leading byte not equal to 52?
The main Bitcoin network ID byte is 00h, which is special, because leading 00 bytes in addresses are directly encoded as a "1" and not put through Base58 encoding. This is why all Bitcoin addresses start with "1", but other alternate coins may have more than one possible first character and have stranger "impossible" ranges of Base58 leading characters.

Full 34-character Bitcoin addresses can start with 12.. to 1QLB... due to a similar "possible outputs" situation. A hash starting with several 0000 bits can create a smaller valued 33-character Bitcoin address, which may start with "1"+"any Base58" characters (but is 59x harder to find). If the first complete byte of the hash component is also 00000000b, then the special direct-encoding technique makes the address start with 11.
deepceleron
Legendary
*
Offline Offline

Activity: 1512
Merit: 1036



View Profile WWW
December 03, 2012, 06:45:45 PM
 #864

Device: Intel(R) HD Graphics 4000
..
clBuildProgram: CL_BUILD_PROGRAM_FAILURE
Build log:
:173:19: error: __constant variables are required to be initialized
__constant bignum bn_zero;
                  ^
1 diagnostic generated.

error: front end compiler failed build.
Available OpenCL platforms:
0: [Intel(R) Corporation] Intel(R) OpenCL
  0: [Intel(R) Corporation] Intel(R) HD Graphics 4000

Intel compiler, for a GPU slower than a CPU will be. It doesn't seem to recognize that bignum is being initialized to the value of bn_zero. I would try installing a newer Intel OpenCL SDK and see if it understands code that works fine on AMD. Otherwise vanitygen would need to be altered (de-optimized) to support a GPU platform no Bitcoin miner would be using.
mskwik
Full Member
***
Offline Offline

Activity: 125
Merit: 100


View Profile
December 03, 2012, 07:04:39 PM
 #865

Apparently these are valid namecoin addresses, but with a leading byte of 53 (see here). Furthermore, there are a bunch of second characters that require the leading byte to be 54. The wiki page shows that namecoin addresses that start with N can have a leading byte of 52, 53, or 54. Does anyone know the math to figure out which one to use? Is it actually valid to have a namecoin address with a leading byte other than 52?

My vanitypool code uses something like this to check the required network byte for a given prefix and will return an error to the submitter if the network byte specified doesn't match.  Not sure it's the most elegant way to do it and there may be some strange edge cases for very short prefixes but in general it does what it is supposed to.

Code:
sub prefix_version{my $x=shift(@_);
  @bb=(1..9,'A'..'H','J'..'N','P'..'Z','a'..'k','m'..'z');
  while(length($x)<34){$x.="2";}
  my $ox=$x;my $n=Math::BigInt->new(0);
  my $i=Math::BigInt->new(0);while($x){my $c=chop($x);
    my $cp=0;while($bb[$cp] ne $c && $cp<=$#bb){$cp++;}
    $n+=$cp*(58**$i);$i++;
  }$i=$n->as_hex();$i=substr($i,2);
  $x=reverse($ox);my $c=chop($x);while($c eq '1'){$c=chop($x);$i="00".$i;}
  if(length($i)%2==1){$i="0".$i;}
  my $ver=substr($i,0,2);return hex($ver);
}

Code:
mskwik@mskwik ~/script/bitcoin $ perl
print prefix_version('NPhaux')."\n";
53

Morblias
Hero Member
*****
Offline Offline

Activity: 576
Merit: 500


View Profile
December 04, 2012, 06:49:03 PM
 #866

I got vanitygen64.exe working perfect, but I am confused as to how to use oclvanitygen. I type in oclvanitygen -d 0 address and it just shows this over and over:
CPU hash:
GPU hash:
Found delta: start delta:

It never outputs address or privkey. Am I doing something wrong?

Tips / Donations accepted: 1Morb18DsDHNEv6TeQXBdba872ZSpiK9fY
stevegee58
Legendary
*
Offline Offline

Activity: 916
Merit: 1003



View Profile
December 04, 2012, 06:50:36 PM
 #867

example usage:

oclvanitygen -d 0 1JohnGalt

The number after the -d switch is the GPU device #

You are in a maze of twisty little passages, all alike.
Morblias
Hero Member
*****
Offline Offline

Activity: 576
Merit: 500


View Profile
December 04, 2012, 06:59:48 PM
 #868

example usage:

oclvanitygen -d 0 1JohnGalt

The number after the -d switch is the GPU device #

oops, yeah that's what I mean, updated my original post. all it outputs is CPU hash, GPU hash, and delta. Shouldn't it output address and privkey just like vanitygen64.exe does?

Tips / Donations accepted: 1Morb18DsDHNEv6TeQXBdba872ZSpiK9fY
crazyates
Legendary
*
Offline Offline

Activity: 952
Merit: 1000



View Profile
December 04, 2012, 07:07:01 PM
 #869

example usage:

oclvanitygen -d 0 1JohnGalt

The number after the -d switch is the GPU device #
oops, yeah that's what I mean, updated my original post. all it outputs is CPU hash, GPU hash, and delta. Shouldn't it output address and privkey just like vanitygen64.exe does?
Let me guess, you're using an ATI 7xxx card? Oclvanitygen seems to be broken with 7xxx cards, and it produces incorrect results. Workaround is to use the -S command, but your speeds will be much slower (1/4 to 1/3 of the speed).

Tips? 1crazy8pMqgwJ7tX7ZPZmyPwFbc6xZKM9
Previous Trade History - Sale Thread
runlinux
Hero Member
*****
Offline Offline

Activity: 566
Merit: 500



View Profile WWW
December 04, 2012, 07:10:00 PM
 #870

Even then, I have not been able to get it to work. I get the same issue with my 5830. I'm not too worried now that I know its a "known" issue.

its fun to dump hundreds of thousands of addresses to a text file and search for cool things.

Morblias
Hero Member
*****
Offline Offline

Activity: 576
Merit: 500


View Profile
December 04, 2012, 07:10:39 PM
 #871

example usage:

oclvanitygen -d 0 1JohnGalt

The number after the -d switch is the GPU device #
oops, yeah that's what I mean, updated my original post. all it outputs is CPU hash, GPU hash, and delta. Shouldn't it output address and privkey just like vanitygen64.exe does?
Let me guess, you're using an ATI 7xxx card? Oclvanitygen seems to be broken with 7xxx cards, and it produces incorrect results. Workaround is to use the -S command, but your speeds will be much slower (1/4 to 1/3 of the speed).

Yeah, 7950 Sad

Tips / Donations accepted: 1Morb18DsDHNEv6TeQXBdba872ZSpiK9fY
crazyates
Legendary
*
Offline Offline

Activity: 952
Merit: 1000



View Profile
December 04, 2012, 07:12:52 PM
 #872

Even then, I have not been able to get it to work. I get the same issue with my 5830. I'm not too worried now that I know its a "known" issue.

its fun to dump hundreds of thousands of addresses to a text file and search for cool things.
IIRC, older cards can have this issue fixed by using an older driver/SDK. 7xxx cards require newer drivers/SDK, so we don't have this option.

Tips? 1crazy8pMqgwJ7tX7ZPZmyPwFbc6xZKM9
Previous Trade History - Sale Thread
runlinux
Hero Member
*****
Offline Offline

Activity: 566
Merit: 500



View Profile WWW
December 04, 2012, 07:34:55 PM
 #873

Even then, I have not been able to get it to work. I get the same issue with my 5830. I'm not too worried now that I know its a "known" issue.

its fun to dump hundreds of thousands of addresses to a text file and search for cool things.
IIRC, older cards can have this issue fixed by using an older driver/SDK. 7xxx cards require newer drivers/SDK, so we don't have this option.

Yup, running 12.6 here. Explains a bit. It's my work rig, so I'm not worried about downgrading right now.

Morblias
Hero Member
*****
Offline Offline

Activity: 576
Merit: 500


View Profile
December 04, 2012, 09:36:49 PM
 #874

example usage:

oclvanitygen -d 0 1JohnGalt

The number after the -d switch is the GPU device #
oops, yeah that's what I mean, updated my original post. all it outputs is CPU hash, GPU hash, and delta. Shouldn't it output address and privkey just like vanitygen64.exe does?
Let me guess, you're using an ATI 7xxx card? Oclvanitygen seems to be broken with 7xxx cards, and it produces incorrect results. Workaround is to use the -S command, but your speeds will be much slower (1/4 to 1/3 of the speed).

Yeah, 7950 Sad

Finally got around to giving it a try, you are correct the -S command fixed the issue while using my 7950 and just like you said, it was about 1/3 slower. Better then nothing I guess. Thanks!

Tips / Donations accepted: 1Morb18DsDHNEv6TeQXBdba872ZSpiK9fY
warmach
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
December 04, 2012, 11:03:54 PM
 #875

Total noob question...sorry...

Is there a reason why a pattern can not use a lower case "L"?

I want to generate pattern 1Akula but get a message about it being an invalid character. 
BkkCoins
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1009


firstbits:1MinerQ


View Profile WWW
December 05, 2012, 12:21:24 AM
 #876

Total noob question...sorry...

Is there a reason why a pattern can not use a lower case "L"?

I want to generate pattern 1Akula but get a message about it being an invalid character. 
Some characters are not valid because they are easily mistaken for others. So "l" cannot be used as it conflicts with "1". See the wiki "address" page for a list of invalid chars.

jl2035
Full Member
***
Offline Offline

Activity: 146
Merit: 100



View Profile
December 05, 2012, 02:08:27 PM
Last edit: December 06, 2012, 11:00:13 PM by jl2035
 #877

Total noob question...sorry...

Is there a reason why a pattern can not use a lower case "L"?

I want to generate pattern 1Akula but get a message about it being an invalid character.  
Even newbier! Can't even install this thing...

JOIN Bitbiz bitbiz.io
warmach
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
December 05, 2012, 02:35:55 PM
 #878

OK...another noob question.

All the crypto math and logic is a bit confusing to me and I need to spend more time to understand it.  As I understand it from a layman's perspective, the generator gets a random number as a starting point and then increments that number and hashes it looking for the chosen pattern.  If I would start the generator, stop it, then restart again for the same pattern, will it use the same number to start with?  I want to run the vanity gen at night and want to make sure that I am not duplicating work that was already done when I restart it each night.

Thanks.
jl2035
Full Member
***
Offline Offline

Activity: 146
Merit: 100



View Profile
December 07, 2012, 04:00:01 PM
 #879

I really want to install this thing... can anyone help me??

I created issue on github but no comments or anything... Smiley

when I type make I get this.

user@JLaptop:~/MyPrograms/VanityAddr/vanitygen-master$ make
cc -ggdb -O3 -Wall -c -o vanitygen.o vanitygen.c
vanitygen.c:26:25: fatal error: openssl/sha.h: No such file or directory
compilation terminated.
make: *** [vanitygen.o] Error 1

JOIN Bitbiz bitbiz.io
BkkCoins
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1009


firstbits:1MinerQ


View Profile WWW
December 07, 2012, 04:13:27 PM
 #880

OK...another noob question.

All the crypto math and logic is a bit confusing to me and I need to spend more time to understand it.  As I understand it from a layman's perspective, the generator gets a random number as a starting point and then increments that number and hashes it looking for the chosen pattern.  If I would start the generator, stop it, then restart again for the same pattern, will it use the same number to start with?  I want to run the vanity gen at night and want to make sure that I am not duplicating work that was already done when I restart it each night.

Thanks.
It doesn't remember position but doesn't need to. Any time you start you will be looking at fresh number space because the chances of repeating work are so very, very tiny. The chances of repeating work are the same as the chances of finding an existing key - which is the whole point.

So any time you restart you are never wasting search attempts. It all counts.

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [44] 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 ... 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!